From 41cf063931a6d818ba66b95283392ac8a6e48022 Mon Sep 17 00:00:00 2001 From: Björn Persson Date: Wed, 13 Feb 2013 23:23:53 +0100 Subject: Added a convenient and flexible build system. --- comfignat.gpr.in | 98 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 comfignat.gpr.in (limited to 'comfignat.gpr.in') diff --git a/comfignat.gpr.in b/comfignat.gpr.in new file mode 100644 index 0000000..8212336 --- /dev/null +++ b/comfignat.gpr.in @@ -0,0 +1,98 @@ +-- Comfignat configuration variables for GNAT project files +-- Copyright 2013 B. Persson, Bjorn@Rombobeorn.se +-- +-- This material is provided as is, with absolutely no warranty expressed +-- or implied. Any use is at your own risk. +-- +-- Permission is hereby granted to use or copy this project file +-- for any purpose, provided the above notices are retained on all copies. +-- Permission to modify the code and to distribute modified code is granted, +-- provided the above notices are retained, and a notice that the code was +-- modified is included with the above copyright notice. + + +-- This project file defines directory variables for use in build-controlling +-- project files. It is not to be installed on the target system. +-- +-- Normally the preprocessing of this file will be controlled by comfignat.mk, +-- which will make it import the directory project if one is provided. It can +-- also be preprocessed manually if Make cannot be used for some reason. There +-- are defaults that will be used if no preprocessor symbols are defined. + + +#if Directory_GPR'Defined then + with $Directory_GPR; +#end if; + +abstract project Comfignat is + + #if Objdir'Defined then + Objdir := $Objdir; + #else + Objdir := "build"; + #end if; + -- Intermediate files produced during the build shall be kept in Objdir. + + #if Directory_Project'Defined then + -- Put intermediate files for different architectures in subdirectories + -- where they won't conflict with each other. (This is useful especially + -- with binder files when they are packaged in debug information packages + -- for multiarch systems.) + Objdir := Objdir & "/" & $Directory_Project.Hardware_Platform; + #end if; + + #if Stagedir'Defined then + Stagedir := $Stagedir; + #else + Stagedir := external("DESTDIR", ""); + #end if; + -- Files to be installed shall be placed under Stagedir instead of the root + -- directory. + + #if Prefix'Defined then + Prefix := $Prefix; + #else + Prefix := "/usr/local"; + #end if; + + #if Exec_Prefix'Defined then + Exec_Prefix := $Exec_Prefix; + #else + Exec_Prefix := Prefix; + #end if; + + #if Bindir'Defined then + Bindir := $Bindir; + #else + Bindir := Exec_Prefix & "/bin"; + #end if; + Stage_Bindir := Stagedir & Bindir; + -- Programs intended to be run by users shall be installed in Stage_Bindir. + + #if Libexecdir'Defined then + Libexecdir := $Libexecdir; + #else + Libexecdir := Exec_Prefix & "/libexec"; + #end if; + Stage_Libexecdir := Stagedir & Libexecdir; + -- Programs intended to be run by other programs rather than by users shall + -- be installed under Stage_Libexecdir. + + #if Includedir'Defined then + Includedir := $Includedir; + #else + Includedir := Prefix & "/include"; + #end if; + Stage_Includedir := Stagedir & Includedir; + -- Source files needed for compiling against a library shall be installed + -- under Stage_Includedir. + + #if Libdir'Defined then + Libdir := $Libdir; + #else + Libdir := Prefix & "/lib"; + #end if; + Stage_Libdir := Stagedir & Libdir; + -- Binary libraries shall be installed in Stage_Libdir. + +end Comfignat; -- cgit v1.2.3