1
0
mirror of https://github.com/prirun/p50em.git synced 2026-04-05 04:33:23 +00:00

Use current hg rev when building

This commit is contained in:
Jim
2011-08-18 20:58:18 -04:00
parent aba2688490
commit 6b8abd3a8b
2 changed files with 29 additions and 20 deletions

4
em.c
View File

@@ -1,5 +1,3 @@
#define EMULATOR_VERSION 104
/* Pr1me Computer emulator, Jim Wilcoxson (prirun@gmail.com), April 4, 2005
Copyright (C) 2005-2007, Jim Wilcoxson. All Rights Reserved.
@@ -4381,7 +4379,7 @@ main (int argc, char **argv) {
struct timeval boot_tv;
struct timezone tz;
printf("[Prime Emulator ver %d %s]\n", EMULATOR_VERSION, __DATE__);
printf("[Prime Emulator ver %s %s]\n", REV, __DATE__);
if (argc > 1 && (strcmp(argv[1],"--version") == 0)) {
exit(0);
}

View File

@@ -1,40 +1,51 @@
# makefile to create various emulator builds
# Targets: em debug trace hobby dongle lmserver magrst
# Note: -arch ppc requires /Developer/SDKs/MacOSX10.4u.sdk
em:
cc -arch ppc -DNOTRACE -DFAST -DNOMEM -O -c em.c -fobey-inline -mdynamic-no-pic -I../dongle/mx/ppc/api;g++ -arch ppc -o em em.o ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
REV=${shell hg id -n}
.PHONY: em debug trace fixed hobby dongle lmserver magrst
em: # production
cc -arch ppc -DREV=\"${REV}\" -DNOTRACE -DFAST -DNOMEM -O -c em.c -fobey-inline -mdynamic-no-pic -I../dongle/mx/ppc/api;g++ -arch ppc -o em em.o ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
strip em
rm em.o
debug:
cc -arch ppc -DNOREGS -g -O0 -DNOTRACE -DFAST -c em.c -fobey-inline -mdynamic-no-pic -I../dongle/mx/ppc/api;g++ -arch ppc -o em em.o ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
debug: # gdb
cc -arch ppc -DREV=\"${REV}\" -DNOREGS -g -O0 -DNOTRACE -DFAST -c em.c -fobey-inline -mdynamic-no-pic -I../dongle/mx/ppc/api;g++ -arch ppc -o em em.o ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
rm em.o
trace:
cc -arch ppc -DNOREGS -g -O0 -DFAST -c em.c -fobey-inline -mdynamic-no-pic -I../dongle/mx/ppc/api;g++ -arch ppc -o em em.o ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
trace: # tracing + gdb
cc -arch ppc -DREV=\"${REV}\" -DNOREGS -g -O0 -DFAST -c em.c -fobey-inline -mdynamic-no-pic -I../dongle/mx/ppc/api;g++ -arch ppc -o em em.o ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
fixed:
cc -arch ppc -DFIXEDCLOCK -DNOIDLE -DNOREGS -g -O0 -DFAST -c em.c -fobey-inline -mdynamic-no-pic -I../dongle/mx/ppc/api;g++ -arch ppc -o em em.o ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
fixed: # fixed clock rate, gdb
cc -arch ppc -DREV=\"${REV}\" -DFIXEDCLOCK -DNOIDLE -DNOREGS -g -O0 -DFAST -c em.c -fobey-inline -mdynamic-no-pic -I../dongle/mx/ppc/api;g++ -arch ppc -o em em.o ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
rm em.o
hobby:
cc -arch ppc -DHOBBY -DNOTRACE -DFAST -O em.c -fobey-inline -mdynamic-no-pic -o em
hobby: # hobby (limited: no amlc, 1 disk drive up to 160MB, no PNC)
cc -arch ppc -DREV=\"${REV}\" -DHOBBY -DNOTRACE -DFAST -O em.c -fobey-inline -mdynamic-no-pic -o em
strip em
dongle:
cc -arch ppc -c dongle.c -I../dongle/mx/ppc/api;g++ -arch ppc -o dongle dongle.o ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
dongle: # utility to program a dongle
cc -arch ppc -DREV=\"${REV}\" -c dongle.c -I../dongle/mx/ppc/api;g++ -arch ppc -o dongle dongle.o ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
rm dongle.o
lmserver:
cc -arch ppc -c lmserver.c -I../dongle/mx/ppc/api;g++ -arch ppc lmserver.o -o lmserver ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
lmserver: # license server
cc -arch ppc -DREV=\"${REV}\" -c lmserver.c -I../dongle/mx/ppc/api;g++ -arch ppc lmserver.o -o lmserver ../dongle/mx/ppc/api/libmxmac260.a -framework IOKit -framework CoreFoundation
rm lmserver.o
magrst:
cc -arch ppc -o magrst magrst.c istext.c
magrst: # Unix version of Prime's magrst
cc -arch ppc -DREV=\"${REV}\" -o magrst magrst.c istext.c