Remove old build configuration since kiway is now the only way to build kicad.

This commit is contained in:
Wayne Stambaugh 2014-10-26 15:54:48 -04:00
parent ad645abac4
commit e273a48ddc
7 changed files with 506 additions and 728 deletions

View File

@ -23,9 +23,6 @@ set( CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/CMakeModules )
# reports. # reports.
# #
#option( USE_KIWAY_DLLS "Build the major modules as KIFACE DLLs or DSOs, will soon be the norm." ON )
set( USE_KIWAY_DLLS true ) # this is now mandatory, the code is the same anyways, the old code is gone.
# The desire is to migrate designs *away from* case independence, and to create designs which use # The desire is to migrate designs *away from* case independence, and to create designs which use
# literally (case specific) interpreted component names. But for backwards compatibility, # literally (case specific) interpreted component names. But for backwards compatibility,
# you may turn OFF this option if you really must. (Remember that with KiCad using text # you may turn OFF this option if you really must. (Remember that with KiCad using text

View File

@ -68,39 +68,39 @@ if( APPLE )
endif() endif()
if( USE_KIWAY_DLLS ) add_executable( cvpcb WIN32 MACOSX_BUNDLE
add_executable( cvpcb WIN32 MACOSX_BUNDLE
../common/single_top.cpp ../common/single_top.cpp
../common/pgm_base.cpp ../common/pgm_base.cpp
${CVPCB_RESOURCES} ${CVPCB_RESOURCES}
) )
set_source_files_properties( ../common/single_top.cpp PROPERTIES set_source_files_properties( ../common/single_top.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=FRAME_CVPCB;PGM_DATA_FILE_EXT=\"net\";BUILD_KIWAY_DLL" COMPILE_DEFINITIONS "TOP_FRAME=FRAME_CVPCB;PGM_DATA_FILE_EXT=\"net\";BUILD_KIWAY_DLL"
) )
target_link_libraries( cvpcb target_link_libraries( cvpcb
#singletop # replaces common, giving us restrictive control and link warnings. #singletop # replaces common, giving us restrictive control and link warnings.
# There's way too much crap coming in from common yet. # There's way too much crap coming in from common yet.
common common
bitmaps bitmaps
${wxWidgets_LIBRARIES} ${wxWidgets_LIBRARIES}
) )
if( MAKE_LINK_MAPS )
if( MAKE_LINK_MAPS )
set_target_properties( cvpcb PROPERTIES set_target_properties( cvpcb PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=cvpcb.map" ) LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=cvpcb.map" )
endif() endif()
# the main cvpcb program, in DSO form. # the main cvpcb program, in DSO form.
add_library( cvpcb_kiface MODULE add_library( cvpcb_kiface MODULE
cvpcb.cpp cvpcb.cpp
${CVPCB_SRCS} ${CVPCB_SRCS}
${CVPCB_DIALOGS} ${CVPCB_DIALOGS}
) )
set_target_properties( cvpcb_kiface PROPERTIES set_target_properties( cvpcb_kiface PROPERTIES
OUTPUT_NAME cvpcb OUTPUT_NAME cvpcb
PREFIX ${KIFACE_PREFIX} PREFIX ${KIFACE_PREFIX}
SUFFIX ${KIFACE_SUFFIX} SUFFIX ${KIFACE_SUFFIX}
) )
target_link_libraries( cvpcb_kiface target_link_libraries( cvpcb_kiface
3d-viewer 3d-viewer
pcbcommon pcbcommon
pcad2kicadpcb pcad2kicadpcb
@ -117,8 +117,8 @@ if( USE_KIWAY_DLLS )
${OPENMP_LIBRARIES} ${OPENMP_LIBRARIES}
) )
# Only for win32 cross compilation using MXE # Only for win32 cross compilation using MXE
if( WIN32 AND MSYS AND CMAKE_CROSSCOMPILING ) if( WIN32 AND MSYS AND CMAKE_CROSSCOMPILING )
target_link_libraries( cvpcb_kiface target_link_libraries( cvpcb_kiface
opengl32 opengl32
glu32 glu32
@ -127,35 +127,35 @@ if( USE_KIWAY_DLLS )
freetype freetype
bz2 bz2
) )
endif() endif()
if( BUILD_GITHUB_PLUGIN ) if( BUILD_GITHUB_PLUGIN )
target_link_libraries( cvpcb_kiface github_plugin ) target_link_libraries( cvpcb_kiface github_plugin )
endif() endif()
# Must follow github_plugin # Must follow github_plugin
target_link_libraries( cvpcb_kiface ${Boost_LIBRARIES} ) target_link_libraries( cvpcb_kiface ${Boost_LIBRARIES} )
if( UNIX AND NOT APPLE ) if( UNIX AND NOT APPLE )
# -lrt must follow Boost # -lrt must follow Boost
target_link_libraries( cvpcb_kiface rt ) target_link_libraries( cvpcb_kiface rt )
endif() endif()
set_source_files_properties( cvpcb.cpp PROPERTIES set_source_files_properties( cvpcb.cpp PROPERTIES
# The KIFACE is in cvpcb.cpp, export it: # The KIFACE is in cvpcb.cpp, export it:
COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL" COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL"
) )
if( MAKE_LINK_MAPS ) if( MAKE_LINK_MAPS )
set_target_properties( cvpcb_kiface PROPERTIES set_target_properties( cvpcb_kiface PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=_cvpcb.kiface.map" ) LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=_cvpcb.kiface.map" )
endif() endif()
# if building cvpcb, then also build cvpcb_kiface if out of date. # if building cvpcb, then also build cvpcb_kiface if out of date.
add_dependencies( cvpcb cvpcb_kiface ) add_dependencies( cvpcb cvpcb_kiface )
# these 2 binaries are a matched set, keep them together: # these 2 binaries are a matched set, keep them together:
if( APPLE ) if( APPLE )
set_target_properties( cvpcb PROPERTIES set_target_properties( cvpcb PROPERTIES
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
) )
@ -182,7 +182,7 @@ if( USE_KIWAY_DLLS )
) )
" COMPONENT Runtime " COMPONENT Runtime
) )
else() else()
install( TARGETS cvpcb install( TARGETS cvpcb
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
@ -191,52 +191,4 @@ if( USE_KIWAY_DLLS )
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
) )
endif()
else()
add_executable( cvpcb WIN32 MACOSX_BUNDLE
${CVPCB_SRCS}
${CVPCB_DIALOGS}
${CVPCB_RESOURCES}
)
target_link_libraries( cvpcb
3d-viewer
pcbcommon
pcad2kicadpcb
common
bitmaps
polygon
gal
${wxWidgets_LIBRARIES}
${OPENGL_LIBRARIES}
${GDI_PLUS_LIBRARIES}
${GLEW_LIBRARIES}
${CAIRO_LIBRARIES}
${PIXMAN_LIBRARY}
)
# Only for win32 cross compilation using MXE
if( WIN32 AND MSYS AND CMAKE_CROSSCOMPILING )
target_link_libraries( cvpcb
opengl32
glu32
pixman-1
fontconfig
freetype
bz2
)
endif()
if( BUILD_GITHUB_PLUGIN )
target_link_libraries( cvpcb github_plugin )
endif()
# Must follow github_plugin
target_link_libraries( cvpcb ${Boost_LIBRARIES} )
install( TARGETS cvpcb
DESTINATION ${KICAD_BIN}
COMPONENT binary
)
endif() endif()

