Menu

[ccc612]: / jamroot.jam  Maximize  Restore  History

Download this file

93 lines (79 with data), 2.6 kB

# owlcpp/jamroot.jam
# part of owlcpp project.
# Distributed under the Boost Software License, Version 1.0; see doc/license.txt.
# Copyright Mikhail K Levin 2010-5

import build/singleton-target ;
import build/version ;

path-constant PROJ_ROOT : . ;
path-constant INCLUDE : include ;
path-constant OUT : out ;
path-constant SMPL_DATA : sample_data ;
path-constant TEMP_DIR : $(OUT)/temp ;
make $(TEMP_DIR) : : @common.mkdir ;
path-constant GENERATED_INCLUDE : $(OUT)/include ;
path-constant GENERATED_LIB : $(OUT)/lib ;
path-constant PYTHON_OUT : $(OUT)/binding/python ;

constant OWLCPP_NAME : "owlcpp" ;
constant OWLCPP_VERSION : [ git_describe $(PROJ_ROOT) : $(GIT_PATH) ] ;
constant OWLCPP_DESCRIPTION : "C++ library for working with OWL ontologies" ;
constant OWLCPP_LICENSE : "The Boost Software License, Version 1.0" ;

constant LIB_REQUIREMENTS :
   <toolset>gcc,<target-os>linux:<cflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
   <toolset>gcc:<cflags>"-Wno-unused-local-typedefs" #disable warnings in Boost 1.55.0
   <toolset>clang,<target-os>linux:<cflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
   <toolset>msvc:<cxxflags>/Gy
;

if ! $(BOOST) {
   EXIT "
   ERROR:
   Please set variable BOOST in user-config.jam to location and version of Boost library.
   " ; 
}
use-project /boost : $(BOOST[1]) ;

project owlcpp
   : build-dir $(OUT)
   : requirements
      <include>$(BOOST[1])
      <include>$(INCLUDE)
   : usage-requirements
      <include>$(INCLUDE)
;

alias test
   : #sources
      lib/rdf/test
      lib/io/test
      lib/logic/test
      lib/test
      apps/test
   : #requirements
;

alias test-py
   : #sources
      binding/python/test
   : #requirements
;
explicit test test-py ;

use-project /owlcpp : . ;
alias rdf : lib/rdf ;
alias io : lib/io ;
alias logic : lib/logic ;
alias apps : ./apps ;
alias factpp_kernel : external//factpp_kernel ;
alias libxml2 : external//libxml2 ;
alias raptor : external//raptor ;
explicit factpp_kernel raptor ;

alias bindings-py : binding/python//stage_py ;
alias distro-bindings-py : binding/python//distro-bindings : <variant>release ;
explicit bindings-py distro-bindings-py ;

alias docs : doc//docs ;
explicit docs ;

import feature : feature ;
import toolset ;
feature pic : off on : propagated ;
toolset.flags gcc.compile.c USER_OPTIONS <pic>on : -fPIC : unchecked ;
toolset.flags gcc.compile.c++ USER_OPTIONS <pic>on : -fPIC : unchecked ;

import notfile ;
notfile make-release : @make-release ;
explicit make-release ;
rule make-release ( targets * : sources * : properties * ) { }
actions make-release { python build/release.py $(PROJ_ROOT) }
   
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.