You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							138 lines
						
					
					
						
							4.1 KiB
						
					
					
				
			
		
		
	
	
							138 lines
						
					
					
						
							4.1 KiB
						
					
					
				| cmake_minimum_required(VERSION 3.5)
 | |
| project(nan)
 | |
| 
 | |
| set(CMAKE_CXX_STANDARD 11)
 | |
| 
 | |
| set(CPPLINT "${CMAKE_CURRENT_SOURCE_DIR}/cpplint.py")
 | |
| set(MODULES symbols strings)
 | |
| set(SOURCES "")
 | |
| set(ADDONS "")
 | |
| 
 | |
| foreach(MODULE ${MODULES})
 | |
|     list(APPEND SOURCES "test/cpp/${MODULE}.cpp")
 | |
|     list(APPEND ADDONS "test/build/${CMAKE_BUILD_TYPE}/${MODULE}.node")
 | |
| endforeach()
 | |
| 
 | |
| set(LINT_SOURCES examples/async_pi_estimate/addon.cc
 | |
| 	examples/async_pi_estimate/async.cc 
 | |
| 	examples/async_pi_estimate/async.h 
 | |
| 	examples/async_pi_estimate/pi_est.cc 
 | |
| 	examples/async_pi_estimate/pi_est.h 
 | |
| 	examples/async_pi_estimate/sync.cc 
 | |
| 	examples/async_pi_estimate/sync.h 
 | |
| 	nan.h 
 | |
| 	nan_callbacks.h 
 | |
| 	nan_callbacks_12_inl.h 
 | |
| 	nan_callbacks_pre_12_inl.h 
 | |
| 	nan_converters.h 
 | |
| 	nan_converters_43_inl.h 
 | |
| 	nan_converters_pre_43_inl.h 
 | |
| 	nan_define_own_property_helper.h 
 | |
| 	nan_implementation_12_inl.h 
 | |
| 	nan_implementation_pre_12_inl.h 
 | |
| 	nan_json.h 
 | |
| 	nan_maybe_43_inl.h 
 | |
| 	nan_maybe_pre_43_inl.h 
 | |
| 	nan_new.h 
 | |
| 	nan_object_wrap.h 
 | |
| 	nan_persistent_12_inl.h 
 | |
| 	nan_persistent_pre_12_inl.h 
 | |
| 	nan_private.h 
 | |
| 	nan_scriptorigin.h 
 | |
| 	nan_string_bytes.h 
 | |
| 	nan_weak.h 
 | |
| 	test/cpp/accessors.cpp 
 | |
| 	test/cpp/accessors2.cpp 
 | |
| 	test/cpp/asyncresource.cpp 
 | |
| 	test/cpp/asyncworker.cpp 
 | |
| 	test/cpp/asyncprogressworker.cpp 
 | |
| 	test/cpp/asyncprogressworkerstream.cpp 
 | |
| 	test/cpp/asyncprogressworkersignal.cpp 
 | |
| 	test/cpp/asyncprogressqueueworker.cpp 
 | |
| 	test/cpp/asyncprogressqueueworkerstream.cpp 
 | |
| 	test/cpp/asyncworkererror.cpp 
 | |
| 	test/cpp/buffer.cpp 
 | |
| 	test/cpp/bufferworkerpersistent.cpp 
 | |
| 	test/cpp/error.cpp 
 | |
| 	test/cpp/gc.cpp 
 | |
| 	test/cpp/indexedinterceptors.cpp 
 | |
| 	test/cpp/callbackcontext.cpp 
 | |
| 	test/cpp/converters.cpp 
 | |
| 	test/cpp/isolatedata.cpp 
 | |
| 	test/cpp/json-parse.cpp 
 | |
| 	test/cpp/json-stringify.cpp 
 | |
| 	test/cpp/makecallback.cpp 
 | |
| 	test/cpp/maybe.cpp 
 | |
| 	test/cpp/morenews.cpp 
 | |
| 	test/cpp/multifile1.cpp 
 | |
| 	test/cpp/multifile2.cpp 
 | |
| 	test/cpp/multifile2.h 
 | |
| 	test/cpp/namedinterceptors.cpp 
 | |
| 	test/cpp/nancallback.cpp 
 | |
| 	test/cpp/nannew.cpp 
 | |
| 	test/cpp/news.cpp 
 | |
| 	test/cpp/objectwraphandle.cpp 
 | |
| 	test/cpp/persistent.cpp 
 | |
| 	test/cpp/private.cpp 
 | |
| 	test/cpp/returnemptystring.cpp 
 | |
| 	test/cpp/returnnull.cpp 
 | |
| 	test/cpp/returnundefined.cpp 
 | |
| 	test/cpp/returnvalue.cpp 
 | |
| 	test/cpp/setcallhandler.cpp 
 | |
| 	test/cpp/settemplate.cpp 
 | |
| 	test/cpp/sleep.h 
 | |
| 	test/cpp/strings.cpp 
 | |
| 	test/cpp/symbols.cpp 
 | |
| 	test/cpp/threadlocal.cpp 
 | |
| 	test/cpp/trycatch.cpp 
 | |
| 	test/cpp/typedarrays.cpp 
 | |
| 	test/cpp/weak.cpp 
 | |
| 	test/cpp/weak2.cpp
 | |
|     test/cpp/wrappedobjectfactory.cpp
 | |
|     node_modules/node-gyp/gyp/data/win/large-pdb-shim.cc)
 | |
