Instigate Compiler FrontEnd Code
Brought to you by:
opensourceteam
Introduction This is the README file of Compiler Front-End Version 1.13 developed by Instigate Design CJSC. CONTENTS 1. Getting Started 2. Prerequisites 3. Compilation 4. Installation 5. Usage 6. Maintainers 1. Getting Started Complier Front-End is an extension of Instigate Application Framework. It represents a conceptual framework that provides the ability to create a specific intermediate representation. The use cases of the project are: - creation of an AST without being have to deal with choosing an industry standard compiler and implementing the parsing algorithms, - creation of an CDFG without being have to deal with choosing an industry standard compiler and implementing the parsing algorithms, - getting programmatic information from the high level programming languages. 2. Prerequisites To install prerequisites please follow these steps: a) Download SDK lite package from SourceForge and extract. SDK Lite packages are available in SourceForge only for 3 OS-es: - Ubuntu 22.04 - https://sourceforge.net/projects/instigate-fwk/files/instigate-fwk-gtk-sdk/UbuntuOS/ubuntu_22.04_sdk_lite_24.06.tar.bz2 - CentOS 7 - https://sourceforge.net/projects/instigate-fwk/files/instigate-fwk-gtk-sdk/CentOS/centos_07_sdk_lite_24.06.tar.bz2 - Bagrevand - https://sourceforge.net/projects/instigate-fwk/files/instigate-fwk-gtk-sdk/BagrevandOS/bagrevand_12.0_sdk_lite_24.08.tar.bz2 By default the build system looks for SDK with the following path: /tmp/instigate-software/gnu_system/ To use the default path just create a soft link to the package in /tmp, e.g: ln -sf <your_path>/ubuntu_22.04_sdk_lite_24.06/ /tmp/instigate-software Otherwise update the default SDK path via the following assignment in the top level makefile: export sdk_path := <your_path>/ubuntu_22.04_sdk_lite_24.06/gnu_system/3.2/x86_64 c) Download and install Instigate software from SourceForge: - Instigate Build system - >= 2.0.4 - Instigate ACL - >= 2.0.0 - Instigate GPCL - >= 2.0.0 - Instigate STL - >= 2.0.4 - Instigate XML PARSER - >= 1.5.4 - Instigate Application Framework - >= 2.357 Note: For the installation follow the steps in README files available under each project. By default, Instigate software is installed in $HOME directory. In case of changing the default path, please specify the same install path for all components of Instigate software. Update INSTIGATE_OS3_PATH environment variable in the top level makefile to point to the Instigate software installation path, if default is changed. 3. Compilation Compile the package as follows: a) Configure build parameters by issuing 'make setup' command specifying: - release or debug build (default is debug): make setup build_type=<release|debug> - static or dynamic linking (default is dynamic): make setup link_type=<static|dynamic> - enable using sdk: make setup use_sdk=yes Note 1: all options should be specified during a single 'make setup' command. Note 2: Based on link_type either static libraries (.a) or shared libraries (.so) will be built. b) Build the library using 'make' command. Multi-threaded build is supported, e.g. "make -j4" will run 4 parallel threads if you are running it on a quad-cpu computer. Additional features: a) Generate documentation via the following commands: - make user_docs - make developer_docs The generated documentation will be available in the 'doc' directory. b) Cleanup results of previous build via 'make clean' command. 4. Installation Use 'make install' command which will install the package under the directory specified by the variable 'install_path'. The variable is defined in the top level makefile and defaults to $INSTIGATE_OS3_PATH/compiler_frontend/<version>/<arch>_<build_type> The value of 'install_path' variable should be used in the applications which are using Compiler Front-End (see '5. Usage' section for details). 5. Usage In order to build application against the Compiler Front-End you will need to point to it from the makefile of your application using the variable INSTIGATE_COMPILER_FRONTEND_ENV_ROOT. 6. Maintainer Instigate Design CJSC e-mail: info@instigatedesign.com Phone: +374-60 510-710