Rombobjörn

summaryrefslogtreecommitdiff
path: root/comfignat.gpr.in
diff options
context:
space:
mode:
authorBjörn Persson <bjorn@rombobjörn.se>2013-02-13 23:17:52 +0100
committerBjörn Persson <bjorn@rombobjörn.se>2013-02-13 23:17:52 +0100
commit4766a7a7a2f23ee10560e1a2a177eec8931d974a (patch)
tree5380090b964906e3317b930b43ce38bd60f5e0cf /comfignat.gpr.in
parentb5565b3dc55003122b0ffdc211d03446971ff12a (diff)
Added a convenient and flexible build system.
Diffstat (limited to 'comfignat.gpr.in')
-rw-r--r--comfignat.gpr.in98
1 files changed, 98 insertions, 0 deletions
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;