@@ -94,7 +94,7 @@ set(libnest2d_SRCS
9494)
9595
9696if (WITH_JS_BINDINGS OR EMSCRIPTEN)
97- list ( APPEND libnest2d_SRCS src/ libnest2d_js.cpp )
97+ add_subdirectory ( libnest2d_js)
9898endif ()
9999
100100
@@ -107,39 +107,22 @@ if(HEADER_ONLY)
107107 $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR} >
108108 )
109109else ()
110- if (WITH_JS_BINDINGS OR EMSCRIPTEN)
111- add_library (nest2d_js SHARED ${libnest2d_SRCS} ${libnest2d_HDRS} )
112- target_link_libraries (nest2d_js PUBLIC project_options)
113- target_include_directories (nest2d_js
114- PUBLIC
115- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /include />
116- $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR} >
117- PRIVATE
118- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /src>
119- )
120- set_target_properties (nest2d_js PROPERTIES OUTPUT_NAME "libnest2d_js" )
121- # Emscripten-specific properties for npm packaging
122- if (EMSCRIPTEN)
123- set_target_properties (nest2d_js PROPERTIES SUFFIX ".js" )
110+ if (BUILD_SHARED_LIBS )
111+ add_library (nest2d SHARED ${libnest2d_SRCS} ${libnest2d_HDRS} )
112+ if (WIN32 )
113+ set_target_properties (nest2d PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON )
124114 endif ()
125115 else ()
126- if (BUILD_SHARED_LIBS )
127- add_library (nest2d SHARED ${libnest2d_SRCS} ${libnest2d_HDRS} )
128- if (WIN32 )
129- set_target_properties (nest2d PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON )
130- endif ()
131- else ()
132- add_library (nest2d STATIC ${libnest2d_SRCS} ${libnest2d_HDRS} )
133- endif ()
134- target_link_libraries (nest2d PUBLIC project_options)
135- target_include_directories (nest2d
136- PUBLIC
137- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /include />
138- $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR} >
139- PRIVATE
140- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /src>
141- )
116+ add_library (nest2d STATIC ${libnest2d_SRCS} ${libnest2d_HDRS} )
142117 endif ()
118+ target_link_libraries (nest2d PUBLIC project_options)
119+ target_include_directories (nest2d
120+ PUBLIC
121+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /include />
122+ $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR} >
123+ PRIVATE
124+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /src>
125+ )
143126endif ()
144127
145128if (ENABLE_TESTING)
0 commit comments