Commit Graph

342 Commits

Author SHA1 Message Date
Gabriel Gouvine ef671cb944 Initial draft for routing-driven placement
* Uses density restrictions rather than cell inflation
* Will fail brutally if the congestion is too high; does not attempt to balance the densities
2015-04-20 14:14:41 +02:00
Jean-Paul Chaput db60fe0aa6 New coriolis launcher. Configuration files cleanup.
* Change: In CRL Core, simplify the loading sequence. The technology,
    both symbolic and real is now loaded directly from coriolisInit.py
    and not through the Alliance loader. This was a leftover from the
    time configuration was in XML. Remove others traces of XML loading.
      Remove SYMB_TECHNO_NAME, REAL_TECHNO_NAME & DISPLAY from the Alliance
    environement, as they was no longer used.
      Note that technology *still* need to be loader *after* Alliance
    framework has been initialized.
      Gauge information is moved from <alliance.conf> to <kite.conf>.
* Bug: In Coloquinte, in optimization_subproblems.cxx static variables
    must not be inlined. Generate a problem when linking in debug mode
    (seems the symbol gets optimised out).
* Bug: In Katabatic, in Grid::getGCell(), when the coordinate is *outside*
    the area, do not try to find a GCell, directly return NULL.
* New: In Unicorn, create a generic command launcher named "coriolis" which
    automatically take cares of all environement setup, then run a command
    by default, it's <cgt>, but it can be anything. For example: <zsh>.
2015-04-13 18:54:09 +02:00
Jean-Paul Chaput bacea5214c Adapt the rpm automated build system of bootstrap (pass 2)
* Change: coriolis2.spec.in, Makefile.package and Builder/ccb now support
    RHEL6, RHEL7 & Fedora.
* Change: In Bootstrap, added a flag to activate compilation with
    openmp.
2015-04-09 22:45:48 +02:00
Jean-Paul Chaput cdfdccb19d Import Coloquinte as a Coriolis tool (merge from github/coloquinte). 2015-04-08 17:13:50 +02:00
Jean-Paul Chaput 1625b16d4c Adapt the rpm automated build system of bootstrap (pass 2) 2015-04-08 17:13:24 +02:00
Gabriel Gouvine a0f01a5e00 Fixes from Naohiko Shimizu for compiling under Cygwin 2015-04-08 11:00:19 +02:00
Jean-Paul Chaput 9e672ffaa8 Adapt the rpm automated build system of bootstrap (pass 1) 2015-04-08 00:13:27 +02:00
Jean-Paul Chaput 71e1c188ea Remove obsolete XML config files. Add stub technos cmos065 & c35b4.
* New: In CRL Core, remove obsoleted XML files, no longer needed by
    Chams. Add stub for technologies CMOS065 (ST) and C35B4, aka
    AMS 035.
* Bug: In Knik, update the path where to find the FLUTE lookup tables.
    (from 2.4 to 3.1).
2015-04-06 12:49:27 +02:00
Gabriel Gouvine 3351574077 Fixed typo 2015-04-03 11:29:55 +02:00
Jean-Paul Chaput 1e73466199 Added new CMake macro add_python_module() and some cleanup. 2015-03-22 19:12:45 +01:00
Jean-Paul Chaput 393b5a735f Remove simulated annealing placer Nimbus/Metis/Mauka. 2015-03-17 22:50:00 +01:00
Jean-Paul Chaput 5dc60415e7 Happy new year 2015! 2015-03-17 16:56:55 +01:00
Jean-Paul Chaput 225f9093b5 Support Fedora OS in Builder as well as in coriolisEnv. 2015-02-28 10:30:28 +01:00
Jean-Paul Chaput 8566126acc Adding Configuration support to Etesian.
* Change: In Bootstrap & ccb, the coloquinte project is renamed into
    "importeds", it will be the home of all the externally
    devellopped softwares that are needed to build Coriolis.
      Add explicit support for Fedora ("Linux.fc") and uses
    site-packages, as everybody else.
* New: In CRL Core, in etc/, adds the configuration files for Etesian.
* New: In Etesian, activate the Configuration object. Now uses it's
    own configuration variables instead of borrowing those of
    Nimbus & Mauka.
* Change: In Documentation, updated User's Guide to present Etesian
    as the placer, instead of Mauka.
* Change: In Cumulus, slight change in ClokTreePlugin and ChipPlugin
    to match the new Etesian/Python interface.
2015-02-27 18:16:03 +01:00
Jean-Paul Chaput bd3984a313 Correctly manage clock net isolateds from the main clock.
* New: In Bootstrap, in ccb.py, check if cmake is installed and issue
    a warning, if not.
* New: In Hurricane, added Cell::getDeepNet() to search for a deepnet
    given a path and a leaf net. This method is slow and must not be
    used too often. Introduced for Kite::BuildPowerRails().
* Change: In CRL Core, in cmos/alliance.conf, modify the clock name
    pattern to match the sub-clock signals in the datapath operators.
* Bug: In Etesian, do not blindly reset the top cell abutment-box.
    Do it only if it's empty, otherwise keep it.
* Bug: In Kite, in buildPowerRails(), in getRootNet() the management
    of clock nets was incomplete. The case of unrouted clock nets
    that where not connected to the top core clock net, like the
    one in the datapath registers was faulty. They were partly
    recognized as unrouteds and partly as blockage generating a
    routing deadlock: routage impossible due to blockage generated
    from itself...
* New: In Stratus1, add a buildModel() utility function to automate
    the model generation and allow a call by the model name (string).
* Change: In Unicorn, in cgt.py, display the Alliance environement.
2015-02-25 22:22:16 +01:00
Jean-Paul Chaput 3b343f08cf Bug in Python proxy deallocation. Update to latest Coloquinte.
* Bug: In Bootstrap, in coriolisEnv.py, check if devtoolset-2 is already
    active before launching it as a sub-shell.
* Bug: In Isobar, In PyHurricane.h, DBoDestroyAttribute() set the proxy
    pointer toward the C++ object to NULL. So when the Python object is
    deleted no double-deletion occurs on the C++ object.
      Add some more trace information in Python link/dealloc.
* Change: In CRL Core, in cyclop, make CMakeLists.txt automatically
    choose the right rule for linking the binary wether we use Qt 4 or
    Qt 5. Very irksome problem.
