diff --git a/INSTALL b/INSTALL index b9c23c3f9..1993de1e2 100644 --- a/INSTALL +++ b/INSTALL @@ -6,7 +6,7 @@ STEP Class Library. These installation requires that you have the following software available: -- C and C++ compilers (only gcc has been tested recently) +- C and C++ compilers (Tested with GCC, MSVC, Embarcadero) - bison, byacc, or yacc (only bison has been tested recently) - flex or lex (only flex has been tested recently) - CMake @@ -21,12 +21,22 @@ Installation * Build system uses CMake now: configure, Makefile, and all autotools files have been removed, as has mkProbe. -* To build: - cd scl - mkdir build - cd build - cmake .. - make +* Building SCL from the command prompt: + - cd scl + - mkdir build + - cd build + - cmake .. + - make + - make install # optional + +* Building SCL from the GUI: + - Run cmake-gui, set it to build in scl/build + - Select the correct build file generator + - Press Configure + - Change options as necessary, configuring again afterwards + - If there are errors, some options may not be visible until the error is resolved + - Press Generate + - Open the main build file using your preferred build tool * Build options (append to the 'cmake ..' line): -DBUILD_SCHEMAS="path/to/schema.exp;path/to/schema2.exp" @@ -45,3 +55,16 @@ Installation -DCMAKE_BUILD_TYPE=Release - this causes binaries to be built without debugging information - without this, cmake defaults to a Debug build + +* Using CTest to test SCL: + - Read the comments in run_ctest.cmake + - (OPTIONAL) Create scl/../.SCL_CTEST_PREFS.cmake, and set variables + in it (this file is required for CDash submission to be enabled) + - Run tests with `ctest -S run_ctest.cmake` + +* Using CTest to regenerate the schema matrix on the github SCL wiki: + - Requires: + - git + - python + - a clone of the git repo for the wiki at scl/../wiki-scl + - run `ctest -S ctest_matrix.cmake` diff --git a/NEWS b/NEWS index a6445ecc3..0e6cda90a 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,23 @@ STEP Class Library ------ http://github.com/mpictor/StepClassLibrary ************************************************************************ +Release 0.5 (Feb 23, 2012) + +New since v0.4: +* MSVC and Embarcadero support, along with many warning fixes +* Experimental Python support +* Now handles most features of EXPRESS - all included schemas, + with the exception of AP209 CD, are parsed without error. Enums are + now in their own dictionary. Allow indexing on aggregates, generics, + and binaries. +* Changes to fedex_plus that improve the generated c++ - use a + namespace, break up large static strings, make EXPRESS multiple + inheritance work by not printing multiple copies of inherited members. + All schemas now compile without error, but there are numerous warnings. +* Exchange files: handle all comments, fill in some missing attributes. +* More cleanup of source code, more documentation in scl/doc +* Special thanks to @davyw and @tpaviot for their large contributions + (MSVC and Python, respectively) +************************************************************************ Release 0.4 (Nov 13, 2011) New since v0.3: diff --git a/README b/README index df5c006e8..08ccd5cea 100644 --- a/README +++ b/README @@ -1,12 +1,10 @@ *********************************************************************** -Step Class Library v0.4 -- http://github.com/mpictor/StepClassLibrary +Step Class Library v0.5 -- http://github.com/mpictor/StepClassLibrary * What is SCL? SCL reads ISO10303-11 EXPRESS schemas and generates - C++ source code that can read and write Part 21 files conforming - to that schema. SCL once worked with ObjectStore, OODB, and - CORBA IDL - but that code has not been used in a very long time. - We are in the process of removing this code because ObjectStore, - CORBA, etc. are no longer part of the STEP standard. + C++ source code that can read and write Part 21 files conforming + to that schema. In addition to C++, v0.5 includes experimental + support for Python. * SCL is packaged along with some other tools. See "THE NIST STEP TOOLSET", below. In particular, Data Probe @@ -21,36 +19,7 @@ Step Class Library v0.4 -- http://github.com/mpictor/StepClassLibrary * Build system uses only CMake now: configure, Makefile, and all autotools files have been removed, as has mkProbe. -* To build: - cd scl - mkdir build - cd build - cmake .. - make - -* Build options (append to the 'cmake ..' line): - -DBUILD_SCHEMAS="path/to/schema.exp;path/to/schema2.exp" - - this generates c++ for the schema, and compiles it into a - library. Also works with directories, as long as each dir only - has one express file. - - multiple files/directories are separated by semicolons - - this also builds a 'p21read' program, which reads one step file - and writes another. It may change whitespace or remove comments; - otherwise, the input and output files should be identical. If - they are not identical, either the file does not match the - schema, or SCL generated incorrect source code. - -DBUILD_SCHEMAS=ALL - - Added to make use of ctest easier. If BUILD_SCHEMAS == ALL, - then CMake adds each *.exp file found in data/. - -DCMAKE_BUILD_TYPE=Release - - this causes binaries to be built without debugging information - - without this, cmake defaults to a Debug build - -* Using CTest to test SCL: - - Read the comments in run_ctest.cmake - - (OPTIONAL) Create scl/../.SCL_CTEST_PREFS.cmake, and set variables - in it (this file is required for CDash submission to be enabled) - - Run tests with `ctest -S run_ctest.cmake` +* Building and testing SCL - see the INSTALL file *********************************************************************** diff --git a/SCL_VERSION.txt b/SCL_VERSION.txt index bd73f4707..2eb3c4fe4 100644 --- a/SCL_VERSION.txt +++ b/SCL_VERSION.txt @@ -1 +1 @@ -0.4 +0.5