]> git.sur5r.net Git - cc65/blobdiff - doc/compile.txt
Since we have now builtin search paths, we need to be able to forget them,
[cc65] / doc / compile.txt
index 30a2cf7c7a6055fe7fb9eeb69b006f845f493da5..5061d1ed299e1c654d3ad7982722dc80f26b4698 100644 (file)
@@ -5,8 +5,28 @@ Instructions for compiling cc65 and the ca65 binutils:
 
 Linux (and probably most other Unices)
 --------------------------------------
+                           
+Preconditions:
 
-You need the GNU C compiler. Enter the src/ directory and do a
+You need the GNU C Compiler, Perl and sgml-tools installed.
+
+The simple way:
+
+From the main directory, use
+
+        make -f make/gcc.mak
+
+to build all binaries, libraries and the docs. Use
+
+        make -f make/gcc.mak install
+
+to install the files. Check the makefile before doing so and adjust the PREFIX
+variable as you like it.
+
+
+Step by step:
+
+Enter the src/ directory and do a
 
                make -f make/gcc.mak
 
@@ -20,11 +40,16 @@ After that, you need to compile the libraries. Do
 
        cd libsrc; make
 
+HTML docs can be generated with
+
+        cd doc; make html
+
 That's it! Installation directories for the RPM packages are
 
-       /usr/bin                for the binaries
-       /usr/lib/cc65/include   for include files
-       /usr/lib/cc65/lib       for libraries and startup files
+       /usr/bin                        for the binaries
+       /usr/lib/cc65/include           for include files
+       /usr/lib/cc65/lib               for libraries and startup files
+        /usr/share/doc/cc65-<version>   for documentation
 
 When using these directories, you don't need to set the CC65_INC and
 CC65_LIB environment variables. You may also use the /usr/local tree
@@ -68,56 +93,77 @@ using DJGPP (add your system type to CFLAGS if needed):
 
 Here's my current batch file:
 
-cd cc65
-if exist .depend goto ahead1
-make -f make\gcc.mak
-:ahead1
+cd djgpp_v2\cc65
+
+if exist bin\nul goto ahead
+mkdir bin
+mkdir lib
+:ahead
+
+cd src\common
 make -f make\gcc.mak
-move *.exe ..\binutils
 
-cd ..\cl65
-if exist .depend goto ahead2
+cd ..\ar65
 make -f make\gcc.mak
-:ahead2
+del ar65
+strip ar65.exe
+move ar65.exe ..\..\bin
+
+cd ..\ca65
 make -f make\gcc.mak
-move *.exe ..\binutils
+del ca65
+strip ca65.exe
+move ca65.exe ..\..\bin
 
-cd ..\binutils\common
-if exist .depend goto ahead3
+cd ..\cc65
 make -f make\gcc.mak
-:ahead3
+del cc65
+strip cc65.exe
+move cc65.exe ..\..\bin
+
+cd ..\cl65
 make -f make\gcc.mak
+del cl65
+strip cl65.exe
+move cl65.exe ..\..\bin
 
-cd ..\ca65
-if exist .depend goto ahead4
+cd ..\da65
 make -f make\gcc.mak
-:ahead4
+del da65
+strip da65.exe
+move da65.exe ..\..\bin
+
+cd ..\grc
 make -f make\gcc.mak
-move *.exe ..
+del grc
+strip grc.exe
+move grc.exe ..\..\bin
 
 cd ..\ld65
-if exist .depend goto ahead5
-make -f make\gcc.mak
-:ahead5
 make -f make\gcc.mak
-move *.exe ..
+del ld65
+strip ld65.exe
+move ld65.exe ..\..\bin
 
-cd ..\ar65
-if exist .depend goto ahead6
-make -f make\gcc.mak
-:ahead6
+cd ..\od65
 make -f make\gcc.mak
-move *.exe ..
+del od65
+strip od65.exe
+move od65.exe ..\..\bin
+
+cd ..\..
 
-cd ..\..\lib\common
-make 'CFLAGS=-Oi -I../../include/'
+cd libsrc\common
+make "CC=cc65" "CFLAGS=-Osir -g -t none -I../../include" "AS=ca65"
+"AFLAGS=-t none"
 ar65 a common.lib *.o
-move common.lib ..
+move common.lib ..\..\lib
 
 cd ..\runtime
-make 'CFLAGS=-Oi -I../../include/'
+make "CC=cc65" "CFLAGS=-Osir -g -t none -I../../include" "AS=ca65"
+"AFLAGS=-t none"
 ar65 a runtime.lib *.o
-move runtime.lib ..
+move runtime.lib ..\..\lib
 
  --