|         
 | |
| set(FILTER "-build/include_subdir,-whitespace/parens")
 | |
| 
 | |
| find_package(Python COMPONENTS Interpreter Development REQUIRED)
 | |
| 
 | |
| execute_process(
 | |
|         COMMAND npm install
 | |
|         OUTPUT_FILE node_modules
 | |
|         WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
 | |
| )
 | |
| 
 | |
| add_custom_target(lint
 | |
|     COMMAND ${Python_EXECUTABLE} ${CPPLINT} --filter=${FILTER} ${LINT_SOURCES}
 | |
|     WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
 | |
| )
 | |
| 
 | |
| add_custom_target(test
 | |
|     DEPENDS ${ADDONS}
 | |
|     COMMAND npm test
 | |
| )
 | |
| 
 | |
| add_custom_target(forcetest
 | |
|     WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/test
 | |
|     COMMAND ../node_modules/.bin/node-gyp rebuild
 | |
|     COMMAND npm test
 | |
| )
 | |
| 
 | |
| add_custom_target(docs
 | |
|     DEPENDS README.md doc/.build.sh doc/asyncworker.md doc/buffers.md doc/callback.md
 | |
|             doc/converters.md doc/errors.md doc/maybe_types.md doc/methods.md doc/new.md
 | |
|             doc/node_misc.md doc/persistent.md doc/scopes.md doc/script.md doc/string_bytes.md
 | |
|             doc/v8_internals.md doc/json.md doc/v8_misc.md
 | |
|     WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
 | |
|     COMMAND doc/.build.sh
 | |
| )
 | |
| 
 | |
| add_custom_command(OUTPUT ${ADDONS}
 | |
|     DEPENDS ${SOURCES} nan.h nan_new.h nan_implementation_pre_12_inl.h nan_implementation_12_inl.h
 | |
|             nan_callbacks.h nan_callbacks_12_inl.h nan_callbacks_pre_12_inl.h nan_converters.h
 | |
|             nan_converters_43_inl.h nan_converters_pre_43_inl.h nan_define_own_property_helper.h
 | |
|             nan_json.h nan_maybe_43_inl.h nan_maybe_pre_43_inl.h nan_persistent_12_inl.h
 | |
|             nan_persistent_pre_12_inl.h nan_private.h nan_weak.h nan_scriptorigin.h nan_string_bytes.h
 | |
|             test/binding.gyp
 | |
|     WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/test
 | |
|     COMMAND ../node_modules/.bin/node-gyp rebuild
 | |
| ) |