Added new CMake macro add_python_module() and some cleanup.

This commit is contained in:
Jean-Paul Chaput 2015-03-22 19:12:45 +01:00
parent 69c75b9ea9
commit 1e73466199
15 changed files with 753 additions and 711 deletions

View File

@ -316,3 +316,53 @@
set(${project}_FOUND FALSE)
endif(${project}_INCLUDE_DIR AND ${project}_LIBRARY)
endmacro(set_found project)
#
# Build a Python extention module.
# Usage:
# * clibSpec: The C/C++ shared part of the Python module.
# A four three list CLIB_NAME;version;soversion;
# - CLIB_NAME: the name of the C/C++ shared library
# - version: the full version number (ex: 1.0).
# - soversion: the shared version major (ex: 1).
# If the C library must not be generated because it is
# already included in another one, set to IGNORE.
# * pymodule: The name of the Python module (for "import PYMODULE").
# * deplibs: The list of dependencies.
#
macro( add_python_module pyCpps pyIncludes argClibSpec pymodule deplibs inc_install_dir )
set( pyDeplibs ${deplibs} )
# Force the argument <argClibSpec> to be parsed as a list.
set( clibSpec ${argClibSpec} )
list( GET clibSpec 0 clib )
message( STATUS ${clib} )
if( NOT (${clib} STREQUAL "Do_not_generate_C_library") )
list( LENGTH clibSpec clibLen )
if( NOT (clibLen EQUAL 3) )
message( FATAL_ERROR "python_module(): clibSpec doesnt't have exactly 3 elements (${clibSpec})." )
endif()
list( GET clibSpec 1 version )
list( GET clibSpec 2 soversion )
set( pyDeplibs ${clib} ${deplibs} )
add_library( ${clib} ${pyCpps} )
set_target_properties( ${clib} PROPERTIES VERSION ${version} SOVERSION ${soversion} )
target_link_libraries( ${clib} ${deplibs} )
install( TARGETS ${clib} DESTINATION lib${LIB_SUFFIX} )
endif()
set( pytarget "${pymodule}_target" )
add_library( ${pytarget} MODULE ${pyCpps} )
set_target_properties( ${pytarget} PROPERTIES
COMPILE_FLAGS "${COMPILE_FLAGS} -D__PYTHON_MODULE__=1"
PREFIX ""
OUTPUT_NAME ${pymodule}
)
target_link_libraries( ${pytarget} ${pyDeplibs} )
install( TARGETS ${pytarget} DESTINATION ${PYTHON_SITE_PACKAGES} )
install( FILES ${pyIncludes} DESTINATION ${inc_install_dir} )
endmacro( add_python_module )

View File

