1PROGRAMS = nbc.exe
2VER = 1.2.1.r4
3DOBJECTS=uNXTClasses.o uPreprocess.o Parser10.o P10Build.o uNXCComp.o uRPGComp.o uRIC.o uRICComp.o uNBCCommon.o uNXTConstants.o uNBCInterface.o nbc.dpr
4DEFAULT_INCLUDE_DIR=.
5
6all:: $(DOBJECTS) $(PROGRAMS)
7
8clean::
9	rm -f *.o *.ppu *.rst *.compiled *.dcu nbc_preproc.inc
10
11realclean:: clean
12	rm -f $(PROGRAMS) mkdata.exe NBCCommonData.pas NXTDefsData.pas NXCDefsData.pas
13
14#PFLAGS=-S2cdghi -dRELEASE -OG1 -gl -vewnhi -l -Fu../ -Fu.
15
16# wince arm
17PFLAGS=-S2cdghi -dRELEASE -OG1 -TWinCE -Parm -gl -Xs -WG -va -vewnhi -l -Fu..\..\..\..\lazarus\lcl\units\arm-wince\ -Fu..\..\..\..\lazarus\lcl\units\arm-wince\wince\ -Fu..\..\..\..\lazarus\packager\units\arm-wince\ -Fu../ -Fu.
18PTOOLPREFIX=c:/lazarus/fpc/2.1.3/bin/i386-win32/
19PPC=$(PTOOLPREFIX)fpc.exe
20
21# Win32
22#PTOOLPREFIX=C:/lazarus/fpc/2.1.3/bin/i386-win32/
23#PPC=$(PTOOLPREFIX)ppc386.exe
24
25# Linux
26#PTOOLPREFIX=/usr/bin/
27#PPC=$(PTOOLPREFIX)ppc386
28
29# Mac OSX
30#PTOOLPREFIX=/usr/local/bin/
31#PPC=$(PTOOLPREFIX)ppcppc
32
33# how to link executable
34%.exe: %.dpr nbc_preproc.inc
35	$(PPC) $(PFLAGS) $< -o$@
36	strip $@
37
38# how to compile pas source
39%.o: %.pas mkdata.exe NBCCommonData.pas NXTDefsData.pas NXCDefsData.pas
40	$(PPC) $(PFLAGS) $< -o$@
41
42# how to create the include file
43nbc_preproc.inc:
44	echo '// '$@ > $@
45	echo 'const' >> $@
46	echo '  DEFAULT_INCLUDE_DIR = '\'$(DEFAULT_INCLUDE_DIR)\'';' >> $@
47	echo '  COMPILATION_TIMESTAMP = '\'`date`\'';' >> $@
48
49# how to create the mkdata utility
50mkdata.exe: mkdata.dpr
51	$(PPC) $(PFLAGS) $< -o$@
52	strip $@
53
54# how to create NBCCommonData.pas
55NBCCommonData.pas: NBCCommon.h
56	./mkdata $< $@ nbc_common_data
57
58# how to create NXTDefsData.pas
59NXTDefsData.pas: NXTDefs.h
60	./mkdata $< $@ nxt_defs_data
61
62# how to create NXCDefsData.pas
63NXCDefsData.pas: NXCDefs.h
64	./mkdata $< $@ nxc_defs_data
65
66