View File

@ -218,16 +218,15 @@ if( APPLE )
endif() endif()
if( USE_KIWAY_DLLS ) add_executable( eeschema WIN32 MACOSX_BUNDLE
add_executable( eeschema WIN32 MACOSX_BUNDLE
../common/single_top.cpp ../common/single_top.cpp
../common/pgm_base.cpp ../common/pgm_base.cpp
${EESCHEMA_RESOURCES} ${EESCHEMA_RESOURCES}
) )
set_source_files_properties( ../common/single_top.cpp PROPERTIES set_source_files_properties( ../common/single_top.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=FRAME_SCH;PGM_DATA_FILE_EXT=\"sch\";BUILD_KIWAY_DLL" COMPILE_DEFINITIONS "TOP_FRAME=FRAME_SCH;PGM_DATA_FILE_EXT=\"sch\";BUILD_KIWAY_DLL"
) )
target_link_libraries( eeschema target_link_libraries( eeschema
#singletop # replaces common, giving us restrictive control and link warnings. #singletop # replaces common, giving us restrictive control and link warnings.
# There's way too much crap coming in from common yet. # There's way too much crap coming in from common yet.
common common
@ -235,20 +234,19 @@ if( USE_KIWAY_DLLS )
${wxWidgets_LIBRARIES} ${wxWidgets_LIBRARIES}
) )
# the DSO (KIFACE) housing the main eeschema code: # the DSO (KIFACE) housing the main eeschema code:
add_library( eeschema_kiface MODULE add_library( eeschema_kiface MODULE
${EESCHEMA_SRCS} ${EESCHEMA_SRCS}
${EESCHEMA_COMMON_SRCS} ${EESCHEMA_COMMON_SRCS}
# ${EESCHEMA_RESOURCES}
) )
target_link_libraries( eeschema_kiface target_link_libraries( eeschema_kiface
common common
bitmaps bitmaps
polygon polygon
${wxWidgets_LIBRARIES} ${wxWidgets_LIBRARIES}
${GDI_PLUS_LIBRARIES} ${GDI_PLUS_LIBRARIES}
) )
set_target_properties( eeschema_kiface PROPERTIES set_target_properties( eeschema_kiface PROPERTIES
# Decorate OUTPUT_NAME with PREFIX and SUFFIX, creating something like # Decorate OUTPUT_NAME with PREFIX and SUFFIX, creating something like
# _eeschema.so, _eeschema.dll, or _eeschema.kiface # _eeschema.so, _eeschema.dll, or _eeschema.kiface
OUTPUT_NAME eeschema OUTPUT_NAME eeschema
@ -256,15 +254,15 @@ if( USE_KIWAY_DLLS )
SUFFIX ${KIFACE_SUFFIX} SUFFIX ${KIFACE_SUFFIX}
) )
# The KIFACE is in eeschema.cpp, export it: # The KIFACE is in eeschema.cpp, export it:
set_source_files_properties( eeschema.cpp PROPERTIES set_source_files_properties( eeschema.cpp PROPERTIES
COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL" COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL"
) )
# if building eeschema, then also build eeschema_kiface if out of date. # if building eeschema, then also build eeschema_kiface if out of date.
add_dependencies( eeschema eeschema_kiface ) add_dependencies( eeschema eeschema_kiface )
if( MAKE_LINK_MAPS ) if( MAKE_LINK_MAPS )
# generate link map with cross reference # generate link map with cross reference
set_target_properties( eeschema_kiface PROPERTIES set_target_properties( eeschema_kiface PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=${KIFACE_PREFIX}eeschema${KIFACE_SUFFIX}.map" LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=${KIFACE_PREFIX}eeschema${KIFACE_SUFFIX}.map"
@ -272,10 +270,10 @@ if( USE_KIWAY_DLLS )
set_target_properties( eeschema PROPERTIES set_target_properties( eeschema PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=eeschema.map" LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=eeschema.map"
) )
endif() endif()
# these 2 binaries are a matched set, keep them together: # these 2 binaries are a matched set, keep them together:
if( APPLE ) if( APPLE )
set_target_properties( eeschema PROPERTIES set_target_properties( eeschema PROPERTIES
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
) )
@ -302,7 +300,7 @@ if( USE_KIWAY_DLLS )
) )
" COMPONENT Runtime " COMPONENT Runtime
) )
else() else()
install( TARGETS eeschema install( TARGETS eeschema
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
@ -313,34 +311,6 @@ if( USE_KIWAY_DLLS )
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
) )
endif()
else()
add_executable( eeschema WIN32 MACOSX_BUNDLE
../common/single_top.cpp
${EESCHEMA_SRCS}
${EESCHEMA_COMMON_SRCS}
${EESCHEMA_RESOURCES}
)
target_link_libraries( eeschema
common
# lib_kicad
bitmaps
polygon
${wxWidgets_LIBRARIES}
${GDI_PLUS_LIBRARIES}
)
set_source_files_properties( ../common/single_top.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=FRAME_SCH;PGM_DATA_FILE_EXT=\"sch\";BUILD_KIWAY_DLL"
)
install( TARGETS eeschema
DESTINATION ${KICAD_BIN}
COMPONENT binary
)
endif() endif()
# auto-generate cmp_library_lexer.h and cmp_library_keywords.cpp for the component # auto-generate cmp_library_lexer.h and cmp_library_keywords.cpp for the component