@ -1,76 +1,72 @@
# -*- explicit-buffer-name: "CMakeLists.txt<crlcore/src/pyCRL>" -*-
include_directories ( ${CRLCORE_SOURCE_DIR}/src/fonts
${CRLCORE_SOURCE_DIR}/src/ccore
${CRLCORE_SOURCE_DIR}/src/ccore/properties
${CRLCORE_SOURCE_DIR}/src/ccore/bookshelf
${CRLCORE_SOURCE_DIR}/src/ccore/cspice
${CRLCORE_SOURCE_DIR}/src/ccore/lefdef
${CRLCORE_SOURCE_DIR}/src/ccore/alliance/ap
${CRLCORE_SOURCE_DIR}/src/ccore/alliance/vst
${CRLCORE_SOURCE_DIR}/src/ccore/agds
${CRLCORE_SOURCE_DIR}/src/ccore/cif
${CRLCORE_SOURCE_DIR}/src/ccore/spice
${CRLCORE_SOURCE_DIR}/src/ccore/liberty
${CRLCORE_SOURCE_DIR}/src/ccore/toolbox
${CRLCORE_SOURCE_DIR}/src/pyCRL
${HURRICANE_INCLUDE_DIR}
${CIF_INCLUDE_DIR}
${CONFIGURATION_INCLUDE_DIR}
${PYTHON_INCLUDE_PATH}
${Boost_INCLUDE_DIR}
)
include_directories( ${CRLCORE_SOURCE_DIR}/src/fonts
${CRLCORE_SOURCE_DIR}/src/ccore
${CRLCORE_SOURCE_DIR}/src/ccore/properties
${CRLCORE_SOURCE_DIR}/src/ccore/bookshelf
${CRLCORE_SOURCE_DIR}/src/ccore/cspice
${CRLCORE_SOURCE_DIR}/src/ccore/lefdef
${CRLCORE_SOURCE_DIR}/src/ccore/alliance/ap
${CRLCORE_SOURCE_DIR}/src/ccore/alliance/vst
${CRLCORE_SOURCE_DIR}/src/ccore/agds
${CRLCORE_SOURCE_DIR}/src/ccore/cif
${CRLCORE_SOURCE_DIR}/src/ccore/spice
${CRLCORE_SOURCE_DIR}/src/ccore/liberty
${CRLCORE_SOURCE_DIR}/src/ccore/toolbox
${CRLCORE_SOURCE_DIR}/src/pyCRL
${HURRICANE_INCLUDE_DIR}
${CIF_INCLUDE_DIR}
${CONFIGURATION_INCLUDE_DIR}
${PYTHON_INCLUDE_PATH}
${Boost_INCLUDE_DIR}
)
add_definitions ( -DCORIOLIS_TOP="${CORIOLIS_TOP}"
-DSYS_CONF_DIR="${SYS_CONF_DIR}"
-DPYTHON_SITE_PACKAGES="${PYTHON_SITE_PACKAGES}"
)
add_definitions( -DCORIOLIS_TOP="${CORIOLIS_TOP}"
-DSYS_CONF_DIR="${SYS_CONF_DIR}"
-DPYTHON_SITE_PACKAGES="${PYTHON_SITE_PACKAGES}"
)
set ( sources PyCRL.cpp
PyBanner.cpp
PyCatalog.cpp
PyCatalogState.cpp
PyEnvironment.cpp
PyCellGauge.cpp
PyRoutingGauge.cpp
PyRoutingLayerGauge.cpp
PyAllianceFramework.cpp
PyToolBox.cpp
PyToolEngine.cpp
PyToolEngineCollection.cpp
PyGraphicToolEngine.cpp
PyAcmSigda.cpp
PyIspd05.cpp
)
set ( includes crlcore/PyBanner.h
crlcore/PyCatalog.h
crlcore/PyCatalogState.h
crlcore/PyEnvironment.h
crlcore/PyCellGauge.h
crlcore/PyRoutingGauge.h
crlcore/PyRoutingLayerGauge.h
crlcore/PyAllianceFramework.h
crlcore/PyToolBox.h
crlcore/PyToolEngine.h
crlcore/PyToolEngineCollection.h
crlcore/PyGraphicToolEngine.h
crlcore/PyAcmSigda.h
crlcore/PyIspd05.h
)
set( pyCpps PyCRL.cpp
PyBanner.cpp
PyCatalog.cpp
PyCatalogState.cpp
PyEnvironment.cpp
PyCellGauge.cpp
PyRoutingGauge.cpp
PyRoutingLayerGauge.cpp
PyAllianceFramework.cpp
PyToolBox.cpp
PyToolEngine.cpp
PyToolEngineCollection.cpp
PyGraphicToolEngine.cpp
PyAcmSigda.cpp
PyIspd05.cpp
)
set( pyIncludes crlcore/PyBanner.h
crlcore/PyCatalog.h
crlcore/PyCatalogState.h
crlcore/PyEnvironment.h
crlcore/PyCellGauge.h
crlcore/PyRoutingGauge.h
crlcore/PyRoutingLayerGauge.h
crlcore/PyAllianceFramework.h
crlcore/PyToolBox.h
crlcore/PyToolEngine.h
crlcore/PyToolEngineCollection.h
crlcore/PyGraphicToolEngine.h
crlcore/PyAcmSigda.h
crlcore/PyIspd05.h
)
set( depLibs crlcore
${HURRICANE_PYTHON_LIBRARIES}
${PYTHON_LIBRARIES}
-lutil
)
add_library ( pycrlcore ${sources} )
set_target_properties ( pycrlcore PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries ( pycrlcore crlcore
${HURRICANE_PYTHON_LIBRARIES}
${PYTHON_LIBRARIES} -lutil
)
add_library ( CRL MODULE ${sources} )
target_link_libraries ( CRL pycrlcore )
set_target_properties ( CRL PROPERTIES COMPILE_FLAGS "${COMPILE_FLAGS} -D__PYTHON_MODULE__=1"
PREFIX ""
)
install ( FILES ${includes} DESTINATION include/coriolis2/crlcore )
install ( TARGETS pycrlcore DESTINATION lib${LIB_SUFFIX} )
install ( TARGETS CRL DESTINATION ${PYTHON_SITE_PACKAGES} )
add_python_module( "${pyCpps}"
"${pyIncludes}"
"pycrlcore;1.0;1"
CRL
"${depLibs}"
include/coriolis2/crlcore
)

View File

@ -1,74 +1,68 @@
# -*- explicit-buffer-name: "CMakeLists.txt<etesian/src>" -*-
# include ( ${QT_USE_FILE} )
# include( ${QT_USE_FILE} )
include_directories( ${ETESIAN_SOURCE_DIR}/src
${COLOQUINTE_INCLUDE_DIR}
${CORIOLIS_INCLUDE_DIR}
${HURRICANE_INCLUDE_DIR}
${CONFIGURATION_INCLUDE_DIR}
${QtX_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
${PYTHON_INCLUDE_PATH}
)
set( includes etesian/Configuration.h
etesian/FeedCells.h
etesian/EtesianEngine.h
etesian/GraphicEtesianEngine.h
)
set( pyIncludes etesian/PyEtesianEngine.h
etesian/PyGraphicEtesianEngine.h
)
set( mocIncludes etesian/GraphicEtesianEngine.h )
set( cpps Configuration.cpp
AddFeeds.cpp
FeedCells.cpp
EtesianEngine.cpp
GraphicEtesianEngine.cpp
)
set( pyCpps PyEtesian.cpp
PyEtesianEngine.cpp
PyGraphicEtesianEngine.cpp
)
qtX_wrap_cpp( mocCpps ${mocIncludes} )
set( depLibs ${CORIOLIS_PYTHON_LIBRARIES}
${CORIOLIS_LIBRARIES}
${HURRICANE_PYTHON_LIBRARIES}
${HURRICANE_GRAPHICAL_LIBRARIES}
${HURRICANE_LIBRARIES}
${CONFIGURATION_LIBRARY}
${BOOKSHELF_LIBRARY}
${CIF_LIBRARY}
${AGDS_LIBRARY}
${UTILITIES_LIBRARY}
${LEFDEF_LIBRARIES}
${COLOQUINTE_LIBRARIES}
${OA_LIBRARIES}
${QtX_LIBRARIES}
${Boost_LIBRARIES}
${LIBXML2_LIBRARIES}
${PYTHON_LIBRARIES} -lutil
${LIBEXECINFO_LIBRARIES}
)
include_directories ( ${ETESIAN_SOURCE_DIR}/src
${COLOQUINTE_INCLUDE_DIR}
${CORIOLIS_INCLUDE_DIR}
${HURRICANE_INCLUDE_DIR}
${CONFIGURATION_INCLUDE_DIR}
${QtX_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
${PYTHON_INCLUDE_PATH}
)
set ( includes etesian/Configuration.h
etesian/FeedCells.h
etesian/EtesianEngine.h
etesian/GraphicEtesianEngine.h
)
set ( pyIncludes etesian/PyEtesianEngine.h
etesian/PyGraphicEtesianEngine.h
)
set ( mocIncludes etesian/GraphicEtesianEngine.h )
set ( cpps Configuration.cpp
AddFeeds.cpp
FeedCells.cpp
EtesianEngine.cpp
GraphicEtesianEngine.cpp
)
set ( pyCpps PyEtesian.cpp
PyEtesianEngine.cpp
PyGraphicEtesianEngine.cpp
)
qtX_wrap_cpp ( mocCpps ${mocIncludes} )
add_library( etesian ${cpps} ${mocCpps} ${pyCpps} )
set_target_properties( etesian PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries( etesian ${depLibs} )
add_library ( etesian ${cpps} ${mocCpps} ${pyCpps} )
set_target_properties ( etesian PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries ( etesian ${CORIOLIS_LIBRARIES}
${HURRICANE_PYTHON_LIBRARIES}
${HURRICANE_GRAPHICAL_LIBRARIES}
${HURRICANE_LIBRARIES}
${CONFIGURATION_LIBRARY}
${BOOKSHELF_LIBRARY}
${CIF_LIBRARY}
${AGDS_LIBRARY}
${UTILITIES_LIBRARY}
${LEFDEF_LIBRARIES}
${COLOQUINTE_LIBRARIES}
${OA_LIBRARIES}
${QtX_LIBRARIES}
${Boost_LIBRARIES}
${LIBXML2_LIBRARIES}
${PYTHON_LIBRARIES} -lutil
${LIBEXECINFO_LIBRARIES}
)
add_python_module( "${pyCpps}"
"${pyIncludes}"
"Do_not_generate_C_library"
Etesian
"etesian;${depLibs}"
include/coriolis2/etesian
)
add_library ( pyEtesian MODULE ${pyCpps} )
set_target_properties ( pyEtesian PROPERTIES COMPILE_FLAGS "${COMPILE_FLAGS} -D__PYTHON_MODULE__=1"
PREFIX ""
OUTPUT_NAME "Etesian"
)
target_link_libraries ( pyEtesian etesian
${CORIOLIS_PYTHON_LIBRARIES}
# add_executable ( etesian.bin ${etesiancpps} )
#target_link_libraries ( etesian.bin etesian )
)
install ( TARGETS etesian DESTINATION lib${LIB_SUFFIX} )
# install ( TARGETS etesian.bin DESTINATION bin )
install ( TARGETS pyEtesian DESTINATION ${PYTHON_SITE_PACKAGES} )
install ( FILES ${includes}
${mocIncludes}
${pyIncludes} DESTINATION include/coriolis2/etesian )
install( TARGETS etesian DESTINATION lib${LIB_SUFFIX} )
install( FILES ${includes}
${mocIncludes} DESTINATION include/coriolis2/etesian )

View File

@ -1,151 +1,149 @@
# -*- mode: CMAKE explicit-buffer-name: "CMakeLists.txt<hurricane/src/isobar>" -*-
# include ( ${QT_USE_FILE} )
# include( ${QT_USE_FILE} )
include_directories( ${HURRICANE_SOURCE_DIR}/src/hurricane
${HURRICANE_SOURCE_DIR}/src/viewer
${HURRICANE_SOURCE_DIR}/src/isobar
${PYTHON_INCLUDE_PATH}
)
set( pyCpps ProxyProperty.cpp
PyBreakpoint.cpp
PyInterval.cpp
PyBox.cpp
PyCell.cpp
PyCellCollection.cpp
PyComponent.cpp
PyComponentCollection.cpp
PyContact.cpp
PyDataBase.cpp
PyEntity.cpp
PyHorizontal.cpp
PyHurricane.cpp
PyHyperNet.cpp
PyPlacementStatus.cpp
PyInstance.cpp
PyInstanceCollection.cpp
PyMaterial.cpp
PyLayer.cpp
PyLayerMask.cpp
PyBasicLayer.cpp
PyRegularLayer.cpp
PyContactLayer.cpp
PyDiffusionLayer.cpp
PyTransistorLayer.cpp
PyViaLayer.cpp
PyLayerCollection.cpp
PyBasicLayerCollection.cpp
PyRegularLayerCollection.cpp
PyViaLayerCollection.cpp
PyLibrary.cpp
PyNet.cpp
PyNetType.cpp
PyNetDirection.cpp
PyNetCollection.cpp
PyNetExternalComponents.cpp
PyOccurrence.cpp
PyOccurrenceCollection.cpp
PyHook.cpp
PyHookCollection.cpp
PyPad.cpp
PyPath.cpp
PyPin.cpp
PyPinPlacementStatus.cpp
PyPinDirection.cpp
PyPinCollection.cpp
PyPlug.cpp
PyPlugCollection.cpp
PyPoint.cpp
PyReference.cpp
PyReferenceCollection.cpp
PyRoutingPad.cpp
PySegment.cpp
PySegmentCollection.cpp
PyTechnology.cpp
PyTransformation.cpp
PyOrientation.cpp
PyDbU.cpp
PyUpdateSession.cpp
PyDebugSession.cpp
PyVertical.cpp
PyQueryMask.cpp
PyQuery.cpp
)
set( pyIncludes hurricane/isobar/ProxyProperty.h
hurricane/isobar/PyBreakpoint.h
hurricane/isobar/PyInterval.h
hurricane/isobar/PyBox.h
hurricane/isobar/PyCell.h
hurricane/isobar/PyCellCollection.h
hurricane/isobar/PyComponent.h
hurricane/isobar/PyComponentCollection.h
hurricane/isobar/PyContact.h
hurricane/isobar/PyDataBase.h
hurricane/isobar/PyEntity.h
hurricane/isobar/PyHorizontal.h
hurricane/isobar/PyHurricane.h
hurricane/isobar/PyHyperNet.h
hurricane/isobar/PyPlacementStatus.h
hurricane/isobar/PyInstance.h
hurricane/isobar/PyInstanceCollection.h
hurricane/isobar/PyMaterial.h
hurricane/isobar/PyLayerMask.h
hurricane/isobar/PyLayer.h
hurricane/isobar/PyBasicLayer.h
hurricane/isobar/PyRegularLayer.h
hurricane/isobar/PyContactLayer.h
hurricane/isobar/PyDiffusionLayer.h
hurricane/isobar/PyTransistorLayer.h
hurricane/isobar/PyLayerCollection.h
hurricane/isobar/PyBasicLayerCollection.h
hurricane/isobar/PyRegularLayerCollection.h
hurricane/isobar/PyViaLayerCollection.h
hurricane/isobar/PyViaLayer.h
hurricane/isobar/PyLibrary.h
hurricane/isobar/PyNet.h
hurricane/isobar/PyNetType.h
hurricane/isobar/PyNetDirection.h
hurricane/isobar/PyNetCollection.h
hurricane/isobar/PyNetExternalComponents.h
hurricane/isobar/PyOccurrence.h
hurricane/isobar/PyOccurrenceCollection.h
hurricane/isobar/PyHook.h
hurricane/isobar/PyHookCollection.h
hurricane/isobar/PyPad.h
hurricane/isobar/PyPath.h
hurricane/isobar/PyPin.h
hurricane/isobar/PyPinPlacementStatus.h
hurricane/isobar/PyPinDirection.h
hurricane/isobar/PyPinCollection.h
hurricane/isobar/PyPlug.h
hurricane/isobar/PyPlugCollection.h
hurricane/isobar/PyPoint.h
hurricane/isobar/PyReference.h
hurricane/isobar/PyReferenceCollection.h
hurricane/isobar/PyRoutingPad.h
hurricane/isobar/PySegment.h
hurricane/isobar/PySegmentCollection.h
hurricane/isobar/PyTechnology.h
hurricane/isobar/PyTransformation.h
hurricane/isobar/PyOrientation.h
hurricane/isobar/PyDbU.h
hurricane/isobar/PyUpdateSession.h
hurricane/isobar/PyDebugSession.h
hurricane/isobar/PyVertical.h
hurricane/isobar/PyQueryMask.h
hurricane/isobar/PyQuery.h
)
include_directories ( ${HURRICANE_SOURCE_DIR}/src/hurricane
${HURRICANE_SOURCE_DIR}/src/viewer
${HURRICANE_SOURCE_DIR}/src/isobar
${PYTHON_INCLUDE_PATH}
)
set ( sources ProxyProperty.cpp
PyBreakpoint.cpp
PyInterval.cpp
PyBox.cpp
PyCell.cpp
PyCellCollection.cpp
PyComponent.cpp
PyComponentCollection.cpp
PyContact.cpp
PyDataBase.cpp
PyEntity.cpp
PyHorizontal.cpp
PyHurricane.cpp
PyHyperNet.cpp
PyPlacementStatus.cpp
PyInstance.cpp
PyInstanceCollection.cpp
PyMaterial.cpp
PyLayer.cpp
PyLayerMask.cpp
PyBasicLayer.cpp
PyRegularLayer.cpp
PyContactLayer.cpp
PyDiffusionLayer.cpp
PyTransistorLayer.cpp
PyViaLayer.cpp
PyLayerCollection.cpp
PyBasicLayerCollection.cpp
PyRegularLayerCollection.cpp
PyViaLayerCollection.cpp
PyLibrary.cpp
PyNet.cpp
PyNetType.cpp
PyNetDirection.cpp
PyNetCollection.cpp
PyNetExternalComponents.cpp
PyOccurrence.cpp
PyOccurrenceCollection.cpp
PyHook.cpp
PyHookCollection.cpp
PyPad.cpp
PyPath.cpp
PyPin.cpp
PyPinPlacementStatus.cpp
PyPinDirection.cpp
PyPinCollection.cpp
PyPlug.cpp
PyPlugCollection.cpp
PyPoint.cpp
PyReference.cpp
PyReferenceCollection.cpp
PyRoutingPad.cpp
PySegment.cpp
PySegmentCollection.cpp
PyTechnology.cpp
PyTransformation.cpp
PyOrientation.cpp
PyDbU.cpp
PyUpdateSession.cpp
PyDebugSession.cpp
PyVertical.cpp
PyQueryMask.cpp
PyQuery.cpp
)
set ( includes hurricane/isobar/ProxyProperty.h
hurricane/isobar/PyBreakpoint.h
hurricane/isobar/PyInterval.h
hurricane/isobar/PyBox.h
hurricane/isobar/PyCell.h
hurricane/isobar/PyCellCollection.h
hurricane/isobar/PyComponent.h
hurricane/isobar/PyComponentCollection.h
hurricane/isobar/PyContact.h
hurricane/isobar/PyDataBase.h
hurricane/isobar/PyEntity.h
hurricane/isobar/PyHorizontal.h
hurricane/isobar/PyHurricane.h
hurricane/isobar/PyHyperNet.h
hurricane/isobar/PyPlacementStatus.h
hurricane/isobar/PyInstance.h
hurricane/isobar/PyInstanceCollection.h
hurricane/isobar/PyMaterial.h
hurricane/isobar/PyLayerMask.h
hurricane/isobar/PyLayer.h
hurricane/isobar/PyBasicLayer.h
hurricane/isobar/PyRegularLayer.h
hurricane/isobar/PyContactLayer.h
hurricane/isobar/PyDiffusionLayer.h
hurricane/isobar/PyTransistorLayer.h
hurricane/isobar/PyLayerCollection.h
hurricane/isobar/PyBasicLayerCollection.h
hurricane/isobar/PyRegularLayerCollection.h
hurricane/isobar/PyViaLayerCollection.h
hurricane/isobar/PyViaLayer.h
hurricane/isobar/PyLibrary.h
hurricane/isobar/PyNet.h
hurricane/isobar/PyNetType.h
hurricane/isobar/PyNetDirection.h
hurricane/isobar/PyNetCollection.h
hurricane/isobar/PyNetExternalComponents.h
hurricane/isobar/PyOccurrence.h
hurricane/isobar/PyOccurrenceCollection.h
hurricane/isobar/PyHook.h
hurricane/isobar/PyHookCollection.h
hurricane/isobar/PyPad.h
hurricane/isobar/PyPath.h
hurricane/isobar/PyPin.h
hurricane/isobar/PyPinPlacementStatus.h
hurricane/isobar/PyPinDirection.h
hurricane/isobar/PyPinCollection.h
hurricane/isobar/PyPlug.h
hurricane/isobar/PyPlugCollection.h
hurricane/isobar/PyPoint.h
hurricane/isobar/PyReference.h
hurricane/isobar/PyReferenceCollection.h
hurricane/isobar/PyRoutingPad.h
hurricane/isobar/PySegment.h
hurricane/isobar/PySegmentCollection.h
hurricane/isobar/PyTechnology.h
hurricane/isobar/PyTransformation.h
hurricane/isobar/PyOrientation.h
hurricane/isobar/PyDbU.h
hurricane/isobar/PyUpdateSession.h
hurricane/isobar/PyDebugSession.h
hurricane/isobar/PyVertical.h
hurricane/isobar/PyQueryMask.h
hurricane/isobar/PyQuery.h
)
set( depLibs hurricane
${Boost_LIBRARIES}
${PYTHON_LIBRARIES}
)
add_library ( isobar ${sources} )
set_target_properties ( isobar PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries ( isobar hurricane ${Boost_LIBRARIES} ${PYTHON_LIBRARIES})
add_library ( Hurricane MODULE ${sources} )
set_target_properties ( Hurricane PROPERTIES
COMPILE_FLAGS "${COMPILE_FLAGS} -D__PYTHON_MODULE__=1"
PREFIX ""
)
target_link_libraries ( Hurricane isobar )
install ( TARGETS isobar DESTINATION lib${LIB_SUFFIX} )
install ( TARGETS Hurricane DESTINATION ${PYTHON_SITE_PACKAGES} )
install ( FILES ${includes} DESTINATION include/coriolis2/hurricane/isobar )
add_python_module( "${pyCpps}"
"${pyIncludes}"
"isobar;1.0;1"
Hurricane
"${depLibs}"
include/coriolis2/hurricane/isobar
)

View File

@ -11,141 +11,138 @@
${PYTHON_INCLUDE_PATH}
)
set ( mocincludes hurricane/viewer/HApplication.h
hurricane/viewer/PaletteItem.h
hurricane/viewer/PaletteNamedItem.h
hurricane/viewer/PaletteLayerItem.h
hurricane/viewer/PaletteExtensionGoItem.h
hurricane/viewer/PaletteWidget.h
hurricane/viewer/GraphicsWidget.h
hurricane/viewer/ExceptionWidget.h
hurricane/viewer/BreakpointWidget.h
hurricane/viewer/GotoWidget.h
hurricane/viewer/DynamicLabel.h
hurricane/viewer/MousePositionWidget.h
hurricane/viewer/SelectCommand.h
hurricane/viewer/CellWidget.h
hurricane/viewer/CellViewer.h
hurricane/viewer/CellPrinter.h
hurricane/viewer/CellImage.h
hurricane/viewer/RecordModel.h
hurricane/viewer/InspectorWidget.h
hurricane/viewer/SelectionPopupModel.h
hurricane/viewer/SelectionPopup.h
hurricane/viewer/SelectionModel.h
hurricane/viewer/SelectionWidget.h
hurricane/viewer/NetlistModel.h
hurricane/viewer/NetlistWidget.h
hurricane/viewer/DisplayFilterWidget.h
hurricane/viewer/ControllerWidget.h
hurricane/viewer/ScriptWidget.h
)
set ( includes hurricane/viewer/ScreenUtilities.h
hurricane/viewer/DisplayStyle.h
hurricane/viewer/ColorScale.h
hurricane/viewer/Graphics.h
hurricane/viewer/Selector.h
hurricane/viewer/Ruler.h
hurricane/viewer/Command.h
hurricane/viewer/AreaCommand.h
hurricane/viewer/MoveCommand.h
hurricane/viewer/ZoomCommand.h
hurricane/viewer/RulerCommand.h
hurricane/viewer/SelectCommand.h
hurricane/viewer/HierarchyCommand.h
hurricane/viewer/SelectorCriterion.h
hurricane/viewer/CellWidgets.h
)
set ( pyincludes hurricane/viewer/PyHSVr.h
hurricane/viewer/PyDrawingStyle.h
hurricane/viewer/PyDrawingGroup.h
hurricane/viewer/PyDisplayStyle.h
hurricane/viewer/PyHApplication.h
hurricane/viewer/PyGraphics.h
hurricane/viewer/PyCellViewer.h
)
set ( cpps HApplication.cpp
ScreenUtilities.cpp
DisplayStyle.cpp
ColorScale.cpp
Graphics.cpp
GraphicsWidget.cpp
ExceptionWidget.cpp
BreakpointWidget.cpp
GotoWidget.cpp
PaletteItem.cpp
PaletteNamedItem.cpp
PaletteLayerItem.cpp
PaletteExtensionGoItem.cpp
PaletteWidget.cpp
DynamicLabel.cpp
MousePositionWidget.cpp
Selector.cpp
Command.cpp
AreaCommand.cpp
MoveCommand.cpp
ZoomCommand.cpp
RulerCommand.cpp
SelectCommand.cpp
HierarchyCommand.cpp
SelectorCriterion.cpp
CellWidget.cpp
CellViewer.cpp
CellPrinter.cpp
CellImage.cpp
RecordModel.cpp
InspectorWidget.cpp
SelectionPopupModel.cpp
SelectionPopup.cpp
SelectionModel.cpp
SelectionWidget.cpp
Ruler.cpp
NetInformations.cpp
NetlistModel.cpp
NetlistWidget.cpp
DisplayFilterWidget.cpp
ControllerWidget.cpp
ScriptWidget.cpp
)
set ( pycpps PyHSVr.cpp
PyDrawingStyle.cpp
PyDrawingGroup.cpp
PyDisplayStyle.cpp
PyHApplication.cpp
PyGraphics.cpp
PyViewer.cpp
PyCellViewer.cpp
)
# source2 & include2 for module that are *not* Python wrappers but true
# Hurricane modules.
set ( sources2 Script.cpp )
set ( includes2 hurricane/viewer/Script.h )
set( mocIncludes hurricane/viewer/HApplication.h
hurricane/viewer/PaletteItem.h
hurricane/viewer/PaletteNamedItem.h
hurricane/viewer/PaletteLayerItem.h
hurricane/viewer/PaletteExtensionGoItem.h
hurricane/viewer/PaletteWidget.h
hurricane/viewer/GraphicsWidget.h
hurricane/viewer/ExceptionWidget.h
hurricane/viewer/BreakpointWidget.h
hurricane/viewer/GotoWidget.h
hurricane/viewer/DynamicLabel.h
hurricane/viewer/MousePositionWidget.h
hurricane/viewer/SelectCommand.h
hurricane/viewer/CellWidget.h
hurricane/viewer/CellViewer.h
hurricane/viewer/CellPrinter.h
hurricane/viewer/CellImage.h
hurricane/viewer/RecordModel.h
hurricane/viewer/InspectorWidget.h
hurricane/viewer/SelectionPopupModel.h
hurricane/viewer/SelectionPopup.h
hurricane/viewer/SelectionModel.h
hurricane/viewer/SelectionWidget.h
hurricane/viewer/NetlistModel.h
hurricane/viewer/NetlistWidget.h
hurricane/viewer/DisplayFilterWidget.h
hurricane/viewer/ControllerWidget.h
hurricane/viewer/ScriptWidget.h
)
set( includes hurricane/viewer/ScreenUtilities.h
hurricane/viewer/DisplayStyle.h
hurricane/viewer/ColorScale.h
hurricane/viewer/Graphics.h
hurricane/viewer/Selector.h
hurricane/viewer/Ruler.h
hurricane/viewer/Command.h
hurricane/viewer/AreaCommand.h
hurricane/viewer/MoveCommand.h
hurricane/viewer/ZoomCommand.h
hurricane/viewer/RulerCommand.h
hurricane/viewer/SelectCommand.h
hurricane/viewer/HierarchyCommand.h
hurricane/viewer/SelectorCriterion.h
hurricane/viewer/CellWidgets.h
)
set( pyIncludes hurricane/viewer/PyHSVr.h
hurricane/viewer/PyDrawingStyle.h
hurricane/viewer/PyDrawingGroup.h
hurricane/viewer/PyDisplayStyle.h
hurricane/viewer/PyHApplication.h
hurricane/viewer/PyGraphics.h
hurricane/viewer/PyCellViewer.h
hurricane/viewer/Script.h
)
set( cpps HApplication.cpp
ScreenUtilities.cpp
DisplayStyle.cpp
ColorScale.cpp
Graphics.cpp
GraphicsWidget.cpp
ExceptionWidget.cpp
BreakpointWidget.cpp
GotoWidget.cpp
PaletteItem.cpp
PaletteNamedItem.cpp
PaletteLayerItem.cpp
PaletteExtensionGoItem.cpp
PaletteWidget.cpp
DynamicLabel.cpp
MousePositionWidget.cpp
Selector.cpp
Command.cpp
AreaCommand.cpp
MoveCommand.cpp
ZoomCommand.cpp
RulerCommand.cpp
SelectCommand.cpp
HierarchyCommand.cpp
SelectorCriterion.cpp
CellWidget.cpp
CellViewer.cpp
CellPrinter.cpp
CellImage.cpp
RecordModel.cpp
InspectorWidget.cpp
SelectionPopupModel.cpp
SelectionPopup.cpp
SelectionModel.cpp
SelectionWidget.cpp
Ruler.cpp
NetInformations.cpp
NetlistModel.cpp
NetlistWidget.cpp
DisplayFilterWidget.cpp
ControllerWidget.cpp
ScriptWidget.cpp
)
set( pyCpps PyHSVr.cpp
PyDrawingStyle.cpp
PyDrawingGroup.cpp
PyDisplayStyle.cpp
PyHApplication.cpp
PyGraphics.cpp
PyViewer.cpp
PyCellViewer.cpp
Script.cpp
)
qtX_wrap_cpp ( MOC_SRCS ${mocincludes} )
qtX_add_resources ( RCC_SRCS CellViewer.qrc )
qtX_wrap_cpp( MOC_SRCS ${mocIncludes} )
qtX_add_resources( RCC_SRCS CellViewer.qrc )
add_library ( viewer ${cpps} ${MOC_SRCS} ${RCC_SRCS} ${sources2} ${pycpps} )
set_target_properties ( viewer PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries ( viewer hurricane
isobar
${UTILITIES_LIBRARY}
${CONFIGURATION_LIBRARY}
${LIBXML2_LIBRARIES}
${Boost_LIBRARIES}
${QtX_LIBRARIES}
)
add_library ( pyViewer MODULE ${pycpps} )
target_link_libraries ( pyViewer viewer )
set_target_properties ( pyViewer PROPERTIES
COMPILE_FLAGS "${COMPILE_FLAGS} -D__PYTHON_MODULE__=1"
OUTPUT_NAME "Viewer"
PREFIX ""
)
set( depLibs hurricane
isobar
${UTILITIES_LIBRARY}
${CONFIGURATION_LIBRARY}
${LIBXML2_LIBRARIES}
${Boost_LIBRARIES}
${QtX_LIBRARIES}
)
add_library( viewer ${cpps} ${MOC_SRCS} ${RCC_SRCS} ${pyCpps} )
set_target_properties( viewer PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries( viewer ${depLibs} )
install ( FILES ${includes}
${includes2}
${mocincludes}
${pyincludes} DESTINATION include/coriolis2/hurricane/viewer )
install ( TARGETS viewer DESTINATION lib${LIB_SUFFIX} )
install ( TARGETS pyViewer DESTINATION ${PYTHON_SITE_PACKAGES} )
add_python_module( "${pyCpps}"
"${pyIncludes}"
"Do_not_generate_C_library"
Viewer
"viewer;${depLibs}"
include/coriolis2/hurricane/viewer
)
install( FILES ${includes}
${mocIncludes} DESTINATION include/coriolis2/hurricane/viewer )
install( TARGETS viewer DESTINATION lib${LIB_SUFFIX} )

View File

@ -14,6 +14,8 @@
// +-----------------------------------------------------------------+
#if !defined(__PYTHON_MODULE__)
#include <Python.h>
#include <sstream>
#include "hurricane/Error.h"
@ -303,3 +305,5 @@ namespace Isobar {
} // End of Isobar namespace.
#endif

View File

@ -14,8 +14,10 @@
// +-----------------------------------------------------------------+
# ifndef ISOBAR_SCRIPT_H
# define ISOBAR_SCRIPT_H
#if !defined(__PYTHON_MODULE__)
#ifndef ISOBAR_SCRIPT_H
#define ISOBAR_SCRIPT_H
#include <vector>
@ -97,7 +99,8 @@ namespace Isobar {
{ return _userModule = _importModule(_moduleName,flags); }
} // End of Isobar namespace.
} // Isobar namespace.
#endif // ISOBAR_SCRIPT_H
# endif // ISOBAR_SCRIPT_H
#endif

View File

@ -4,93 +4,90 @@ if ( CHECK_DETERMINISM )
add_definitions ( -DCHECK_DETERMINISM )
endif ( CHECK_DETERMINISM )
# include ( ${QT_USE_FILE} )
# include( ${QT_USE_FILE} )
include_directories( ${KATABATIC_SOURCE_DIR}/src
${CORIOLIS_INCLUDE_DIR}
${HURRICANE_INCLUDE_DIR}
${CONFIGURATION_INCLUDE_DIR}
${Boost_INCLUDE_DIRS}
${QtX_INCLUDE_DIR}
${PYTHON_INCLUDE_PATH}
)
set( includes katabatic/Constants.h
katabatic/Observer.h
katabatic/Configuration.h
katabatic/ChipTools.h
katabatic/AutoContact.h
katabatic/AutoContactTerminal.h
katabatic/AutoContactTurn.h
katabatic/AutoContactHTee.h
katabatic/AutoContactVTee.h
katabatic/AutoSegment.h katabatic/AutoSegments.h
katabatic/AutoHorizontal.h
katabatic/AutoVertical.h
katabatic/Grid.h katabatic/GridCollections.h
katabatic/GridBox.h
katabatic/GCell.h katabatic/GCells.h
katabatic/GCellGrid.h
katabatic/Session.h
katabatic/KatabaticEngine.h
)
set( mocIncludes katabatic/GraphicKatabaticEngine.h )
set( cpps Configuration.cpp
Observer.cpp
ChipTools.cpp
AutoContact.cpp
AutoContactTerminal.cpp
AutoContactTurn.cpp
AutoContactHTee.cpp
AutoContactVTee.cpp
AutoSegment.cpp
AutoSegments.cpp
AutoHorizontal.cpp
AutoVertical.cpp
Grid.cpp
GCell.cpp
GCellGrid.cpp
PowerRails.cpp
Session.cpp
LayerAssign.cpp
LoadGrByNet.cpp
NetConstraints.cpp
NetOptimals.cpp
KatabaticEngine.cpp
)
set( pyCpps PyKatabatic.cpp )
qtX_wrap_cpp( mocCpps ${mocIncludes} )
include_directories ( ${KATABATIC_SOURCE_DIR}/src
${CORIOLIS_INCLUDE_DIR}
${HURRICANE_INCLUDE_DIR}
${CONFIGURATION_INCLUDE_DIR}
${Boost_INCLUDE_DIRS}
${QtX_INCLUDE_DIR}
${PYTHON_INCLUDE_PATH}
)
set ( includes katabatic/Constants.h
katabatic/Observer.h
katabatic/Configuration.h
katabatic/ChipTools.h
katabatic/AutoContact.h
katabatic/AutoContactTerminal.h
katabatic/AutoContactTurn.h
katabatic/AutoContactHTee.h
katabatic/AutoContactVTee.h
katabatic/AutoSegment.h katabatic/AutoSegments.h
katabatic/AutoHorizontal.h
katabatic/AutoVertical.h
katabatic/Grid.h katabatic/GridCollections.h
katabatic/GridBox.h
katabatic/GCell.h katabatic/GCells.h
katabatic/GCellGrid.h
katabatic/Session.h
katabatic/KatabaticEngine.h
#katabatic/GraphicKatabaticEngine.h
)
set ( mocIncludes katabatic/GraphicKatabaticEngine.h )
set ( cpps Configuration.cpp
Observer.cpp
ChipTools.cpp
AutoContact.cpp
AutoContactTerminal.cpp
AutoContactTurn.cpp
AutoContactHTee.cpp
AutoContactVTee.cpp
AutoSegment.cpp
AutoSegments.cpp
AutoHorizontal.cpp
AutoVertical.cpp
Grid.cpp
GCell.cpp
GCellGrid.cpp
PowerRails.cpp
Session.cpp
LayerAssign.cpp
LoadGrByNet.cpp
NetConstraints.cpp
NetOptimals.cpp
KatabaticEngine.cpp
#GraphicKatabaticEngine.cpp
)
set ( pyCpps PyKatabatic.cpp )
qtX_wrap_cpp ( mocCpps ${mocIncludes} )
set( depLibs ${KNIK_LIBRARIES}
${CORIOLIS_LIBRARIES}
${HURRICANE_PYTHON_LIBRARIES}
${HURRICANE_GRAPHICAL_LIBRARIES}
${HURRICANE_LIBRARIES}
${CONFIGURATION_LIBRARY}
${CIF_LIBRARY}
${AGDS_LIBRARY}
${LEFDEF_LIBRARIES}
${OA_LIBRARIES}
${QtX_LIBRARIES}
${Boost_LIBRARIES}
${LIBXML2_LIBRARIES}
${PYTHON_LIBRARIES} -lutil
)
add_library( katabatic ${cpps} )
set_target_properties( katabatic PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries( katabatic ${depLibs} )
add_library ( katabatic ${cpps} )
set_target_properties ( katabatic PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries ( katabatic ${KNIK_LIBRARIES}
${CORIOLIS_LIBRARIES}
${HURRICANE_PYTHON_LIBRARIES}
${HURRICANE_GRAPHICAL_LIBRARIES}
${HURRICANE_LIBRARIES}
${CONFIGURATION_LIBRARY}
${CIF_LIBRARY}
${AGDS_LIBRARY}
${LEFDEF_LIBRARIES}
${OA_LIBRARIES}
${QtX_LIBRARIES}
${Boost_LIBRARIES}
${LIBXML2_LIBRARIES}
${PYTHON_LIBRARIES} -lutil
)
add_library ( pyKatabatic MODULE ${pyCpps} )
set_target_properties ( pyKatabatic PROPERTIES COMPILE_FLAGS "${COMPILE_FLAGS} -D__PYTHON_MODULE__=1"
PREFIX ""
OUTPUT_NAME "Katabatic"
)
target_link_libraries ( pyKatabatic katabatic
${CORIOLIS_PYTHON_LIBRARIES}
)
add_python_module( "${pyCpps}"
"${pyIncludes}"
"Do_not_generate_C_library"
Katabatic
"katabatic;${depLibs}"
include/coriolis2/katabatic
)
install ( TARGETS katabatic DESTINATION lib${LIB_SUFFIX} )
install ( TARGETS pyKatabatic DESTINATION ${PYTHON_SITE_PACKAGES} )
install ( FILES ${includes}
${mocIncludes} DESTINATION include/coriolis2/katabatic )
install( TARGETS katabatic DESTINATION lib${LIB_SUFFIX} )
install( FILES ${includes}
${mocIncludes} DESTINATION include/coriolis2/katabatic )

View File

@ -1,119 +1,117 @@
# -*- explicit-buffer-name: "CMakeLists.txt<kite/src>" -*-
# include ( ${QT_USE_FILE} )
# include( ${QT_USE_FILE} )
include_directories( ${KITE_SOURCE_DIR}/src
${CORIOLIS_INCLUDE_DIR}
${HURRICANE_INCLUDE_DIR}
${CONFIGURATION_INCLUDE_DIR}
${WtX_INCLUDE_DIR}
${Boost_INCLUDE_DIRS}
${PYTHON_INCLUDE_PATH}
)
set( includes kite/Constants.h
kite/TrackCost.h
kite/DataNegociate.h
kite/TrackElement.h kite/TrackElements.h
kite/TrackSegment.h
kite/TrackFixedSegment.h
kite/TrackMarker.h
kite/Track.h
kite/Tracks.h
kite/HorizontalTrack.h
kite/VerticalTrack.h
kite/RoutingPlane.h
kite/Session.h
kite/Manipulator.h
kite/SegmentFsm.h
kite/RoutingEvent.h
kite/RoutingEventQueue.h
kite/RoutingEventHistory.h
kite/RoutingEventLoop.h
kite/NegociateWindow.h
kite/Configuration.h
kite/KiteEngine.h
kite/GraphicKiteEngine.h
)
set( pyIncludes kite/PyKiteEngine.h
kite/PyGraphicKiteEngine.h
)
set( mocIncludes kite/GraphicKiteEngine.h )
set( cpps TrackCost.cpp
DataNegociate.cpp
TrackElement.cpp
TrackElements.cpp
TrackSegment.cpp
TrackFixedSegment.cpp
TrackMarker.cpp
Track.cpp
Tracks.cpp
HorizontalTrack.cpp
VerticalTrack.cpp
RoutingPlane.cpp
Session.cpp
Manipulator.cpp
SegmentFsm.cpp
RoutingEvent.cpp
RoutingEventQueue.cpp
RoutingEventHistory.cpp
RoutingEventLoop.cpp
NegociateWindow.cpp
BuildPowerRails.cpp
BuildPreRouteds.cpp
ProtectRoutingPads.cpp
PreProcess.cpp
Configuration.cpp
KiteEngine.cpp
GraphicKiteEngine.cpp
)
set( pyCpps PyKite.cpp
PyKiteEngine.cpp
PyGraphicKiteEngine.cpp
)
set( kiteCpps KiteMain.cpp )
qtX_wrap_cpp( mocCpps ${mocIncludes} )
include_directories ( ${KITE_SOURCE_DIR}/src
${CORIOLIS_INCLUDE_DIR}
${HURRICANE_INCLUDE_DIR}
${CONFIGURATION_INCLUDE_DIR}
${WtX_INCLUDE_DIR}
${Boost_INCLUDE_DIRS}
${PYTHON_INCLUDE_PATH}
)
set ( includes kite/Constants.h
kite/TrackCost.h
kite/DataNegociate.h
kite/TrackElement.h kite/TrackElements.h
kite/TrackSegment.h
kite/TrackFixedSegment.h
kite/TrackMarker.h
kite/Track.h
kite/Tracks.h
kite/HorizontalTrack.h
kite/VerticalTrack.h
kite/RoutingPlane.h
kite/Session.h
kite/Manipulator.h
kite/SegmentFsm.h
kite/RoutingEvent.h
kite/RoutingEventQueue.h
kite/RoutingEventHistory.h
kite/RoutingEventLoop.h
kite/NegociateWindow.h
kite/Configuration.h
kite/KiteEngine.h
kite/GraphicKiteEngine.h
)
set ( pyIncludes kite/PyKiteEngine.h
kite/PyGraphicKiteEngine.h
)
set ( mocIncludes kite/GraphicKiteEngine.h )
set ( cpps TrackCost.cpp
DataNegociate.cpp
TrackElement.cpp
TrackElements.cpp
TrackSegment.cpp
TrackFixedSegment.cpp
TrackMarker.cpp
Track.cpp
Tracks.cpp
HorizontalTrack.cpp
VerticalTrack.cpp
RoutingPlane.cpp
Session.cpp
Manipulator.cpp
SegmentFsm.cpp
RoutingEvent.cpp
RoutingEventQueue.cpp
RoutingEventHistory.cpp
RoutingEventLoop.cpp
NegociateWindow.cpp
BuildPowerRails.cpp
BuildPreRouteds.cpp
ProtectRoutingPads.cpp
PreProcess.cpp
Configuration.cpp
KiteEngine.cpp
GraphicKiteEngine.cpp
)
set ( pyCpps PyKite.cpp
PyKiteEngine.cpp
PyGraphicKiteEngine.cpp
)
set ( kitecpps KiteMain.cpp )
qtX_wrap_cpp ( mocCpps ${mocIncludes} )
set( depLibs ${KATABATIC_LIBRARIES}
${KNIK_LIBRARIES}
${NIMBUS_LIBRARIES}
${CORIOLIS_PYTHON_LIBRARIES}
${CORIOLIS_LIBRARIES}
${HURRICANE_PYTHON_LIBRARIES}
${HURRICANE_GRAPHICAL_LIBRARIES}
${HURRICANE_LIBRARIES}
${CONFIGURATION_LIBRARY}
${BOOKSHELF_LIBRARY}
${CIF_LIBRARY}
${AGDS_LIBRARY}
${UTILITIES_LIBRARY}
${LEFDEF_LIBRARIES}
${OA_LIBRARIES}
${QtX_LIBRARIES}
${Boost_LIBRARIES}
${LIBXML2_LIBRARIES}
${PYTHON_LIBRARIES} -lutil
${LIBEXECINFO_LIBRARIES}
)
add_library( kite ${cpps} ${mocCpps} ${pyCpps} )
set_target_properties( kite PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries( kite ${depLibs} )
add_library ( kite ${cpps} ${mocCpps} ${pyCpps} )
set_target_properties ( kite PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries ( kite ${KATABATIC_LIBRARIES}
${KNIK_LIBRARIES}
${NIMBUS_LIBRARIES}
${CORIOLIS_LIBRARIES}
${HURRICANE_PYTHON_LIBRARIES}
${HURRICANE_GRAPHICAL_LIBRARIES}
${HURRICANE_LIBRARIES}
${CONFIGURATION_LIBRARY}
${BOOKSHELF_LIBRARY}
${CIF_LIBRARY}
${AGDS_LIBRARY}
${UTILITIES_LIBRARY}
${LEFDEF_LIBRARIES}
${OA_LIBRARIES}
${QtX_LIBRARIES}
${Boost_LIBRARIES}
${LIBXML2_LIBRARIES}
${PYTHON_LIBRARIES} -lutil
${LIBEXECINFO_LIBRARIES}
)
add_python_module( "${pyCpps}"
"${pyIncludes}"
"Do_not_generate_C_library"
Kite
"kite;${depLibs}"
include/coriolis2/kite
)
add_library ( pyKite MODULE ${pyCpps} )
set_target_properties ( pyKite PROPERTIES COMPILE_FLAGS "${COMPILE_FLAGS} -D__PYTHON_MODULE__=1"
PREFIX ""
OUTPUT_NAME "Kite"
)
# add_executable( kite.bin ${kiteCpps} )
#target_link_libraries( kite.bin kite ${depLibs} )
# add_executable ( kite.bin ${kitecpps} )
#target_link_libraries ( kite.bin kite )
target_link_libraries ( pyKite kite
${CORIOLIS_PYTHON_LIBRARIES}
)
install ( TARGETS kite DESTINATION lib${LIB_SUFFIX} )
# install ( TARGETS kite.bin DESTINATION bin )
install ( TARGETS pyKite DESTINATION ${PYTHON_SITE_PACKAGES} )
install ( FILES ${includes}
${mocIncludes}
${pyIncludes} DESTINATION include/coriolis2/kite )
install( TARGETS kite DESTINATION lib${LIB_SUFFIX} )
# install( TARGETS kite.bin DESTINATION bin )
install( FILES ${includes}
${mocIncludes} DESTINATION include/coriolis2/kite )

View File

@ -1,6 +1,6 @@
# -*- explicit-buffer-name: "CMakeLists.txt<knik/src>" -*-
# include ( ${QT_USE_FILE} )
include_directories ( ${KNIK_SOURCE_DIR}/src
${KNIK_SOURCE_DIR}/src/flute-2.4/src
${HURRICANE_INCLUDE_DIR}

View File

@ -35,6 +35,7 @@
#find_package(SOLSTICE REQUIRED)
add_subdirectory(src)
add_subdirectory(python)
add_subdirectory(cmake_modules)
if(BUILD_DOC)

View File

@ -18,7 +18,7 @@ IF(UNIX)
FIND_PATH(UNICORN_INCLUDE_PATH NAMES unicorn/UnicornGui.h PATHS
# Look in other places.
${CORIOLIS_DIR_SEARCH}
PATH_SUFFIXES include/coriolis
PATH_SUFFIXES include/coriolis2 include
# Help the user find it if we cannot.
DOC "The ${UNICORN_INCLUDE_PATH_DESCRIPTION}"
)

View File

@ -0,0 +1,4 @@
# -*- explicit-buffer-name: "CMakeLists.txt<unicorn/python>" -*-
install( FILES unicornInit.py DESTINATION ${PYTHON_SITE_PACKAGES}/unicorn )

View File

@ -1,98 +1,98 @@
# -*- explicit-buffer-name: "CMakeLists.txt<unicorn/src>" -*-
# include ( ${QT_USE_FILE} )
include_directories ( ${UNICORN_SOURCE_DIR}/src
${HURRICANE_INCLUDE_DIR}
${CORIOLIS_INCLUDE_DIR}
${BOOKSHELF_INCLUDE_DIR}
${CONFIGURATION_INCLUDE_DIR}
${QtX_INCLUDE_DIR}
${Boost_INCLUDE_DIRS}
${LEFDEF_INCLUDE_DIR}
${PYTHON_INCLUDE_PATH}
)
add_definitions ( -DSYS_CONF_DIR="${SYS_CONF_DIR}" )
# include( ${QT_USE_FILE} )
include_directories( ${UNICORN_SOURCE_DIR}/src
${HURRICANE_INCLUDE_DIR}
${CORIOLIS_INCLUDE_DIR}
${BOOKSHELF_INCLUDE_DIR}
${CONFIGURATION_INCLUDE_DIR}
${QtX_INCLUDE_DIR}
${Boost_INCLUDE_DIRS}
${LEFDEF_INCLUDE_DIR}
${PYTHON_INCLUDE_PATH}
)
add_definitions( -DSYS_CONF_DIR="${SYS_CONF_DIR}" )
set ( includes unicorn/ImportCell.h )
set ( mocincludes unicorn/UnicornGui.h
unicorn/OpenCellDialog.h
unicorn/SaveCellDialog.h
unicorn/ImportCellDialog.h
unicorn/ExportCellDialog.h
)
set ( pyIncludes unicorn/PyUnicornGui.h
)
set ( cpps ImportCell.cpp
OpenCellDialog.cpp
SaveCellDialog.cpp
ImportCellDialog.cpp
ExportCellDialog.cpp
UnicornGui.cpp
)
set ( pyCpps PyUnicorn.cpp
PyUnicornGui.cpp
)
set ( cgtcpp CgtMain.cpp )
set( includes unicorn/ImportCell.h )
set( mocincludes unicorn/UnicornGui.h
unicorn/OpenCellDialog.h
unicorn/SaveCellDialog.h
unicorn/ImportCellDialog.h
unicorn/ExportCellDialog.h
)
set( pyIncludes unicorn/PyUnicornGui.h
)
set( cpps ImportCell.cpp
OpenCellDialog.cpp
SaveCellDialog.cpp
ImportCellDialog.cpp
ExportCellDialog.cpp
UnicornGui.cpp
)
set( pyCpps PyUnicorn.cpp
PyUnicornGui.cpp
)
set( cgtcpp CgtMain.cpp )
qtX_wrap_cpp ( mocCpps ${mocincludes} )
qtX_add_resources ( RCC_SRCS Unicorn.qrc )
qtX_wrap_cpp( mocCpps ${mocincludes} )
qtX_add_resources( RCC_SRCS Unicorn.qrc )
add_library ( unicorn ${cpps} ${mocCpps} ${pyCpps} )
set_target_properties ( unicorn PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries ( unicorn ${SOLSTICE_GRAPHICAL_LIBRARIES}
${SOLSTICE_LIBRARIES}
${EQUINOX_GRAPHICAL_LIBRARIES}
${EQUINOX_LIBRARIES}
${KITE_GRAPHICAL_LIBRARIES}
${KITE_LIBRARIES}
${KATABATIC_GRAPHICAL_LIBRARIES}
${KATABATIC_LIBRARIES}
${KNIK_GRAPHICAL_LIBRARIES}
${KNIK_LIBRARIES}
${ETESIAN_GRAPHICAL_LIBRARIES}
${ETESIAN_LIBRARIES}
${MAUKA_GRAPHICAL_LIBRARIES}
${MAUKA_LIBRARIES}
${METIS_LIBRARIES}
${HMETIS_LIBRARIES}
${NIMBUS_GRAPHICAL_LIBRARIES}
${NIMBUS_LIBRARIES}
${CORIOLIS_PYTHON_LIBRARIES}
${CORIOLIS_LIBRARIES}
${HURRICANE_PYTHON_LIBRARIES}
${HURRICANE_GRAPHICAL_LIBRARIES}
${HURRICANE_LIBRARIES}
${BOOKSHELF_LIBRARY}
${AGDS_LIBRARY}
${CIF_LIBRARY}
${UTILITIES_LIBRARY}
${CONFIGURATION_LIBRARY}
${COLOQUINTE_LIBRARY}
${LEFDEF_LIBRARIES}
${OA_LIBRARIES}
${QtX_LIBRARIES}
${Boost_LIBRARIES}
${PYTHON_LIBRARIES}
-lutil
${LIBXML2_LIBRARIES}
)
add_library ( pyUnicorn MODULE ${pyCpps} )
target_link_libraries ( pyUnicorn unicorn )
set_target_properties ( pyUnicorn PROPERTIES COMPILE_FLAGS "${COMPILE_FLAGS} -D__PYTHON_MODULE__=1"
PREFIX ""
OUTPUT_NAME "Unicorn"
)
set( depLibs ${SOLSTICE_GRAPHICAL_LIBRARIES}
${SOLSTICE_LIBRARIES}
${EQUINOX_GRAPHICAL_LIBRARIES}
${EQUINOX_LIBRARIES}
${KITE_GRAPHICAL_LIBRARIES}
${KITE_LIBRARIES}
${KATABATIC_GRAPHICAL_LIBRARIES}
${KATABATIC_LIBRARIES}
${KNIK_GRAPHICAL_LIBRARIES}
${KNIK_LIBRARIES}
${ETESIAN_GRAPHICAL_LIBRARIES}
${ETESIAN_LIBRARIES}
${MAUKA_GRAPHICAL_LIBRARIES}
${MAUKA_LIBRARIES}
${METIS_LIBRARIES}
${HMETIS_LIBRARIES}
${NIMBUS_GRAPHICAL_LIBRARIES}
${NIMBUS_LIBRARIES}
${CORIOLIS_PYTHON_LIBRARIES}
${CORIOLIS_LIBRARIES}
${HURRICANE_PYTHON_LIBRARIES}
${HURRICANE_GRAPHICAL_LIBRARIES}
${HURRICANE_LIBRARIES}
${BOOKSHELF_LIBRARY}
${AGDS_LIBRARY}
${CIF_LIBRARY}
${UTILITIES_LIBRARY}
${CONFIGURATION_LIBRARY}
${COLOQUINTE_LIBRARY}
${LEFDEF_LIBRARIES}
${OA_LIBRARIES}
${QtX_LIBRARIES}
${Boost_LIBRARIES}
${PYTHON_LIBRARIES}
-lutil
${LIBXML2_LIBRARIES}
)
add_executable ( cgt.bin ${cgtcpp} )
target_link_libraries ( cgt.bin unicorn )
add_library( unicorn ${cpps} ${mocCpps} ${pyCpps} )
set_target_properties( unicorn PROPERTIES VERSION 1.0 SOVERSION 1 )
target_link_libraries( unicorn ${depLibs} )
install ( TARGETS unicorn DESTINATION lib${LIB_SUFFIX} )
install ( TARGETS pyUnicorn DESTINATION ${PYTHON_SITE_PACKAGES} )
install ( TARGETS cgt.bin DESTINATION bin )
install ( PROGRAMS cgt.py DESTINATION bin RENAME cgt )
install ( FILES ${includes}
${mocincludes}
${pyIncludes} DESTINATION include/coriolis2/unicorn )
install ( FILES init/unicornInit.py
DESTINATION ${PYTHON_SITE_PACKAGES}/unicorn )
add_python_module( "${pyCpps}"
"${pyIncludes}"
"Do_not_generate_C_library"
Unicorn
"unicorn;${depLibs}"
include/coriolis2/unicorn
)
add_executable( cgt.bin ${cgtcpp} )
target_link_libraries( cgt.bin unicorn ${depLibs} )
install( TARGETS unicorn DESTINATION lib${LIB_SUFFIX} )
install( TARGETS cgt.bin DESTINATION bin )
install( PROGRAMS cgt.py DESTINATION bin RENAME cgt )
install( FILES ${includes}
${mocincludes} DESTINATION include/coriolis2/unicorn )