Commit f1af605d authored by Dick Hollenbeck's avatar Dick Hollenbeck

when linking a DSO, require all symbols to be resolved

parent 840e38de
...@@ -133,7 +133,12 @@ if(CMAKE_COMPILER_IS_GNUCXX) ...@@ -133,7 +133,12 @@ if(CMAKE_COMPILER_IS_GNUCXX)
# Set default flags for Debug build. # Set default flags for Debug build.
set(CMAKE_C_FLAGS_DEBUG "-Wall ${KICAD_GCC_DEBUG_BUILD_FLAGS} -g3 -ggdb3 -DDEBUG") set(CMAKE_C_FLAGS_DEBUG "-Wall ${KICAD_GCC_DEBUG_BUILD_FLAGS} -g3 -ggdb3 -DDEBUG")
set(CMAKE_CXX_FLAGS_DEBUG "-Wall ${KICAD_GCC_DEBUG_BUILD_FLAGS} -g3 -ggdb3 -DDEBUG") set(CMAKE_CXX_FLAGS_DEBUG "-Wall ${KICAD_GCC_DEBUG_BUILD_FLAGS} -g3 -ggdb3 -DDEBUG")
else(WIN32) else(WIN32)
# Thou shalt not link vaporware and tell us it's a valid DSO:
set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined")
set(CMAKE_MODULE_LINKER_FLAGS "-Wl,--no-undefined") # needed by SWIG macros on linux
# Set default flags for Release build. # Set default flags for Release build.
set(CMAKE_C_FLAGS_RELEASE "-Wall ${KICAD_GCC_RELEASE_BUILD_FLAGS} -DNDEBUG -fPIC") set(CMAKE_C_FLAGS_RELEASE "-Wall ${KICAD_GCC_RELEASE_BUILD_FLAGS} -DNDEBUG -fPIC")
set(CMAKE_CXX_FLAGS_RELEASE "-Wall ${KICAD_GCC_RELEASE_BUILD_FLAGS} -DNDEBUG -fPIC") set(CMAKE_CXX_FLAGS_RELEASE "-Wall ${KICAD_GCC_RELEASE_BUILD_FLAGS} -DNDEBUG -fPIC")
......
...@@ -287,27 +287,25 @@ if (KICAD_SCRIPTING) ...@@ -287,27 +287,25 @@ if (KICAD_SCRIPTING)
SET(SWIG_OPTS -python -c++ -outdir ${CMAKE_CURRENT_BINARY_DIR} ${SWIG_FLAGS} ) SET(SWIG_OPTS -python -c++ -outdir ${CMAKE_CURRENT_BINARY_DIR} ${SWIG_FLAGS} )
add_custom_command( add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_wrap.cxx OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_wrap.cxx
DEPENDS scripting/pcbnew.i DEPENDS scripting/pcbnew.i
DEPENDS scripting/board.i DEPENDS scripting/board.i
DEPENDS scripting/board_item.i DEPENDS scripting/board_item.i
DEPENDS scripting/module.i DEPENDS scripting/module.i
DEPENDS scripting/plugins.i DEPENDS scripting/plugins.i
DEPENDS scripting/units.i DEPENDS scripting/units.i
DEPENDS ../scripting/dlist.i DEPENDS ../scripting/dlist.i
DEPENDS ../scripting/kicad.i DEPENDS ../scripting/kicad.i
DEPENDS ../scripting/wx.i DEPENDS ../scripting/wx.i
DEPENDS ../scripting/kicadplugins.i DEPENDS ../scripting/kicadplugins.i
COMMAND ${SWIG_EXECUTABLE} ${SWIG_OPTS} -o ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_wrap.cxx scripting/pcbnew.i COMMAND ${SWIG_EXECUTABLE} ${SWIG_OPTS} -o ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_wrap.cxx scripting/pcbnew.i
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/../scripting/fixswigimports.py ${CMAKE_CURRENT_BINARY_DIR}/pcbnew.py COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/../scripting/fixswigimports.py ${CMAKE_CURRENT_BINARY_DIR}/pcbnew.py
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
) )
endif(KICAD_SCRIPTING) endif(KICAD_SCRIPTING)
### ###
# _pcbnew DLL/DSO file creation # _pcbnew DLL/DSO file creation
### ###
...@@ -328,6 +326,7 @@ if (KICAD_SCRIPTING_MODULES) ...@@ -328,6 +326,7 @@ if (KICAD_SCRIPTING_MODULES)
${OPENGL_LIBRARIES} ${OPENGL_LIBRARIES}
${GDI_PLUS_LIBRARIES} ${GDI_PLUS_LIBRARIES}
${PYTHON_LIBRARIES} ${PYTHON_LIBRARIES}
rt
) )
endif (KICAD_SCRIPTING_MODULES) endif (KICAD_SCRIPTING_MODULES)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment