Rombobjörn

summaryrefslogtreecommitdiff
path: root/INSTALL
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL')
-rw-r--r--INSTALL72
1 files changed, 47 insertions, 25 deletions
diff --git a/INSTALL b/INSTALL
index 7efb59b..c94f0be 100644
--- a/INSTALL
+++ b/INSTALL
@@ -5,7 +5,8 @@ Requirements
------------
These instructions assume a Unix-like system with the GNAT tools and GNU Make.
-The makefiles may not work with other Make clones than GNU Make. If you can't
+The makefiles may not work with other clones and forks of Make. Use GNU Make if
+possible; it is sometimes available as "gmake" on non-GNU systems. If you can't
use Make you will need to manually preprocess some GNAT project files with
Gnatprep. If you have another Ada compiler than GNAT, then the included build
system will probably not work and you should do whatever that compiler requires
@@ -24,7 +25,7 @@ The simplest way to build and install System_Log is:
2: Run "make install" to copy the files to the default locations. You will
probably need root privileges if you install to the default locations.
-
+
Testing
-------
@@ -42,59 +43,73 @@ the Gnatprep command line if you can't use Make. The following Make variables
are relevant during the build:
dirgpr
- The filename of the directory project, if your system has one and you want
- to install to the directories it specifies. A directory project is a GNAT
- project file that defines directory variables for use by other project
- files. Multilib support requires a directory project that can refer to
- different directories depending on the target architecture. A directory
+ The filename of the directories project, if your system has one and you
+ want to install to the directories it specifies. A directories project is a
+ GNAT project file that defines directory variables for use by other project
+ files. Multiarch support requires a directories project that can refer to
+ different directories depending on the target architecture. A directories
project overrides some but not all of the directory variables listed below.
+ relocatable_package
+ If relocatable_package is true and no directories project is provided, then
+ the project file that will be installed with the library will be configured
+ with relative pathnames so that the installed directory tree as a whole can
+ be moved to another location in the filesystem without breaking the project
+ file. Default: false
+
prefix
A prefix used in the default values of the directory variables listed
below. Default: /usr/local
exec_prefix
- A prefix used in the default locations for architecture-specific files.
- Default: <prefix>
+ A prefix used in the default locations for programs, binary libraries and
+ other architecture-specific files. Default: <prefix>
datarootdir
The root of the directory tree for read-only architecture-independent data
files. Default: <prefix>/share
includedir
- The directory for source files that are needed for compilation of code that
- uses the library, used only if no directory project is provided.
+ The top-level directory for source files to be used in the compilation of
+ software using libraries, used only if no directories project is provided.
Default: <prefix>/include
libdir
- The directory for binary libraries and other architecture-specific files,
- used only if no directory project is provided. Default: <exec_prefix>/lib
+ The directory for binary libraries to be used by other software, and the
+ top-level directory for other architecture-specific files, used only if no
+ directories project is provided. Default: <exec_prefix>/lib
gprdir
- The directory for GNAT project files. Default: <datarootdir>/gpr
+ The directory for GNAT project files to be used in the building of software
+ using libraries. If you set this to a directory that GPRbuild and Gnatmake
+ don't search by default, then you will need to add it to the project search
+ path when using this library, for example through the environment variable
+ GPR_PROJECT_PATH. Default: <datarootdir>/gpr
If you want to install to a staging directory from which the files will later
be copied to their final locations, then set DESTDIR to the staging directory.
All the other directory variables shall be the final locations. Unlike the
variables listed above, DESTDIR is effective in the installation step.
-The following preprocessor symbols are defined by the makefiles, and may be
-defined manually if Make can't be used:
+The following preprocessor symbols are used when the project files are
+preprocessed. They are derived from the Make variables above when the makefiles
+invoke Gnatprep. You may need to define them if you run Gnatprep manually.
- Directory_GPR
- The filename of the directory project, if any; corresponding to dirgpr.
+ Directories_GPR
+ The filename of the directories project, if any; corresponding to dirgpr.
- Directory_Project
- The name of the directory project, if any. This is supposed to be the
+ Directories_Project
+ The name of the directories project, if any. This is supposed to be the
filename without a path or a suffix.
Prefix
Exec_Prefix
Includedir
Libdir
- These correspond to the like-named Make variables.
+ These correspond to the like-named Make variables. The same defaults as
+ above will be used if the symbols are undefined.
+
-
Build Tools and Options
-----------------------
@@ -126,11 +141,18 @@ options are passed to them:
A space-separated list of options to be passed to the compiler when
compiling Ada code, used only if GNATFLAGS is undefined.
+ GNATBINDFLAGS
+ A space-separated list of options to be passed to Gnatbind, used only if
+ GNATFLAGS is undefined and only when binding the demo program.
+
+ GNATLINKFLAGS
+ A space-separated list of options to be passed to Gnatlink, used only if
+ GNATFLAGS is undefined, only if the builder is Gnatmake, and only when
+ linking the demo program.
+
LDFLAGS
A space-separated list of options to be passed to the linker, used only if
- GNATFLAGS is undefined. (Unfortunately neither GPRbuild nor Gnatmake can
- forward command line options to the linker when linking a shared library,
- so LDFLAGS affects only the demo program.)
+ GNATFLAGS is undefined and only when linking the demo program.
Copyright of This File