View File

@ -93,41 +93,40 @@ if( APPLE )
set( MACOSX_BUNDLE_NAME gerbview ) set( MACOSX_BUNDLE_NAME gerbview )
endif() endif()
if( USE_KIWAY_DLLS ) add_executable( gerbview WIN32 MACOSX_BUNDLE
add_executable( gerbview WIN32 MACOSX_BUNDLE
../common/single_top.cpp ../common/single_top.cpp
../common/pgm_base.cpp ../common/pgm_base.cpp
${GERBVIEW_RESOURCES} ${GERBVIEW_RESOURCES}
) )
set_source_files_properties( ../common/single_top.cpp PROPERTIES set_source_files_properties( ../common/single_top.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=FRAME_GERBER;BUILD_KIWAY_DLL" COMPILE_DEFINITIONS "TOP_FRAME=FRAME_GERBER;BUILD_KIWAY_DLL"
) )
target_link_libraries( gerbview target_link_libraries( gerbview
#singletop # replaces common, giving us restrictive control and link warnings. #singletop # replaces common, giving us restrictive control and link warnings.
# There's way too much crap coming in from common yet. # There's way too much crap coming in from common yet.
common common
bitmaps bitmaps
${wxWidgets_LIBRARIES} ${wxWidgets_LIBRARIES}
) )
if( MAKE_LINK_MAPS )
if( MAKE_LINK_MAPS )
set_target_properties( gerbview PROPERTIES set_target_properties( gerbview PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=gerbview.map" ) LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=gerbview.map" )
endif() endif()
# the main gerbview program, in DSO form. # the main gerbview program, in DSO form.
add_library( gerbview_kiface MODULE add_library( gerbview_kiface MODULE
gerbview.cpp gerbview.cpp
${GERBVIEW_SRCS} ${GERBVIEW_SRCS}
${DIALOGS_SRCS} ${DIALOGS_SRCS}
${GERBVIEW_EXTRA_SRCS} ${GERBVIEW_EXTRA_SRCS}
) )
set_target_properties( gerbview_kiface PROPERTIES set_target_properties( gerbview_kiface PROPERTIES
OUTPUT_NAME gerbview OUTPUT_NAME gerbview
PREFIX ${KIFACE_PREFIX} PREFIX ${KIFACE_PREFIX}
SUFFIX ${KIFACE_SUFFIX} SUFFIX ${KIFACE_SUFFIX}
) )
target_link_libraries( gerbview_kiface target_link_libraries( gerbview_kiface
common common
polygon polygon
bitmaps bitmaps
@ -135,20 +134,21 @@ if( USE_KIWAY_DLLS )
${wxWidgets_LIBRARIES} ${wxWidgets_LIBRARIES}
${GDI_PLUS_LIBRARIES} ${GDI_PLUS_LIBRARIES}
) )
set_source_files_properties( gerbview.cpp PROPERTIES set_source_files_properties( gerbview.cpp PROPERTIES
# The KIFACE is in gerbview.cpp, export it: # The KIFACE is in gerbview.cpp, export it:
COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL" COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL"
) )
if( MAKE_LINK_MAPS )
if( MAKE_LINK_MAPS )
set_target_properties( gerbview_kiface PROPERTIES set_target_properties( gerbview_kiface PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=_gerbview.kiface.map" ) LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=_gerbview.kiface.map" )
endif() endif()
# if building gerbview, then also build gerbview_kiface if out of date. # if building gerbview, then also build gerbview_kiface if out of date.
add_dependencies( gerbview gerbview_kiface ) add_dependencies( gerbview gerbview_kiface )
# these 2 binaries are a matched set, keep them together # these 2 binaries are a matched set, keep them together
if( APPLE ) if( APPLE )
set_target_properties( gerbview PROPERTIES set_target_properties( gerbview PROPERTIES
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
) )
@ -175,7 +175,7 @@ if( USE_KIWAY_DLLS )
) )
" COMPONENT Runtime " COMPONENT Runtime
) )
else() else()
install( TARGETS gerbview install( TARGETS gerbview
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
@ -184,28 +184,4 @@ if( USE_KIWAY_DLLS )
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
) )
endif()
else()
add_executable( gerbview WIN32 MACOSX_BUNDLE
gerbview.cpp
${GERBVIEW_SRCS}
${DIALOGS_SRCS}
${GERBVIEW_EXTRA_SRCS}
${GERBVIEW_RESOURCES}
)
target_link_libraries( gerbview
common
polygon
bitmaps
${OPENGL_LIBRARIES}
${wxWidgets_LIBRARIES}
${GDI_PLUS_LIBRARIES}
)
install( TARGETS gerbview
DESTINATION ${KICAD_BIN}
COMPONENT binary
)
endif() endif()