* New: In EtesianEngine::addFeed(), do not take into account instances
    that are not placed entirely inside the top cell abutment box (was
    causing a core dump).
* Bug: In Katabatic, in GCellQueue, correct a mismatch between a GCell
    set and the iterators used upon it.
* Bug: In Mauka, in Row & Surface correct a mismatch between a container
    and it's iterator.
* New: In Etesian, updated to work with the latest Coloquinte, patch
    contributed by G. Gouvine.
      Added EtesianEngine::setDefaultAb() to compute an abutment box if
    the Cell is completly unplaced.
* New: In cumulus, in ClockTree, now the placer can be configured to be
    either Mauka (slow simulated annealing) or Etesian (fast analytic).
    New setting 'clockTree.placerEngine' in plugin settings.
2015-02-13 23:38:55 +01:00
Jean-Paul Chaput 05ec238080 coriolisEnv.py must not start devtoolset-2 when already active. 2015-02-03 23:41:55 +01:00
Jean-Paul Chaput b18219d807 Integration of the latest Coloquinte in Etesian & misc modifs.
* New: In Bootstrap, in Builder & coriolisEnv.py support for RHEL7/SL7.
    The sub-directory name is 'el7_64'.
      In qt_setup() add QtSvg to list of Qt5 & Qt4 used libraries.
* New: In Hurricane, In Cell add a placeholder for flags. First use to
    store whether the Nets have been transhierarchically flatteneds.
* New: In Hurricane, In NetRoutingState add an Unconnected flag for
    more accurate diagnosis.
* New: Hurricane, in CellViewer add an entry menu for stress tests.
    The script must be named "stressScript.py" in the cwd.
* Change: In CRL Core, in display.conf add a scaling parameter for the
    display threhold of the layer. This way we can adapt to different
    standard cells height.
* Change: In CRL Core, in ISPD05 bookshelf loader, use the pitch of the
    cell gauge instead of a hard-wired 5.0.
* Change: In Cumulus, in ClockTreePlugin, add support for Etesian placer
    and a new configuration parameter to choose between Mauka/Etesian.
* New: In Etesian, support for the latest Coloquinte.
    Add feed insertion stage.
* Bug: In Kite, In BuildPowerRails, check that _ck is not NULL before
    tring to access it's name...
* Change: In Kite, check if the Cell has it's Nets flattened before
    doing it (or not).
2015-02-01 23:24:13 +01:00
Jean-Paul Chaput 978315c017 Compliance with Clang 3.4 (RHEL7, MacOS).
* New: In Bootstrap, added support for RHEL7 in ccb.py & coriolisEnv.py.
   In coriolisEnv.py, under RHEL6, directly launch a shell under
   devtoolset-2 (do not put it in .bashrc).
