* All Tools:
- A complete sweep of cleanup to suppress allmost all compiler warnings. * ./nimbus: - New: Added Python support, for configuration & Unicorn.
This commit is contained in:
parent
da88363881
commit
596e5512a6
|
@ -13,6 +13,8 @@
|
||||||
setup_boost(program_options filesystem python regex)
|
setup_boost(program_options filesystem python regex)
|
||||||
|
|
||||||
find_package(Qt4 REQUIRED)
|
find_package(Qt4 REQUIRED)
|
||||||
|
find_package(PythonLibs REQUIRED)
|
||||||
|
find_package(PythonSitePackages REQUIRED)
|
||||||
find_package(VLSISAPD REQUIRED)
|
find_package(VLSISAPD REQUIRED)
|
||||||
find_package(HURRICANE REQUIRED)
|
find_package(HURRICANE REQUIRED)
|
||||||
find_package(CORIOLIS REQUIRED)
|
find_package(CORIOLIS REQUIRED)
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
${CORIOLIS_INCLUDE_DIR}
|
${CORIOLIS_INCLUDE_DIR}
|
||||||
${CONFIGURATION_INCLUDE_DIR}
|
${CONFIGURATION_INCLUDE_DIR}
|
||||||
${Boost_INCLUDE_DIRS}
|
${Boost_INCLUDE_DIRS}
|
||||||
|
${PYTHON_INCLUDE_PATH}
|
||||||
)
|
)
|
||||||
set ( includes nimbus/Configuration.h
|
set ( includes nimbus/Configuration.h
|
||||||
nimbus/SplitterContact.h nimbus/SplitterContacts.h
|
nimbus/SplitterContact.h nimbus/SplitterContacts.h
|
||||||
|
@ -21,6 +22,8 @@
|
||||||
nimbus/NimbusEngine.h
|
nimbus/NimbusEngine.h
|
||||||
nimbus/RoutTools.h
|
nimbus/RoutTools.h
|
||||||
)
|
)
|
||||||
|
set ( pyIncludes nimbus/PyNimbusEngine.h
|
||||||
|
)
|
||||||
set ( cpps Configuration.cpp
|
set ( cpps Configuration.cpp
|
||||||
SplitterContact.cpp
|
SplitterContact.cpp
|
||||||
Splitter.cpp
|
Splitter.cpp
|
||||||
|
@ -35,9 +38,12 @@
|
||||||
NimbusEngine.cpp
|
NimbusEngine.cpp
|
||||||
RoutTools.cpp
|
RoutTools.cpp
|
||||||
)
|
)
|
||||||
|
set ( pyCpps PyNimbus.cpp
|
||||||
|
PyNimbusEngine.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
add_library ( nimbus ${cpps} )
|
add_library ( nimbus ${cpps} ${pyCpps} )
|
||||||
set_target_properties ( nimbus PROPERTIES VERSION 1.0 SOVERSION 1 )
|
set_target_properties ( nimbus PROPERTIES VERSION 1.0 SOVERSION 1 )
|
||||||
target_link_libraries ( nimbus ${CORIOLIS_LIBRARIES}
|
target_link_libraries ( nimbus ${CORIOLIS_LIBRARIES}
|
||||||
${HURRICANE_PYTHON_LIBRARIES}
|
${HURRICANE_PYTHON_LIBRARIES}
|
||||||
|
@ -53,6 +59,18 @@
|
||||||
${LIBXML2_LIBRARIES}
|
${LIBXML2_LIBRARIES}
|
||||||
${PYTHON_LIBRARIES} -lutil
|
${PYTHON_LIBRARIES} -lutil
|
||||||
)
|
)
|
||||||
install ( TARGETS nimbus DESTINATION lib${LIB_SUFFIX} )
|
|
||||||
install ( FILES ${includes} DESTINATION include/coriolis2/nimbus )
|
add_library ( pyNimbus MODULE ${pyCpps} )
|
||||||
|
set_target_properties ( pyNimbus PROPERTIES COMPILE_FLAGS "${COMPILE_FLAGS} -D__PYTHON_MODULE__=1"
|
||||||
|
PREFIX ""
|
||||||
|
OUTPUT_NAME "Nimbus"
|
||||||
|
)
|
||||||
|
target_link_libraries ( pyNimbus nimbus
|
||||||
|
${CORIOLIS_PYTHON_LIBRARIES}
|
||||||
|
)
|
||||||
|
|
||||||
|
install ( TARGETS nimbus DESTINATION lib${LIB_SUFFIX} )
|
||||||
|
install ( TARGETS pyNimbus DESTINATION ${PYTHON_SITE_PACKAGES} )
|
||||||
|
install ( FILES ${includes}
|
||||||
|
${pyIncludes} DESTINATION include/coriolis2/nimbus )
|
||||||
|
|
||||||
|
|
|
@ -57,10 +57,11 @@ class NimbusEngine : public ToolEngine {
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
// ************
|
// ************
|
||||||
private: NimbusEngine (Cell* cell, const Box& workzone);
|
private:
|
||||||
|
NimbusEngine (Cell* cell, const Box& workzone);
|
||||||
public: static void _preCreate(Cell*);
|
public:
|
||||||
public: static NimbusEngine* create (Cell* cell, const Box& workZone=Box());
|
static NimbusEngine* create (Cell* cell, const Box& workZone=Box());
|
||||||
|
static void _preCreate (Cell*);
|
||||||
|
|
||||||
// Accessors
|
// Accessors
|
||||||
// *********
|
// *********
|
||||||
|
@ -69,6 +70,7 @@ class NimbusEngine : public ToolEngine {
|
||||||
static const Name& staticGetName ();
|
static const Name& staticGetName ();
|
||||||
static NimbusEngine* get ( Cell* );
|
static NimbusEngine* get ( Cell* );
|
||||||
inline Configuration* getConfiguration ();
|
inline Configuration* getConfiguration ();
|
||||||
|
inline void printConfiguration () const;
|
||||||
inline bool doPinsPlacement () const;
|
inline bool doPinsPlacement () const;
|
||||||
inline double getAspectRatio () const;
|
inline double getAspectRatio () const;
|
||||||
inline double getMargin () const;
|
inline double getMargin () const;
|
||||||
|
@ -165,6 +167,7 @@ class NimbusEngine : public ToolEngine {
|
||||||
|
|
||||||
|
|
||||||
inline Configuration* NimbusEngine::getConfiguration () { return _configuration; }
|
inline Configuration* NimbusEngine::getConfiguration () { return _configuration; }
|
||||||
|
inline void NimbusEngine::printConfiguration () const { _configuration->print(getCell()); }
|
||||||
inline bool NimbusEngine::doPinsPlacement () const { return _configuration->doPinsPlacement(); }
|
inline bool NimbusEngine::doPinsPlacement () const { return _configuration->doPinsPlacement(); }
|
||||||
inline double NimbusEngine::getAspectRatio () const { return _configuration->getAspectRatio(); }
|
inline double NimbusEngine::getAspectRatio () const { return _configuration->getAspectRatio(); }
|
||||||
inline double NimbusEngine::getMargin () const { return _configuration->getMargin(); }
|
inline double NimbusEngine::getMargin () const { return _configuration->getMargin(); }
|
||||||
|
|
Loading…
Reference in New Issue