View File

@ -67,38 +67,36 @@ if( APPLE )
set( MACOSX_BUNDLE_NAME pl_editor ) set( MACOSX_BUNDLE_NAME pl_editor )
endif() endif()
# a very small program launcher for pl_editor_kiface
if( USE_KIWAY_DLLS ) add_executable( pl_editor WIN32 MACOSX_BUNDLE
# a very small program launcher for pl_editor_kiface
add_executable( pl_editor WIN32 MACOSX_BUNDLE
../common/single_top.cpp ../common/single_top.cpp
../common/pgm_base.cpp ../common/pgm_base.cpp
${PL_EDITOR_RESOURCES} ${PL_EDITOR_RESOURCES}
) )
set_source_files_properties( ../common/single_top.cpp PROPERTIES set_source_files_properties( ../common/single_top.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=FRAME_PL_EDITOR;PGM_DATA_FILE_EXT=\"kicad_wks\";BUILD_KIWAY_DLL" COMPILE_DEFINITIONS "TOP_FRAME=FRAME_PL_EDITOR;PGM_DATA_FILE_EXT=\"kicad_wks\";BUILD_KIWAY_DLL"
) )
target_link_libraries( pl_editor target_link_libraries( pl_editor
#singletop # replaces common, giving us restrictive control and link warnings. #singletop # replaces common, giving us restrictive control and link warnings.
# There's way too much crap coming in from common yet. # There's way too much crap coming in from common yet.
common common
bitmaps bitmaps
${wxWidgets_LIBRARIES} ${wxWidgets_LIBRARIES}
) )
if( MAKE_LINK_MAPS )
if( MAKE_LINK_MAPS )
set_target_properties( pl_editor PROPERTIES set_target_properties( pl_editor PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=pl_editor.map" ) LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=pl_editor.map" )
endif() endif()
# the main pl_editor program, in DSO form. # the main pl_editor program, in DSO form.
add_library( pl_editor_kiface MODULE add_library( pl_editor_kiface MODULE
pl_editor.cpp pl_editor.cpp
${PL_EDITOR_SRCS} ${PL_EDITOR_SRCS}
${DIALOGS_SRCS} ${DIALOGS_SRCS}
${PL_EDITOR_EXTRA_SRCS} ${PL_EDITOR_EXTRA_SRCS}
) )
target_link_libraries( pl_editor_kiface target_link_libraries( pl_editor_kiface
common common
polygon polygon
bitmaps bitmaps
@ -106,25 +104,26 @@ if( USE_KIWAY_DLLS )
${wxWidgets_LIBRARIES} ${wxWidgets_LIBRARIES}
${GDI_PLUS_LIBRARIES} ${GDI_PLUS_LIBRARIES}
) )
set_target_properties( pl_editor_kiface PROPERTIES set_target_properties( pl_editor_kiface PROPERTIES
OUTPUT_NAME pl_editor OUTPUT_NAME pl_editor
PREFIX ${KIFACE_PREFIX} PREFIX ${KIFACE_PREFIX}
SUFFIX ${KIFACE_SUFFIX} SUFFIX ${KIFACE_SUFFIX}
) )
set_source_files_properties( pl_editor.cpp PROPERTIES set_source_files_properties( pl_editor.cpp PROPERTIES
# The KIFACE is in pcbnew.cpp, export it: # The KIFACE is in pcbnew.cpp, export it:
COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL" COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL"
) )
if( MAKE_LINK_MAPS )
if( MAKE_LINK_MAPS )
set_target_properties( pl_editor_kiface PROPERTIES set_target_properties( pl_editor_kiface PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=_pl_editor.kiface.map" ) LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=_pl_editor.kiface.map" )
endif() endif()
# if building pl_editor, then also build pl_editor_kiface if out of date. # if building pl_editor, then also build pl_editor_kiface if out of date.
add_dependencies( pl_editor pl_editor_kiface ) add_dependencies( pl_editor pl_editor_kiface )
# these 2 binaries are a matched set, keep them together: # these 2 binaries are a matched set, keep them together:
if( APPLE ) if( APPLE )
set_target_properties( pl_editor PROPERTIES set_target_properties( pl_editor PROPERTIES
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
) )
@ -133,6 +132,7 @@ if( USE_KIWAY_DLLS )
set_target_properties( pl_editor_kiface PROPERTIES set_target_properties( pl_editor_kiface PROPERTIES
LIBRARY_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_KIFACE_DIR} LIBRARY_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_KIFACE_DIR}
) )
# put individual bundle outside of main bundle as a first step # put individual bundle outside of main bundle as a first step
# will be pulled into the main bundle when creating main bundle # will be pulled into the main bundle when creating main bundle
install( TARGETS pl_editor install( TARGETS pl_editor
@ -151,7 +151,7 @@ if( USE_KIWAY_DLLS )
) )
" COMPONENT Runtime " COMPONENT Runtime
) )
else() else()
install( TARGETS pl_editor install( TARGETS pl_editor
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
@ -160,28 +160,4 @@ if( USE_KIWAY_DLLS )
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
) )
endif()
else()
add_executable( pl_editor WIN32 MACOSX_BUNDLE
pl_editor.cpp
${PL_EDITOR_SRCS}
${DIALOGS_SRCS}
${PL_EDITOR_EXTRA_SRCS}
${PL_EDITOR_RESOURCES}
)
target_link_libraries( pl_editor
common
polygon
bitmaps
${OPENGL_LIBRARIES}
${wxWidgets_LIBRARIES}
${GDI_PLUS_LIBRARIES}
)
install( TARGETS pl_editor
DESTINATION ${KICAD_BIN}
COMPONENT binary
)
endif() endif()