* Change: All tools, compliance with Clang 3.2.
   - Call using namespace std *after* at least one include of std has
     been used.
   - In Utilities.h define both const and non-cont overload for operator<<
     of mstream (this was the true cause of the Banner display problem).
   - No longer use defaults arguments in templates, instead create two
     separated overloads.
   - Put template static attributes allocation outside of namespaces
     (this one I'm not sure how to justify).
   - Protect by NDEBUG variables that are only needed in assert().
   - In PyInterval getUnion() & getIntersection() we where silently
     overwriting the "self" object (interval).
   - In Mauka, *do no* overload _postCreate() and add an argument, breaks
     the virtual function mechanism. Rename it into _maukaPostCreate().
     Idem for SubRow().
   - In Katabatic::GCell(), invalidate() overload a Go funtion but is
     used for different purpose at this level. Rename it invalidateCt()
     (invalidate *ConTents*).
   - Miscellaneous small cleanup.
2014-12-09 23:49:46 +01:00
Jean-Paul Chaput 37c8498962 Support for devtoolset-2, clang and c++11 improvement. 2014-12-05 18:50:15 +01:00
Jean-Paul Chaput f85159bdb4 More accurate error message in Python module importation. 2014-09-07 23:16:04 +02:00
Jean-Paul Chaput b081d07bfc More strict detection of the configuration files install directory.
* Change: In Bootstrap, in FindBoostrap.cmake, install in system-wide
    directories /etc or /opt only if the the installation path is
    exactly /usr or /opt and not only beginning with it.
2014-08-03 16:17:13 +02:00
Jean-Paul Chaput 09f515c62a Support for Windows/Cygwin, part 2.
* Change: In bootstrap, in ccb, builder and coriolisEnv.py, correct detection
    of the windows architecture (32 or 64 bits). Under Cygwin, add the
    directory of the dll into the PATH also. Uses "site-package" as the
    location of Python modules (*not* "dist-package").
      Use gnu++0x under Cygwin instead of c++11.
* Change: In Etesian, if Coloquinte is not found, do not stop the compilation,
    just disable the tool altogether.
* Change: In Hurricane, In Backtrace, disable backtrace under Cygwin as it
    uses features specific of the glibc.
* Change: In Knik, use HUGE_VAL instead of HUGE (not present under Cygwin),
    add the <cmath> header.
* Change: In Unicorn, Coloquinte no longer stops the compilation.
2014-07-23 00:55:50 +02:00
Jean-Paul Chaput 520b9ae382 Restore support for both Qt4 & Qt5.
* Change: In bootstrap, in ccb & builder, build by default with Qt4 and
    provide a --qt5 command line switch to enable Qt5.
      FindBootstrap.cmake now provides a qtX_wrap_cpp() macros to be
    independant of the version of Qt being used.
      Add all thoses options to the graphical interface to the builder.
* Change: In all the tools using Qt, switch to the qtX_*() macros from
    FindBootstrap.cmake.
* Change: In Hurricane, in CellViewer, revert to the Qt4 way of connecting
    signal/slots for backward compatibility.
2014-07-22 11:06:26 +02:00
Jean-Paul Chaput d0d045b55b Starting to implement support for Windows/Cygwin.
* New: In all to CMakeLists.txt, disable the warning about deprecated
   WIN32 under cygwin.
* New: In boostrap, in ccb.py, coriolisEnv.py and builder/Configuration.py
   add recognition in uname for the values returned under Windows/Cygwin.
* New: In Documenation, in UsersGuide.rst add some informations about
   Cygwin and a section for the devel branch.
2014-07-13 13:14:49 +02:00
Jean-Paul Chaput da5fb18971 Added support for Ninja in <ccb> (bootstrap). Minor fixes in CMakefiles. 2014-06-10 00:11:42 +02:00
Jean-Paul Chaput 6939025a0d Correction of SoC.css, adjust the look of the class index big letters. 2014-06-10 00:04:48 +02:00
Jean-Paul Chaput b98afd8385 Small typo in coriolisEnv.py. 2014-05-19 18:00:20 +02:00
Jean-Paul Chaput 9fa65af1ec Add hash/rehash commands at the end of the scripts in <coriolisEnv.py>. 2014-05-13 17:13:55 +02:00
Jean-Paul Chaput dda3f99fd8 Update documentation for compliance with doxygen 1.8.5.
When upgrading from doxygen 1.5.x to 1.8.5 the way the documentation
is generated has underwent many changes, particularly in the headers.
* Change: In <header.html>, must include the javascripts <jquery.js>
    and <dynsections.js>.
* In <CMakeLists.txt>, as the header is customized, doxygen seems not
    copy some files like the javascripts and some images (open.png,
    closed.png). So we copy them from doxygen installation and make
    the CMakeLists.txt install them. I hope they will not change too
    much in the future.
* In <doxyfile>, disable markdown support as it do not interpret
    correctly the formating we already adopted (with a left margin
    to put command into). Use HTML_EXTRA_STYLESHEET instead of
    HTML_STYLESHEET. Enable the index (DISABLE_INDEX=NO), for the
    top header. Enable dot for inheritance diagram. Set the
    EXAMPLE_PATH=. to include the synthetic hierarchy.
    Correct the tag inclusion (faulty path in some places).
* In <SoC.css>, create style for the new header generated by doxygen.
* In the documentation, move the synthetic hierarchy into a module.
2014-05-13 16:30:41 +02:00
Jean-Paul Chaput 4842f21a2e Update to Qt 5, requires cmake 2.8.9. New placer: Etesian.
Update to Qt 5:
* Change: Now requires at least cmake 2.8.9.
* Change: CMakeLists.txt needs small changes. Qt modules must be found
    one by one (Core, Gui, Widgets). Must add "set(CMAKE_AUTOMOC ON)"
    in the top file and replace "qt4" prefix in macros by "qt5".
    Added simpler macro "setup_qt()" in FindBootstrap.cmake.
* Change: No longer need to include <QGtkStyle> is is choosen by default
    according to the current desktop environment.
* Change: In <hurricane>, In HApplication, launch ExceptionWidget when
    a std::exception is catched instead of silently discarting it.

New placer Tool: Etesian
* New: <etesian> analytical placer. Encapsulate Coloquinte from
   Gabriel Gouvine.
* New: in <documentation>, add stub demonstration ToolEngine <smurf>.
   Needs to be commented.

Miscellaneous:
* New: in <boostrap> and <unicorn>, added support for Etesian, the new
    analytic placer. The tool itself will be added in the next commit.
* Bug: in <CellWidget>, when shifting the display buffer, we no longer
    can copy the buffer on itself (we should never have). Now go through
    a temporary one (PlaneId::AutoCopy) which is added to the
    DrawingPlanes. Affect "goLeft()" and "goUp()".
* Bug: In <CellWidget>, remove the WA_PaintOnScreen flag/attribute.
    When it's on, no PaintEvent is transmitted to the CellWidget
    when it's the central widget of the <CellViewer> (QMainWindow).
    It's something I still don't understand from the doc of Qt.
* Change: In <AreaCommand>, use the PlaneId enumeration instead of a
    anonymous numerical index.
* Change: In <HApplication>, no longer catch and silently discard
    standartd exceptions but launch the ExceptionWidget...
    Suppress the now deprecated constructor with "Type" argument.
* Change: In <SelectionModel>, the "reset()" method is deprecated in
    Qt5, instead enclose the "clear()" by a "beginResetModel()" and
    "endResetModel()" pair.
* New: In <crlcore>, add support for ISPD05 benchmarks (in Bookshelf
    format). Forked from ISPD04 and not finished yet.
* Change: In <Mauka>, distinguish the Action string identifier from
    <Etesian>
* New: In <unicorn>, add entry for ISPD05 loader. Add entry for
    <Etesian> analytic placer.
2014-03-22 11:50:36 +01:00
Jean-Paul Chaput f6ab7b87f0 Compliance with g++ 4.8.1, support for devtoolset-2
Details:
* New: in <bootstrap>: add support for devtoolset-2 in ccb. Run the
    cmake commands through 'scl', set shell environment variables
    BOOST_INCLUDEDIR & BOOST_LIBRARYDIR and disable the default
    system path search.
* Change: In various flex scanners add the %nounput to suppress
    compiler warnings.
* Change: Little cleanup for g++ 4.8.1 as it's more strict.
* Change: In various top CMakeLists.txt, suppress extraneous '/'
    after DESTDIR.
2014-03-15 10:47:37 +01:00
Jean-Paul Chaput 14a5f5f7ef Documentation restructuration
Documentation restructuration:
* Bug: in <hurricane>: bad figure for transf-R1.
* Change, in <kite>: Remove deprecated configuration variables.
* New: documentation <tool> to regroup all documentation not directly
  related to one tool.
* Change, in <crlcore>, move the user's guide and the top doc index
  into <documentation>.
* New, in <documenation>: added Python script demo based on AM2901.
2014-03-11 12:21:31 +01:00
Jean-Paul Chaput c0b999241f Re-added support for Chams & CMake support for Git hash retreival.
Details:
* Change, in build.conf: re-added support for the newly migrated Chams
    project.
* Bug, in bootstrap/../Project.py: the tool by tool compilation was
    not working. Now it does (argument "--tool").
* New, in boostrap/../cmake_modules: support for retreiving the Git
    hash number (SHA1). Borrowed on the net from (kudos):
      Ryan Pavlik <rpavlik@iastate.edu>
2014-03-02 11:45:42 +01:00
Jean-Paul Chaput 34e0edfd61 Cleanup after SVN importation, <ccb> builder script adaptation.
Project hierarchy reorganisation:
* With svn, we were doing a tool by tool checkout, suppressing the
  whole repository hierarchy level.
* The tools were also grouped, inside one repository, into multiple
  projects (<bootstrap>, <vlsisapd>, <coriolis>).
* We do not want to split up each tool into a separate repository,
  given their tight integration (except for vlsisapd).
* We choose to simplify, and consider all tools in a svn repository
  one project. Due to the way Git clone repositories, the directory
  containing the project is now to be seen under "src/".

CMake modifications:
* Now that the <vlsisapd> and <bootstrap> projects are merged into
  coriolis, modificate the top CMakeLists.txt of each tool to uses
  only Coriolis (and bootstrap hard wired).

CCB compile script modifications:
* Uses the new source tree hierarchy, with the project directory
  inserted.
* Remove (comment) all parts relateds to svn managment.
* Git is sufficiently simple so that we do not want to integrate
  command shortcut into the script.

SVN cleanup:
* Remove the obsolete <chamsin> tool, that has become the full fledged
  <chams> project long time ago.
2014-02-26 18:24:41 +01:00
Jean-Paul Chaput 8660c41144 This bug keeps repearing! 2013-12-04 02:58:53 +00:00
Jean-Paul Chaput 9965b34e9b Remove the transient support for Kite3 & Katabatic3. 2013-12-04 02:11:21 +00:00
Jean-Paul Chaput 9c9afdd47d Die svn die! 2013-11-05 13:27:24 +00:00
Roselyne Chotin 77f71e68f8 compatibility with MacOS : site-packages and DYLD_LIBRARY_PATH 2013-04-26 15:32:59 +00:00
Ramy Iskander b553e276cc Added solver project to easyChams
Ramy
2013-04-20 21:21:38 +00:00
Jean-Paul Chaput e8565d0fb5 Forgot to create a proxy for getProject() 2013-01-12 15:10:55 +00:00
Jean-Paul Chaput b99ccda839 * ./bootstrap:
- New: Complete rewrite of builCoriolis.py & merge with easyChams to provide
        a graphical interface. Asides to the GUI, when run in graphic mode all
        settings are kept from run to run. Meaning that once the initial setup
        is done, a user may completly forget where things are... The new tool
        is named <ccb> for 'Coriolis & Chams Builder'.
          The Builder is now a module, that is split into multiples files.
        The old buildCoriolis.py is kept for the time beeing to ensure a smooth
        transition.
2013-01-12 14:57:35 +00:00
Jean-Paul Chaput 3daf4d6ac2 * ./vlsisapd:
- New: Detection support for Qwt.
2012-12-28 13:39:15 +00:00
Jean-Paul Chaput 0193433de4 * ./bootstrap:
- New: In buildCoriolis.py, add a --svn-diff option.
2012-12-14 15:36:52 +00:00
Jean-Paul Chaput daf77b9deb * ./bootstrap:
- New: In buildCoriolis.py, in the svnCheckout command, if the source
        directory do not exists, create it (recursively).
    - Change: In buildCoriolis.py, in the svnCheckout command, take the svn
        tag version number in account now...
2012-12-12 14:15:10 +00:00
Jean-Paul Chaput b2340a4fe8 * ./bootstrap:
- Change: In debian/control, new dependency for reStructuredText
        (docutils).
    - Change: In debian/coriolis2.doc-base, correct list of files.
2012-12-04 15:54:56 +00:00
Jean-Paul Chaput f8b6b761c5 * ./bootstrap:
- Change: In debian/coriolis2.doc-base, small correction on the
        documentation files to include.
    - Change: In Makefile.package, crlcore & unicorn now generate
        documentations.
2012-12-04 12:29:00 +00:00
Jean-Paul Chaput eaf107389d * ./booststrap:
- In debian/control, added missing build dependencies.
2012-12-03 21:39:04 +00:00
Jean-Paul Chaput 1a116894bb * ./bootstrap:
- Change: In coriolis2.spec.in, correct the list of packaged
        files to take into account the new initialisation layout.
2012-12-03 15:49:21 +00:00
Jean-Paul Chaput c7c812445f * ./bootstrap:
- Change: In Makefile.package, the "dvi" target no longer exists
        for crlcore.
2012-12-03 15:10:56 +00:00
Jean-Paul Chaput f29a11db4d Updated documentation file to package for Debian/Ubuntu. 2012-12-03 12:30:47 +00:00
Jean-Paul Chaput 80a6e55c27 Forgot this one, for FreeBSD. 2012-12-03 08:38:59 +00:00
Jean-Paul Chaput 64e4d7f259 * All Tools:
- New: Added FreeBSD/Ubuntu patches from Otacilio De Araujo
       (<otaciliodearaujo@gmail.com>).
2012-12-03 08:20:18 +00:00
Jean-Paul Chaput 0a4297e84d * ./bootstrap/buildCoriolis.py
- Change: When the configuration file is not given as argument, looks
        in all the places it is likely to be found.
2012-11-17 15:01:05 +00:00
Jean-Paul Chaput 501fe1e4d9 Pb between rootDir & projectDir 2012-11-16 14:59:20 +00:00
Jean-Paul Chaput a4265c1dce Forgotten new configuration file of buildCoriolis.py 2012-11-16 13:07:11 +00:00
Jean-Paul Chaput c18e875143 * ./bootstrap/buildCoriolis.py:
- New: Support for tarball directly from the user checkout (--user-tarball).
    - New: Full parametrization through a "build.conf" file.
    - Change: Uses user-defined exceptions to terminate.
    - New: guessOs() now detect FreeBSD 8.

  * ./bootstrap/coriolisEnv.py,
    ./bootstrap/coriolis2.sh:
    - Bug: 'lib64' instead of '64' under Linux.
    - New: guessOs() now detect FreeBSD 8.
    - Change: Remove support for Coriolis 1. No more --v2 option either, Coriolis2
        selected by default. Python paths also set by default.
2012-11-16 12:46:27 +00:00
Jean-Paul Chaput 8db2fd8ef6 * ./bootstrap:
- Bug: In ./cmake_modules/FindBootstrap.cmake, fix small message display
        typos. No 'IN LISTS' in forach call. Force variable lookup in
        SEARCH_SETUP_DIR in foreach summarizing the search path.
2012-03-08 10:29:27 +00:00
Jean-Paul Chaput 172f858329 Using lib64 on 64 bits.
Added Isis to the chams project.
2012-02-29 10:10:39 +00:00
Jean-Paul Chaput ce0b0a2b83 * ./bootstrap:
- Change: In coriolis2.sh, cannot reliably determine the path to a sourced
        script under bash. Hardwire the location to /soc/coriolis2.
2012-01-02 22:09:26 +00:00
Jean-Paul Chaput f1ba48f977 SoC install is in /soc/coriolis2/ 2011-10-19 19:45:57 +00:00
Jean-Paul Chaput 3d21206a23 * ./bootstrap:
- Change: In coriolisEnv.py, take into account the SoC installation
        configuration.
2011-10-11 10:23:04 +00:00
Damien Dupuis 7ed659641e execution rights were missing 2011-09-15 10:39:26 +00:00
Damien Dupuis 68a0219bd5 install buildCoriolis.py to bin so user can found it in /asim/coriolis2/bin/buildCoriolis2.py in default installation 2011-09-15 10:35:14 +00:00
Damien Dupuis 8bb398b88f Adding definition so compilation always use version 2 of boost/filesystem (and not v3 because our code is not compliant) 2011-08-22 08:40:46 +00:00
The Coriolis Project c2d8a58124 Added support for SL 6. 2011-06-28 10:49:59 +00:00
Damien Dupuis 18aadd65c5 Adding new SETUP_SVNH macro to generate svn.h file for a specific project 2011-05-17 12:29:28 +00:00
Jean-Paul Chaput 64c5e39423 * ./bootstrap:
- New: In coriolisEnv.py, support for Scientific Linux 6.
2011-04-12 20:36:00 +00:00
Jean-Paul Chaput 2318ac5b61 Added support for Scientific Linux 6. 2011-03-18 13:41:02 +00:00
Jean-Paul Chaput 19b8436da0 * <All Tools>/CMakeLists.txt:
- Change: For the setup_sysconfdir() boostrap/cmake macro uses the
        CMAKE_INSTALL_PREFIX to guess where we are being installed.
        Should be more reliable than any *_TOP environment variable.

  * ./bootstrap:
    - Change: In builCoriolis.py, detect not only when the X_TOP is not
        sets but also when it's sets to an empty value. In either case
        gives priority of the X_USER_TOP over the X_TOP.
2011-02-15 13:15:24 +00:00
The Coriolis Project 09a212cb64 Unset the temporary variables when done. 2011-02-09 17:00:36 +00:00
Jean-Paul Chaput d9fa15ac40 Recognize SoC context. 2011-02-09 16:48:07 +00:00
The Coriolis Project 8e0bd6d4b9 Bug corrections. 2011-02-09 16:40:49 +00:00
Jean-Paul Chaput e1751177e0 Environment helpers makes more educated guesses as to where to
find coriolis2. Three cases:
1/ System-wide : /usr
2/ SoC wide : /asim/coriolis2
3/ User defined. Either ~/coriolis-2.x or --root.
2011-02-09 15:47:27 +00:00
Jean-Paul Chaput df8f91b97d Separate Debian package in two: normal + devel.
Add a #!/bin/bash to coriolis2.sh to shut up debian/lintian.
2011-02-04 11:32:30 +00:00
Jean-Paul Chaput b4b77e5fdd Copy the copyright from the Debian package. 2011-02-03 10:34:43 +00:00
Jean-Paul Chaput ff9881a58a Package versioned libraries... 2011-02-02 23:46:36 +00:00
Jean-Paul Chaput d98f912827 Uses the "installed" doc. 2011-02-02 20:07:51 +00:00
Jean-Paul Chaput 12991f174f A hopefully correct license description. 2011-02-02 17:39:55 +00:00
Jean-Paul Chaput a50592266e Grrr. 2011-02-02 16:47:45 +00:00
Jean-Paul Chaput daaa33b523 Ship pyc & pyo. 2011-02-02 16:15:33 +00:00
Jean-Paul Chaput f69714e8f1 Fix the list of packaged projects in --rpm & --deb mode.
So I will not forgot one...
2011-02-02 15:42:41 +00:00
Jean-Paul Chaput cb59c2070d Correct the list of shipped files. 2011-02-02 15:35:54 +00:00
Damien Dupuis 4d3936fe3f Using BOOTSTRAP_TOP instead of CORIOLIS_TOP 2011-02-02 15:26:08 +00:00
Jean-Paul Chaput 5d4041ca3b Bad install.dir in spec file. 2011-02-02 14:49:56 +00:00
Jean-Paul Chaput 4dd83fb9a0 Uses the <build> rule of the Makefile when building in rpm. 2011-02-02 14:29:43 +00:00
Jean-Paul Chaput 65e658f12c Typo. 2011-02-02 14:09:40 +00:00
Jean-Paul Chaput 72b18733d0 Document buildCoriolis.sh command line options.
Put the debian original tarball at the right location.
Sets the SVN version on the fly in debian/changelog.
2011-02-02 14:08:12 +00:00
Jean-Paul Chaput 23a78697a6 changelog version :-( 2011-02-02 13:06:34 +00:00
Jean-Paul Chaput 1ce2186f3b Typo. 2011-02-02 13:05:51 +00:00
Jean-Paul Chaput 47483c0233 Printing what tool is being build in the Makefile. 2011-02-02 12:58:46 +00:00
Jean-Paul Chaput db7409465f Adds the orig file in the debbuild directory.
Problem of the changelog version number that must follow
the svn tag.
2011-02-02 12:56:49 +00:00
Jean-Paul Chaput e4f3d86553 Small adjustements. 2011-02-02 12:02:39 +00:00
Jean-Paul Chaput d13d4832e7 * ./bootstrap:
- New: "debian" directory holding the paraphernalia needed to create a
        Debian/Ubuntu package.
    - New: In buildCoriolis, add a Debian packaging method.
    - Change: In coriolis2.spec, the build/install procedure now makes uses of
        the top-level Makefile.
    - Change: In FindBoostrap, detection of the distribution type. Finally not
        needed but kept here, just in case. Based on "lsb_release".
    - Change: In FindPythonSitePackages, simplificate the detection of the Python
        site-package directory. No longer on-the-fly generate a python script.
2011-02-02 10:40:25 +00:00
Jean-Paul Chaput 179a9b4019 Revert version number to 1.0. The SVN version should suffice. 2011-01-28 13:10:43 +00:00
Jean-Paul Chaput 7fceed8ca2 A top level Makefile for Debian packaging.
Mimicking an autotool top-level Makefile.
2011-01-28 12:57:00 +00:00
Jean-Paul Chaput d8a8dfcee9 Small correction. 2011-01-09 23:06:07 +00:00
Jean-Paul Chaput 9ab38b5651 New --install switch to corectly manage /asim/coriolis2 2011-01-09 22:55:51 +00:00
Jean-Paul Chaput e043fc6724 Pre-debian packaging (for Ubuntu).
doc exception for generating stratus doc.
2011-01-09 19:21:01 +00:00
Jean-Paul Chaput c356715d80 * ./bootstrap:
- Change: Now installing coriolisEnv.py & coriolis2.sh to simplificate
        the environement initialiszation for students.
2010-12-13 14:00:40 +00:00
Damien Dupuis 4e4a13c265 Adding autoDTR tool in Chams project 2010-12-06 09:42:58 +00:00
Jean-Paul Chaput e85332a0bb Improved environment support & detection. 2010-08-25 14:14:57 +00:00
Jean-Paul Chaput eae107b259 Latest updates. 2010-08-25 13:03:30 +00:00
Jean-Paul Chaput 9557174f24 Try to be consistent, rename utilitarians from Caiman to Mangrove. 2010-08-25 12:18:29 +00:00
Jean-Paul Chaput 88a335ee44 Utilitarians for building Mangrove & Caiman. 2010-08-25 12:15:15 +00:00
Jean-Paul Chaput 048841ef07 * ./vlsisapd/src/bootstrap:
- New: coriolisEnv.py, little helper script to setup the environment.
    - New: Icon & desktop entry for Linux (doesn't work yet).
    - Bug: In FindLEFDEF, uses LIB_SUFFIX to find libraries on 64 bits systems.
2010-08-25 11:57:11 +00:00
Jean-Paul Chaput d3cc60a4ab * ./vlsisapd/src/bootstrap:
- Change: FindLEFDEF moved here from crlcore.
    - Change: In FindLEFDEF, when LEF/DEF is not found sets the include and
        library pathes to the empty chain "" instead of NOTFOUND which prevents
        usage in derived CMakeLists.
2010-08-18 20:34:47 +00:00
Sophie Belloeil f76755d803 No more setup_apple macro 2010-07-21 13:03:36 +00:00
Jean-Paul Chaput 6ca9f496c1 * All Tools:
- Change: Using more Bootstrap macros. Simpler way of setting the
        CMAKE_MODULE_PATH.
2010-07-15 14:09:16 +00:00
Jean-Paul Chaput 42df785cb4 Print boost libraries one per line. 2010-07-15 12:33:45 +00:00
Jean-Paul Chaput 0258a0fd90 * All Tools:
- Change: Switch from "goodies" to "bootstrap".
2010-07-14 19:50:21 +00:00
Jean-Paul Chaput 3f4c4be8de All tools: using the new Goodies macro.
Suppress loops in Hurricane libraries.
2010-07-13 16:25:15 +00:00
Jean-Paul Chaput 34720e3844 Forgotten. 2010-07-13 11:26:04 +00:00
Jean-Paul Chaput b3f693c754 UNSTABLE DO NOT UPDATE 2010-07-13 11:02:11 +00:00
Jean-Paul Chaput 48b782d6a8 UNSTABLE VERSION DO NOT UPDATE 2010-07-13 10:43:20 +00:00
Jean-Paul Chaput 67020af4e6 Integrate cumulus & stratus1 in the Coriolis project. 2010-07-12 15:38:13 +00:00
Jean-Paul Chaput 5a07df0d03 * ./goodies:
- In buildCoriolis.py, small tweek in environment variable settings.
2010-07-01 12:05:15 +00:00
Jean-Paul Chaput 91bf62956b * ./goodies:
- New: In buildCoriolis.py, integrate all changes for Nimbus, Metis & Mauka.
2010-06-26 13:14:28 +00:00
Jean-Paul Chaput 668a435529 * ./goodies:
- New: Added Nimbus & Mauka tools.
2010-06-08 12:15:31 +00:00
Jean-Paul Chaput 3fea4150e6 * ./goodies:
- Bug: In coriolis2.spec.in, typos in static libraries commands.
2010-06-01 12:20:37 +00:00
Jean-Paul Chaput 1a0a226314 * ./goodies:
- New: In coriolis2.spec.in, adds switch to generate package with static libraries.
2010-05-31 12:40:04 +00:00
Jean-Paul Chaput fa981769cc Adapt spec file to fc12 (install directory is cleaned between %build
and %install).
2010-05-28 10:59:59 +00:00
Jean-Paul Chaput 149922ac87 Correctly disable the trace level (for distribution). 2010-05-27 16:26:48 +00:00
Jean-Paul Chaput fd07e33e1f Small error in patch file. 2010-05-27 13:57:07 +00:00
Jean-Paul Chaput 736d3346e4 Patch for distribution is now applied *before* generating the archive
so that unwanted files are not includeds in the source package.
Adds mention to the Flute LICENSE in the code.
2010-05-27 11:54:24 +00:00
Jean-Paul Chaput f8b5ab1b0f Add HTML version of the doc. 2010-05-26 22:24:03 +00:00
Jean-Paul Chaput 6e275beea8 Patch that suppress the trace argument on cgt.
Do not want to show too much of Kite for now.
2010-05-26 07:56:32 +00:00
Jean-Paul Chaput e9a8d8b84a Build doc in seperate stage to uses -j1.
UseLATEX seems to fails with -jX...
2010-05-26 07:30:53 +00:00
Jean-Paul Chaput 5d452ce345 Remove references to DTR & OpenChams in %file section. 2010-05-25 20:55:50 +00:00
Jean-Paul Chaput a5701a1e0f Adds --doc for crlcore. 2010-05-25 20:38:07 +00:00
Jean-Paul Chaput 2ca6dbb299 * ./goodies:
- Change: In buildCoriolis.py, adds "dvi" & "safepdf" targets on "crlcore" tool.
        Not very clean because it's hard-coded.
2010-05-25 16:00:53 +00:00
Jean-Paul Chaput 399cbb542c Uses %__rm -rf for deletion to avoid bad return code. 2010-05-23 11:31:10 +00:00
Jean-Paul Chaput 117c14f738 Uses the correct rm rpm macro: %__rm ... 2010-05-23 11:14:31 +00:00
Jean-Paul Chaput e0a95da527 * ./goodies:
- Bug: In coriolis2.spec.in, just remove the installed doc then install them
        from build with the %doc directive.
2010-05-23 10:57:01 +00:00
Jean-Paul Chaput 156fa3d16d * ./goodies:
- Bug: In coriolis2.spec.in, split the build in two steps so the documentation
        can be installed in the right docdir.
2010-05-23 10:37:22 +00:00
Jean-Paul Chaput 31b8197356 Bug in python site package detection. 2010-05-22 23:18:32 +00:00
Jean-Paul Chaput a222bbd5a0 Correction 2010-05-22 22:54:33 +00:00
Jean-Paul Chaput 6b4757f8d8 New python modules directory. 2010-05-22 22:24:55 +00:00
Jean-Paul Chaput 7745f1a8fb The doc files in the right place. 2010-05-22 15:27:37 +00:00
Jean-Paul Chaput ab4aa044e9 * ./goodies:
- Bug: In coriolis2.spec.in, needs to add the CMAKE_MODULE_PATH component
        pointing into the %{buildroot} for tools to find their ".cmake".
2010-05-22 13:39:38 +00:00
Jean-Paul Chaput e4c1030407 * ./goodies:
- New: In buildCoriolis.py, support for the distribution patch.
        The distribution patch do some customizations needed for the distribution.
    - Change: In coriolis2.spec.in, support for patch, include starter
        documentation. Do not prepend %{buildroot} to CORIOLIS_TOP environment
        variables.
2010-05-22 13:21:24 +00:00
Jean-Paul Chaput da6d10883a * ./goodies:
- Change: In coriolis2.spec.in, now do a install "in system", that is
        under /usr witch configuration in /etc. Create a patch file to
        sets up accordingly the pathes in configurations files.
    - Change: More accurate detection of the qt version based on distribution
        recognition (%{rhel} & %{fedora}).
2010-05-22 09:08:31 +00:00
Jean-Paul Chaput 5be1cb8724 One more try. 2010-05-21 17:12:15 +00:00
Jean-Paul Chaput 91d6bcf358 Adjust rhel detection. 2010-05-21 17:10:36 +00:00
Jean-Paul Chaput c70b261d74 * ./goodies:
- Change: In coriolis2.spec.in, now do a install "in system", that is
        under /usr witch configuration in /etc.
2010-05-21 17:03:22 +00:00
The Coriolis Project 57377a79b5 Adding -f option in rm command for --rm-build (in case build does not exist) 2010-05-19 14:47:48 +00:00
Jean-Paul Chaput c5b8635126 Rename io -> vlsisapd 2010-05-18 15:18:56 +00:00
Jean-Paul Chaput ed6fbe9f5f * All tools:
- Change: take account of the renaming "io" -> "vlsisapd".
2010-05-18 15:12:27 +00:00
Jean-Paul Chaput e468caf46c * All tools:
- Change: adopt a tree layout compliant with the UNIX FHS.
        * includes under      TOP/include/coriolis2.
        * shared datas under  TOP/shared/coriolis2.
        * docs under          TOP/share/doc/coriolis2.
        * configuration under TOP/etc/coriolis2

  * ./crlcore:
    - Change: In Environment, comply to the new tree layout, search configuration
        files under TOP/etc/coriolis2/.

  * ./knik:
    - Change: In flute, comply to the new tree layout, get the "POW*.dat" files
        from TOP/share/coriolis2/flute-2.4.
2010-05-18 13:00:48 +00:00
Jean-Paul Chaput 71cb988c5e This time it will work! 2010-05-17 23:28:50 +00:00
Jean-Paul Chaput 334b23c834 Sets the LIB_SUFFIX on 64 bits. 2010-05-17 23:20:40 +00:00
Jean-Paul Chaput 560d02ff08 Forgot this one. 2010-05-17 23:11:07 +00:00
Jean-Paul Chaput 029c5e8989 Adds LIB_SUFFIX to all CMakeLists install "lib" targets, so that 64 bits
libraries gets installed in "lib64" instead of "lib".

buildCoriolis.py sets automatically LIB_SUFFIX for cmake.
coriolis2.spec modificated to uses lib64 on 64 bits.
2010-05-17 21:19:02 +00:00
Jean-Paul Chaput d2206fd246 No %arch tag, uses %_arch 2010-05-17 16:54:08 +00:00
Jean-Paul Chaput 92e0a06744 Adds arch extention to the binary tar.bz2. 2010-05-17 16:31:28 +00:00
Jean-Paul Chaput f28298c0c4 Requires takes an "s"! 2010-05-17 16:21:50 +00:00
Jean-Paul Chaput 8bac5355da Adding Requires and call to ldconfig in post stage. 2010-05-17 16:20:07 +00:00
Jean-Paul Chaput 0136f845bc Correct dynamic link configuration. 2010-05-17 16:00:09 +00:00
Jean-Paul Chaput 729844178c Another modif. 2010-05-17 15:46:21 +00:00
Jean-Paul Chaput e671371443 Small corrections in version & release numbers. 2010-05-17 15:37:30 +00:00
Jean-Paul Chaput 9ac035bb49 * ./goodies:
- New: In buildCoriolis.py, support to build rpm packages (in user's "rpm"
        directory).
    - Added: coriolis2.spec.in for rpm building. Install under /opt/coriolis2.
        This spec files has the particularity to also buildup a binary tarball
        of the compiled & installed files, this avoid a second complete build
        stage. The tarball is put into "rpm/SOURCES".
2010-05-17 14:45:55 +00:00
Damien Dupuis 3401114216 Do not forget to call "make" in command of self._doBuild 2010-05-17 08:20:02 +00:00
Jean-Paul Chaput 4fcd26a6bf * All tools:
- Change: In the CMakeLists.txt, in all the install commands remove all
        the leading "/" as they prevents the CMAKE_INSTALL_PREFIX to be took
        into account. It was nevertheless working because buildCoriolis.py was
        using DESTDIR which is prepended anyway.
  * ./goodies:
    - Change: In buildCoriolis.py, no longer uses the DESTDIR but instead
        CMAKE_INSTALL_PREFIX.
2010-05-16 16:41:25 +00:00
Jean-Paul Chaput 17ac99fa46 * ./goodies:
- New: In buildCoriolis.py, adds a "--rm-build" option which removes the
        tool's build directory before building it. A very crude way to ensure
        that nothing obsolete form a previous build will gets in the way...
2010-04-28 15:54:30 +00:00
The Coriolis Project ffc3fb7eee bug correction : coriolis.soc.lip6.fr 2010-04-27 14:19:10 +00:00
Jean-Paul Chaput ca8de0d706 Remove methods from project's repositories. 2010-04-20 12:11:26 +00:00
Jean-Paul Chaput 6901b38221 Adds a --svn-method argument (for svn checkout). 2010-04-20 12:05:52 +00:00
Jean-Paul Chaput a52ca4fa3d Flushing stdout & stderr before calling Popen to avoid
messages display desinchronisation.
2010-04-20 11:11:08 +00:00
Jean-Paul Chaput 84f582f2ef * ./goodies:
- Change: In buildCoriolis.py, now manage correctly any combination of
        projects/tools/standalone tools. Standalones tools are always processeds
        last.
2010-04-04 10:19:38 +00:00
Jean-Paul Chaput 3a25248804 * ./goodies:
- Bug: In buildCoriolis.py, when multiple projects where given on the command
        line, only the latest was processed. Now all projects are processeds.
        (in the order given on the command line so watch out!)
2010-04-03 14:06:08 +00:00
Jean-Paul Chaput 3f10d44549 * ./goodies:
- Bug: In buildCoriolis.py, io tool was both declared as belonging to io
        and hurricane project. Removed from Hurricane.
    - Bug: In buildCoriolis.py, exctract correctly the return status of a
        command to return it to the parent process. See Python documentation
        about os.wait() & os.waitpid().
2010-03-26 18:09:30 +00:00
Jean-Paul Chaput b50b492b69 Correct bugs in the svn-checkout command. 2010-03-23 09:36:38 +00:00
Damien Dupuis f56b102584 bug : os.isfile is not correct : os.path.isfile is correct ^^ 2010-03-22 16:38:25 +00:00
Jean-Paul Chaput c42c79a190 * ./goodies :
- Change: In builCoriolis.py, expand the '~' in the root path if needed.
     - Bug: Do not stop if the "--no-cache" option is given but the
         CMakeCache doesn't exists.
2010-03-22 14:13:40 +00:00
Jean-Paul Chaput 860485d7b8 No longer sets the <PROJECT>_USER_TOP if it's not set in the environment. 2010-03-19 16:02:35 +00:00
Jean-Paul Chaput 2d0f027aee Small message between each tool command output. 2010-03-19 14:47:32 +00:00
Jean-Paul Chaput d543c49ceb * All Tools:
- Change: <PROJECT>_SEARCH_PATH are put back into the *first* tool of
         a project.
     - Bug: In HURRICANE_CHECK_MACRO(), the quiet flag was not correctly
         implemented. User ARGV instead of argv (case sensitivity!).
2010-03-19 14:30:21 +00:00
Jean-Paul Chaput 38c5dd899e Bug on quiet. 2010-03-19 10:07:12 +00:00
Jean-Paul Chaput d1bf7ae5c9 Add a "quiet" mode. 2010-03-19 10:05:30 +00:00
Jean-Paul Chaput 6857328dfe Do not stop when a tool directory is missing (all svn flavors). 2010-03-19 10:01:54 +00:00
Jean-Paul Chaput 093baff9b6 * All Tools:
- Change: New structure for the installation & CMake system.
         * Tools are now grouped in "projects". There are three projects:
           1. - IO: Standalones parsers/drivers (IO_USER_TOP, IO_TOP).
           2. - Coriolis: Base & digital tools (CORIOLIS_USER_TOP, CORIOLIS_TOP).
           3. - Chams: Analogic tools (CHAMS_USER_TOP, CHAMS_TOP).
           Each *project* has a two "TOP" environement variables, for
         example: IO_TOP and IO_USER_TOP. Thoses variables are the only
         ones useds to locate the tool (CMake modules, headers & libraries).
           The local path always takes precedence over the global one.
           The localisation process occurs in each tool top CMakeLists.txt
         where the macro SETUP_PROJECT_PATH is to be defined. There is no
         way to put it in a shared includes file as it's the macro precisely
         used to locates the includes... You have to call the macro once for
         each project you wants to uses:
             SETUP_PROJECT_PATHS(IO)
             SETUP_PROJECT_PATHS(CORIOLIS)
         * In FindTOOL.cmake, supress the <TOOL>_DIR_SEARCH and uses the
         <PROJECT>_DIR_SEARCH instead (example: CORIOLIS_DIR_SEARCH).
         * buildCoriolis.py modificated according to the new "TOP" scheme.
2010-03-18 15:38:10 +00:00
Damien Dupuis 23770a1d47 Removing easyChams and runPharos since they are now in goodies directory of CHAMS svn tree 2010-03-16 16:28:15 +00:00
Jean-Paul Chaput d51c8820d5 Initial import of Coriolis Goodies. 2010-03-16 16:18:09 +00:00
The Chams Project c738ac2f6e New version of compiling script to support 32bits and 64 bits achitectures on the same account (for chams network install) 2010-03-04 13:36:02 +00:00
Damien Dupuis e9e60fea07 Correct an Utf8 bug.
When using easyChams you need to set LANG to utf8
2010-02-25 15:31:45 +00:00
Damien Dupuis b2e7ee0fdb Adding icons for macosx and linux 2010-02-24 10:37:39 +00:00
Damien Dupuis e5a423fbd7 New compile.sh script that use cmake, there should be no more problems on Linux (except for svn old version) 2010-02-19 15:25:45 +00:00
Damien Dupuis 4cf533b392 New runPharos tool :
- an easy way to run pharos 
     - supports several technologies
     - show/hide a console that catch all pharos' outputs
     - supports settings to save technologies / directories
2010-02-19 14:28:07 +00:00
Damien Dupuis d0fe4e359d No need to debug print the list of arguments passed to the script. 2010-02-09 13:42:27 +00:00
Damien Dupuis dfbea2a6b2 Update script for static building purpose.
PLEASE update your script.
You only have to update the script (no compilation needed) and verify that your easyChams program points to this updated script.
2010-02-09 12:32:35 +00:00
Damien Dupuis cf719d2a25 First caseSensitive problem
I forgot bash script
2010-01-29 13:14:56 +00:00
Damien Dupuis 59c1ebf1d9 Initial import for goodies 2010-01-29 13:07:27 +00:00