summaryrefslogtreecommitdiff
path: root/BUILD.txt
diff options
context:
space:
mode:
authorcashmere <cashmere@autistici.org>2026-09-04 09:05:24 +0200
committercashmere <cashmere@autistici.org>2026-09-04 09:05:24 +0200
commit4f49b16079b27d7ce633619e4cddfdf2bffbc952 (patch)
treec296c1e7f3c3e2f6859c6d3a1b1b208779b89679 /BUILD.txt
downloadrelic-master.tar.gz
initial commitHEADmaster
Diffstat (limited to 'BUILD.txt')
-rw-r--r--BUILD.txt78
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