View File

@ -53,60 +53,58 @@ if( APPLE )
set( MACOSX_BUNDLE_NAME pcb_calculator ) set( MACOSX_BUNDLE_NAME pcb_calculator )
endif() endif()
add_executable( pcb_calculator WIN32 MACOSX_BUNDLE
if( USE_KIWAY_DLLS )
#if( false )
add_executable( pcb_calculator WIN32 MACOSX_BUNDLE
../common/single_top.cpp ../common/single_top.cpp
../common/pgm_base.cpp ../common/pgm_base.cpp
${PCB_CALCULATOR_RESOURCES} ${PCB_CALCULATOR_RESOURCES}
) )
set_source_files_properties( ../common/single_top.cpp PROPERTIES set_source_files_properties( ../common/single_top.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=FRAME_CALC;BUILD_KIWAY_DLL" COMPILE_DEFINITIONS "TOP_FRAME=FRAME_CALC;BUILD_KIWAY_DLL"
) )
target_link_libraries( pcb_calculator target_link_libraries( pcb_calculator
#singletop # replaces common, giving us restrictive control and link warnings. #singletop # replaces common, giving us restrictive control and link warnings.
# There's way too much crap coming in from common yet. # There's way too much crap coming in from common yet.
common common
bitmaps bitmaps
${wxWidgets_LIBRARIES} ${wxWidgets_LIBRARIES}
) )
if( MAKE_LINK_MAPS )
if( MAKE_LINK_MAPS )
set_target_properties( pcb_calculator PROPERTIES set_target_properties( pcb_calculator PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=pcb_calculator.map" ) LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=pcb_calculator.map" )
endif() endif()
# the main pcb_calculator program, in DSO form. # the main pcb_calculator program, in DSO form.
add_library( pcb_calculator_kiface MODULE add_library( pcb_calculator_kiface MODULE
pcb_calculator.cpp pcb_calculator.cpp
${PCB_CALCULATOR_SRCS} ${PCB_CALCULATOR_SRCS}
) )
set_target_properties( pcb_calculator_kiface PROPERTIES set_target_properties( pcb_calculator_kiface PROPERTIES
OUTPUT_NAME pcb_calculator OUTPUT_NAME pcb_calculator
PREFIX ${KIFACE_PREFIX} PREFIX ${KIFACE_PREFIX}
SUFFIX ${KIFACE_SUFFIX} SUFFIX ${KIFACE_SUFFIX}
) )
target_link_libraries( pcb_calculator_kiface target_link_libraries( pcb_calculator_kiface
common common
bitmaps bitmaps
polygon polygon
${wxWidgets_LIBRARIES} ${wxWidgets_LIBRARIES}
) )
set_source_files_properties( pcb_calculator.cpp PROPERTIES set_source_files_properties( pcb_calculator.cpp PROPERTIES
# The KIFACE is in pcb_calculator.cpp, export it: # The KIFACE is in pcb_calculator.cpp, export it:
COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL" COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL"
) )
if( MAKE_LINK_MAPS )
if( MAKE_LINK_MAPS )
set_target_properties( pcb_calculator_kiface PROPERTIES set_target_properties( pcb_calculator_kiface PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=_pcb_calculator.kiface.map" ) LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=_pcb_calculator.kiface.map" )
endif() endif()
# if building pcb_calculator, then also build pcb_calculator_kiface if out of date. # if building pcb_calculator, then also build pcb_calculator_kiface if out of date.
add_dependencies( pcb_calculator pcb_calculator_kiface ) add_dependencies( pcb_calculator pcb_calculator_kiface )
# these 2 binaries are a matched set, keep them together # these 2 binaries are a matched set, keep them together
if( APPLE ) if( APPLE )
set_target_properties( pcb_calculator PROPERTIES set_target_properties( pcb_calculator PROPERTIES
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
) )
@ -115,6 +113,7 @@ if( USE_KIWAY_DLLS )
set_target_properties( pcb_calculator_kiface PROPERTIES set_target_properties( pcb_calculator_kiface PROPERTIES
LIBRARY_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_KIFACE_DIR} LIBRARY_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_KIFACE_DIR}
) )
# put individual bundle outside of main bundle as a first step # put individual bundle outside of main bundle as a first step
# will be pulled into the main bundle when creating main bundle # will be pulled into the main bundle when creating main bundle
install( TARGETS pcb_calculator install( TARGETS pcb_calculator
@ -133,7 +132,7 @@ if( USE_KIWAY_DLLS )
) )
" COMPONENT Runtime " COMPONENT Runtime
) )
else() else()
install( TARGETS pcb_calculator install( TARGETS pcb_calculator
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
@ -142,33 +141,6 @@ if( USE_KIWAY_DLLS )
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
) )
endif()
else()
add_executable( pcb_calculator WIN32 MACOSX_BUNDLE
../common/single_top.cpp
pcb_calculator.cpp
${PCB_CALCULATOR_SRCS}
${PCB_CALCULATOR_RESOURCES}
)
set_source_files_properties( ../common/single_top.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=0"
)
set_source_files_properties( pcb_calculator.cpp PROPERTIES
COMPILE_DEFINITIONS "COMPILING_DLL"
)
target_link_libraries( pcb_calculator
common
bitmaps
polygon
${wxWidgets_LIBRARIES}
)
install( TARGETS pcb_calculator
DESTINATION ${KICAD_BIN}
COMPONENT binary
)
endif() endif()
# auto-generate pcb_calculator_datafile.h and pcb_calculator_datafile_keywords.cpp # auto-generate pcb_calculator_datafile.h and pcb_calculator_datafile_keywords.cpp

