Menu

Tree [2d9a93] master /
 History

HTTPS access


File Date Author Commit
 acceptance_tests 2024-10-18 Nune Badalyan Nune Badalyan [6fe5aa] Created initial version of the project
 nls 2024-10-18 Nune Badalyan Nune Badalyan [6fe5aa] Created initial version of the project
 regression_tests 2024-10-18 Nune Badalyan Nune Badalyan [6fe5aa] Created initial version of the project
 src 2024-10-18 Nune Badalyan Nune Badalyan [6fe5aa] Created initial version of the project
 utils 2024-10-18 Nune Badalyan Nune Badalyan [6fe5aa] Created initial version of the project
 Doxyfile 2024-10-18 Nune Badalyan Nune Badalyan [6fe5aa] Created initial version of the project
 LGPL.txt 2024-10-21 Me Me [2d9a93] Added LICENSE and LGPL files for 3.0 version.
 LICENSE 2024-10-21 Me Me [2d9a93] Added LICENSE and LGPL files for 3.0 version.
 README 2024-10-18 Nune Badalyan Nune Badalyan [6fe5aa] Created initial version of the project
 ReleaseNotes.txt 2024-10-18 Nune Badalyan Nune Badalyan [6fe5aa] Created initial version of the project
 install.sh 2024-10-18 Nune Badalyan Nune Badalyan [6fe5aa] Created initial version of the project
 makefile 2024-10-21 Me Me [2d9a93] Added LICENSE and LGPL files for 3.0 version.

Read Me

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
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.