diff options
| author | cashmere <cashmere@autistici.org> | 2026-09-04 09:05:24 +0200 |
|---|---|---|
| committer | cashmere <cashmere@autistici.org> | 2026-09-04 09:05:24 +0200 |
| commit | 4f49b16079b27d7ce633619e4cddfdf2bffbc952 (patch) | |
| tree | c296c1e7f3c3e2f6859c6d3a1b1b208779b89679 /BUILD.txt | |
| download | relic-4f49b16079b27d7ce633619e4cddfdf2bffbc952.tar.gz | |
Diffstat (limited to 'BUILD.txt')
| -rw-r--r-- | BUILD.txt | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/BUILD.txt b/BUILD.txt new file mode 100644 index 0000000..5c37105 --- /dev/null +++ b/BUILD.txt @@ -0,0 +1,78 @@ +To do a complete build, just type: + + ./configure; make + +The ./configure script builds Makefile from Makefile.in based on +your system and any options you select (run "./configure --help" +for a listing of the available options.) + +If you wish to use the original Makefile with no configuration, you can +instead use: + + make -f Makefile.classic + +On a windows box, use one of the Makefiles in the win/ subdirectory, +according to your compiler and environment. If you have MinGW or +MinGW-w64 installed on your system (Msys or Cygwin, or as +cross-compile environment on Linux or Darwin), then consider: + + make -f win/Makefile.mingw + +If you have VC++ installed on your system, then consider: + + cd win; nmake /f Makefile.msc + +If you have trouble, or you want to do something fancy, just look at +Makefile.classic. There are 6 configuration options that are all well +commented. Instead of editing the Makefile.classic, consider copying +Makefile.classic to an alternative name such as "GNUMakefile", +"BSDMakefile", or "makefile" and editing the copy. + + +BUILDING OUTSIDE THE SOURCE TREE + +An out of source build is pretty easy: + + 1. Make and change to a new directory to do the builds in. + 2. Run the "configure" script from this directory. + 3. Type: "make" + +For example: + + mkdir build + cd build + ../configure + make + +This will now keep all generated files separate from the maintained +source code. + +-------------------------------------------------------------------------- + +Here are some notes on what is happening behind the scenes: + +* The configure script (if used) examines the options given + and runs various tests with the C compiler to create Makefile + from the Makefile.in template as well as autoconfig.h + +* The Makefile just sets up a few macros and then invokes the + real makefile in src/main.mk. The src/main.mk makefile is + automatically generated by a TCL script found at tools/makemake.tcl. + Do not edit src/main.mk directly. Update tools/makemake.tcl and + then rerun it. + +* The *.h header files are automatically generated using a program + called "makeheaders". Source code to the makeheaders program is + found in tools/makeheaders.c. Documentation is found in + tools/makeheaders.html. + +* Most *.c source files are preprocessed using a program called + "translate". The sources to translate are found in tools/translate.c. + A header comment in tools/translate.c explains in detail what it does. + +* The tools/mkindex.c program generates some C code that implements + static lookup tables. See the header comment in the source code + for details on what it does. + +Additional information on the build process is available from +http://fossil-scm.org/home/doc/trunk/www/makefile.wiki |