View File

@ -235,9 +235,6 @@ set( PCBNEW_CLASS_SRCS
printout_controler.cpp printout_controler.cpp
ratsnest.cpp ratsnest.cpp
ratsnest_viewitem.cpp ratsnest_viewitem.cpp
# specctra.cpp #moved in pcbcommon lib
# specctra_export.cpp
# specctra_keywords.cpp
specctra_import.cpp specctra_import.cpp
swap_layers.cpp swap_layers.cpp
target_edit.cpp target_edit.cpp
@ -513,50 +510,49 @@ if( BUILD_GITHUB_PLUGIN )
endif() endif()
if( USE_KIWAY_DLLS ) # a very small program launcher for pcbnew_kiface
#if( false ) add_executable( pcbnew WIN32 MACOSX_BUNDLE
# a very small program launcher for pcbnew_kiface
add_executable( pcbnew WIN32 MACOSX_BUNDLE
../common/single_top.cpp ../common/single_top.cpp
${PCBNEW_RESOURCES} ${PCBNEW_RESOURCES}
) )
set_source_files_properties( ../common/single_top.cpp pcbnew.cpp PROPERTIES set_source_files_properties( ../common/single_top.cpp pcbnew.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=FRAME_PCB;PGM_DATA_FILE_EXT=\"kicad_pcb\";BUILD_KIWAY_DLL" COMPILE_DEFINITIONS "TOP_FRAME=FRAME_PCB;PGM_DATA_FILE_EXT=\"kicad_pcb\";BUILD_KIWAY_DLL"
) )
target_link_libraries( pcbnew target_link_libraries( pcbnew
#singletop # replaces common, giving us restrictive control and link warnings. #singletop # replaces common, giving us restrictive control and link warnings.
# There's way too much crap coming in from common yet. # There's way too much crap coming in from common yet.
common common
bitmaps bitmaps
${wxWidgets_LIBRARIES} ${wxWidgets_LIBRARIES}
) )
if( MAKE_LINK_MAPS )
if( MAKE_LINK_MAPS )
set_target_properties( pcbnew PROPERTIES set_target_properties( pcbnew PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=pcbnew.map" ) LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=pcbnew.map" )
endif() endif()
# the main pcbnew program, in DSO form. # the main pcbnew program, in DSO form.
add_library( pcbnew_kiface MODULE add_library( pcbnew_kiface MODULE
pcbnew.cpp pcbnew.cpp
${PCBNEW_SRCS} ${PCBNEW_SRCS}
${PCBNEW_COMMON_SRCS} ${PCBNEW_COMMON_SRCS}
${PCBNEW_SCRIPTING_SRCS} ${PCBNEW_SCRIPTING_SRCS}
) )
set_target_properties( pcbnew_kiface PROPERTIES set_target_properties( pcbnew_kiface PROPERTIES
# Decorate OUTPUT_NAME with PREFIX and SUFFIX, creating something like # Decorate OUTPUT_NAME with PREFIX and SUFFIX, creating something like
# _pcbnew.so, _pcbnew.dll, or _pcbnew.kiface # _pcbnew.so, _pcbnew.dll, or _pcbnew.kiface
OUTPUT_NAME pcbnew OUTPUT_NAME pcbnew
PREFIX ${KIFACE_PREFIX} PREFIX ${KIFACE_PREFIX}
SUFFIX ${KIFACE_SUFFIX} SUFFIX ${KIFACE_SUFFIX}
) )
if( ${OPENMP_FOUND} )
if( ${OPENMP_FOUND} )
set_target_properties( pcbnew_kiface PROPERTIES set_target_properties( pcbnew_kiface PROPERTIES
COMPILE_FLAGS ${OpenMP_CXX_FLAGS} COMPILE_FLAGS ${OpenMP_CXX_FLAGS}
) )
endif() endif()
target_link_libraries( pcbnew_kiface target_link_libraries( pcbnew_kiface
3d-viewer 3d-viewer
pcbcommon pcbcommon
pnsrouter pnsrouter
@ -579,24 +575,25 @@ if( USE_KIWAY_DLLS )
${PCBNEW_EXTRA_LIBS} # -lrt must follow Boost ${PCBNEW_EXTRA_LIBS} # -lrt must follow Boost
${OPENMP_LIBRARIES} ${OPENMP_LIBRARIES}
) )
set_source_files_properties( pcbnew.cpp PROPERTIES set_source_files_properties( pcbnew.cpp PROPERTIES
# The KIFACE is in pcbnew.cpp, export it: # The KIFACE is in pcbnew.cpp, export it:
COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL" COMPILE_DEFINITIONS "BUILD_KIWAY_DLL;COMPILING_DLL"
) )
if( MAKE_LINK_MAPS )
if( MAKE_LINK_MAPS )
set_target_properties( pcbnew_kiface PROPERTIES set_target_properties( pcbnew_kiface PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=_pcbnew.kiface.map" LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=_pcbnew.kiface.map"
) )
set_target_properties( pcbnew PROPERTIES set_target_properties( pcbnew PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=pcbnew.map" LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=pcbnew.map"
) )
endif() endif()
# if building pcbnew, then also build pcbnew_kiface if out of date. # if building pcbnew, then also build pcbnew_kiface if out of date.
add_dependencies( pcbnew pcbnew_kiface ) add_dependencies( pcbnew pcbnew_kiface )
# these 2 binaries are a matched set, keep them together: # these 2 binaries are a matched set, keep them together:
if( APPLE ) if( APPLE )
set_target_properties( pcbnew PROPERTIES set_target_properties( pcbnew PROPERTIES
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
) )
@ -623,7 +620,7 @@ if( USE_KIWAY_DLLS )
) )
" COMPONENT Runtime " COMPONENT Runtime
) )
else() else()
install( TARGETS pcbnew install( TARGETS pcbnew
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
@ -632,70 +629,8 @@ if( USE_KIWAY_DLLS )
DESTINATION ${KICAD_BIN} DESTINATION ${KICAD_BIN}
COMPONENT binary COMPONENT binary
) )
endif()
else() # milestone A) kills this off:
add_executable( pcbnew WIN32 MACOSX_BUNDLE
../common/single_top.cpp
pcbnew.cpp
${PCBNEW_SRCS}
${PCBNEW_COMMON_SRCS}
${PCBNEW_SCRIPTING_SRCS}
${PCBNEW_RESOURCES}
)
set_source_files_properties( ../common/single_top.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=FRAME_PCB;PGM_DATA_FILE_EXT=\"kicad_pcb\""
)
target_link_libraries( pcbnew
3d-viewer
pcbcommon
pnsrouter
common
pcad2kicadpcb
polygon
bitmaps
gal
lib_dxf
idf3
${GITHUB_PLUGIN_LIBRARIES}
${wxWidgets_LIBRARIES}
${OPENGL_LIBRARIES}
${GDI_PLUS_LIBRARIES}
${PYTHON_LIBRARIES}
${GLEW_LIBRARIES}
${CAIRO_LIBRARIES}
${PIXMAN_LIBRARY}
${Boost_LIBRARIES} # must follow GITHUB
${PCBNEW_EXTRA_LIBS}
)
# Only for win32 cross compilation using MXE
if( WIN32 AND MSYS AND CMAKE_CROSSCOMPILING )
target_link_libraries( pcbnew
opengl32
glu32
pixman-1
fontconfig
freetype
bz2
)
endif()
if( MAKE_LINK_MAPS )
# generate a link map with cross reference
set_target_properties( pcbnew PROPERTIES
LINK_FLAGS "${TO_LINKER},-cref ${TO_LINKER},-Map=pcbnew.map"
)
endif()
install( TARGETS pcbnew
DESTINATION ${KICAD_BIN}
COMPONENT binary
)
endif() endif()
add_dependencies( pcbnew lib-dependencies ) add_dependencies( pcbnew lib-dependencies )