[freem-dev] FreeM 0.1.6 now builds cleanly!
John P. Willis
jpw at coherent-logic.com
Mon Mar 2 09:13:02 MST 2020
Hello all,
FreeM 0.1.6 now builds cleanly with the default Makefile,
and produces no compiler warnings! This means we have cleared
our first hurdle towards satisfying Shalom's conditions for the
general public release of FreeM.
Some of this is a little hacky: we need to replace my libfill.h
workaround (which mostly deals with forward declarations for functions
normally in <stdlib.h>. This will involve renaming the "random"
global variable to something unique, as stdlib.h brings in the
random() function, causing a naming clash.
Once this is done, I'd like to move forward on introducing -Wall
to CFLAGS in src/Makefile so we can really get persnickety. From this
point forward, the expectation is that no new code will introduce
new compiler warnings. Future builds that produce warnings using
the current Makefile (without -Wall in CFLAGS) will be considered
broken.
Below is the latest build output:
jpw at hesperos:~/development/freem$ make clean && make
(cd bin; make clean)
make[1]: Entering directory '/home/jpw/development/freem/bin'
rm -f gcompact gfix gl glocks grestore gverify mumps
make[1]: Leaving directory '/home/jpw/development/freem/bin'
(cd src; make clean)
make[1]: Entering directory '/home/jpw/development/freem/src'
rm -f core tags version version.[ho]
rm -f gcompact gfix gl glocks grestore gverify mumps compact.o fix.o gl.o locks.o mumps.o restore.o verify.o mumps.a xecline.o expr.o symtab.o ssvn.o ssvn_character.o ssvn_device.o ssvn_display.o ssvn_event.o ssvn_global.o ssvn_job.o ssvn_lock.o ssvn_routine.o ssvn_system.o ssvn_window.o ssvn_z.o global.o operator.o service.o strings.o views.o
make[1]: Leaving directory '/home/jpw/development/freem/src'
rm -rf namespace
rm -f mlib/^%E mlib/^%SYS
rm -f mak.log
(cd src; make install)
make[1]: Entering directory '/home/jpw/development/freem/src'
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o version.o version.c
gcc version.o -o version
./version > version.h
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o compact.o compact.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o xecline.o xecline.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o expr.o expr.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o symtab.o symtab.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn.o ssvn.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_character.o ssvn_character.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_device.o ssvn_device.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_display.o ssvn_display.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_event.o ssvn_event.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_global.o ssvn_global.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_job.o ssvn_job.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_lock.o ssvn_lock.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_routine.o ssvn_routine.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_system.o ssvn_system.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_window.o ssvn_window.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o ssvn_z.o ssvn_z.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o global.o global.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o operator.o operator.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o service.o service.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o strings.o strings.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o views.o views.c
ar rv mumps.a xecline.o expr.o symtab.o ssvn.o ssvn_character.o ssvn_device.o ssvn_display.o ssvn_event.o ssvn_global.o ssvn_job.o ssvn_lock.o ssvn_routine.o ssvn_system.o ssvn_window.o ssvn_z.o global.o operator.o service.o strings.o views.o
ar: creating mumps.a
a - xecline.o
a - expr.o
a - symtab.o
a - ssvn.o
a - ssvn_character.o
a - ssvn_device.o
a - ssvn_display.o
a - ssvn_event.o
a - ssvn_global.o
a - ssvn_job.o
a - ssvn_lock.o
a - ssvn_routine.o
a - ssvn_system.o
a - ssvn_window.o
a - ssvn_z.o
a - global.o
a - operator.o
a - service.o
a - strings.o
a - views.o
ranlib mumps.a
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG compact.o mumps.a -o gcompact
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o fix.o fix.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG fix.o mumps.a -o gfix
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o gl.o gl.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG gl.o mumps.a -o gl
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o locks.o locks.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG locks.o mumps.a -o glocks
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o restore.o restore.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG restore.o mumps.a -o grestore
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o verify.o verify.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG verify.o mumps.a -o gverify
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG -c -o mumps.o mumps.c
gcc -g -O0 -DHACK_NOXLATE -DUSE_GETOPT -DDEBUG_GBL -DNEWSTACK -DSSVN_DEBUG mumps.o mumps.a -o mumps
mv gcompact gfix gl glocks grestore gverify mumps ../bin
make[1]: Leaving directory '/home/jpw/development/freem/src'
Best,
-jpw
/*
* John P. Willis, CEO
* Coherent Logic Development LLC
* Solutions: Everywhere
*
* 425 S. Telshor Blvd. Ste. 202
* Las Cruces, NM 88011
*
* Tel: 575.520.9542
* Fax: 575.449.4122
*
* jpw at coherent-logic.com
* http://www.coherent-logic.com/
*
*/
More information about the freem-dev
mailing list