diff --git a/changes b/CHANGES similarity index 100% rename from changes rename to CHANGES diff --git a/makefile b/makefile index a14a9a8a..4aa4eede 100644 --- a/makefile +++ b/makefile @@ -19,19 +19,17 @@ VOCPARAM = $(shell ./vocparam > voc.par) LIBNAME = VishapOberon LIBRARY = lib$(LIBNAME) -ifndef PREFIX -PREFIX = /opt/voc-$(RELEASE) -endif - -ifndef PREFIXLN -PREFIXLN = /opt/voc +ifndef PRF +PRF = "/opt" endif +PREFIX = $(PRF)/voc-$(RELEASE) +PREFIXLN = $(PRF)/voc CCOPT = -fPIC $(INCLUDEPATH) -g CC = cc $(CCOPT) -c CL = cc $(CCOPT) -LD = cc -shared -o $(LIBRARY).so +LD = cc -shared -lX11 -o $(LIBRARY).so # s is necessary to create index inside a archive ARCHIVE = ar rcs $(LIBRARY).a @@ -71,12 +69,15 @@ stage2: # cp src/par/voc.par.gnu.x86 voc.par # cp src/par/voc.par.gnu.armv6 voc.par # cp src/par/voc.par.gnu.armv7 voc.par + cp src/voc/prf.Mod_default src/voc/prf.Mod # this prepares modules necessary to build the compiler itself stage3: $(VOCSTATIC0) -siapxPS SYSTEM.Mod - $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod + $(VOCSTATIC0) -sPS prf.Mod $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files.Mod $(VOCSTATIC0) -sxPS OakFiles.Mod @@ -96,21 +97,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ - version.c extTools.c \ + oocOakStrings.c architecture.c prf.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ + extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o # build all library files stage6: @@ -249,7 +250,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o version.o architecture.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o prf.o version.o architecture.o @@ -265,9 +266,9 @@ clean: # rm_objects := rm $(wildcard *.o) # objects rm *.o + rm *.sym rm *.h rm *.c - rm *.sym rm *.a rm *.so diff --git a/makefile.darwin.clang.x86_64 b/makefile.darwin.clang.x86_64 index 6d15df01..33c55593 100644 --- a/makefile.darwin.clang.x86_64 +++ b/makefile.darwin.clang.x86_64 @@ -21,13 +21,13 @@ VOCPARAM = $(shell ./vocparam > voc.par) LIBNAME = VishapOberon LIBRARY = lib$(LIBNAME) -ifndef PREFIX -PREFIX = /opt/voc-$(RELEASE) +ifndef PRF +#PRF = "/opt" +PRF = "/Users/noch/local/voc" endif +PREFIX = $(PRF)/voc-$(RELEASE) +PREFIXLN = $(PRF)/voc -ifndef PREFIXLN -PREFIXLN = /opt/voc -endif CCOPT = -fPIC $(ADDITIONALFLAGS) $(INCLUDEPATH) -g @@ -74,12 +74,15 @@ stage2: # cp src/par/voc.par.gnu.x86 voc.par # cp src/par/voc.par.gnu.armv6 voc.par # cp src/par/voc.par.gnu.armv7 voc.par + cp src/voc/prf.Mod_default src/voc/prf.Mod # this prepares modules necessary to build the compiler itself stage3: $(VOCSTATIC0) -siapxPS SYSTEM.Mod $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod + $(VOCSTATIC0) -sPS prf.Mod $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files.Mod $(VOCSTATIC0) -sxPS OakFiles.Mod @@ -105,7 +108,7 @@ stage5: $(CL) voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ diff --git a/makefile.linux.gnuc.armv6j b/makefile.linux.gnuc.armv6j index afd7536a..337e769f 100644 --- a/makefile.linux.gnuc.armv6j +++ b/makefile.linux.gnuc.armv6j @@ -19,19 +19,17 @@ VOCPARAM = $(shell ./vocparam > voc.par) LIBNAME = VishapOberon LIBRARY = lib$(LIBNAME) -ifndef PREFIX -PREFIX = /opt/voc-$(RELEASE) -endif - -ifndef PREFIXLN -PREFIXLN = /opt/voc +ifndef PRF +PRF = "/opt" endif +PREFIX = $(PRF)/voc-$(RELEASE) +PREFIXLN = $(PRF)/voc CCOPT = -fPIC $(INCLUDEPATH) -g CC = cc $(CCOPT) -c CL = cc $(CCOPT) -LD = cc -shared -o $(LIBRARY).so +LD = cc -shared -lX11 -o $(LIBRARY).so # s is necessary to create index inside a archive ARCHIVE = ar rcs $(LIBRARY).a @@ -71,12 +69,15 @@ stage2: # cp src/par/voc.par.gnu.x86 voc.par # cp src/par/voc.par.gnu.armv6 voc.par # cp src/par/voc.par.gnu.armv7 voc.par + cp src/voc/prf.Mod_default src/voc/prf.Mod # this prepares modules necessary to build the compiler itself stage3: $(VOCSTATIC0) -siapxPS SYSTEM.Mod - $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod + $(VOCSTATIC0) -sPS prf.Mod $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files.Mod $(VOCSTATIC0) -sxPS OakFiles.Mod @@ -96,21 +97,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ - version.c extTools.c \ + oocOakStrings.c architecture.c prf.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ + extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o # build all library files stage6: @@ -249,7 +250,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o version.o architecture.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o prf.o version.o architecture.o @@ -265,11 +266,11 @@ clean: # rm_objects := rm $(wildcard *.o) # objects rm *.o - rm *.so + rm *.sym rm *.h rm *.c rm *.a - rm *.sym + rm *.so install: test -d $(PREFIX)/bin | mkdir -p $(PREFIX)/bin diff --git a/makefile.linux.gnuc.armv6j_hardfp b/makefile.linux.gnuc.armv6j_hardfp index 318f7ce7..a8a36698 100644 --- a/makefile.linux.gnuc.armv6j_hardfp +++ b/makefile.linux.gnuc.armv6j_hardfp @@ -19,19 +19,17 @@ VOCPARAM = $(shell ./vocparam > voc.par) LIBNAME = VishapOberon LIBRARY = lib$(LIBNAME) -ifndef PREFIX -PREFIX = /opt/voc-$(RELEASE) -endif - -ifndef PREFIXLN -PREFIXLN = /opt/voc +ifndef PRF +PRF = "/opt" endif +PREFIX = $(PRF)/voc-$(RELEASE) +PREFIXLN = $(PRF)/voc CCOPT = -fPIC $(INCLUDEPATH) -g CC = cc $(CCOPT) -c CL = cc $(CCOPT) -LD = cc -shared -o $(LIBRARY).so +LD = cc -shared -lX11 -o $(LIBRARY).so # s is necessary to create index inside a archive ARCHIVE = ar rcs $(LIBRARY).a @@ -71,12 +69,15 @@ stage2: # cp src/par/voc.par.gnu.x86 voc.par # cp src/par/voc.par.gnu.armv6 voc.par # cp src/par/voc.par.gnu.armv7 voc.par + cp src/voc/prf.Mod_default src/voc/prf.Mod # this prepares modules necessary to build the compiler itself stage3: $(VOCSTATIC0) -siapxPS SYSTEM.Mod - $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod + $(VOCSTATIC0) -sPS prf.Mod $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files.Mod $(VOCSTATIC0) -sxPS OakFiles.Mod @@ -96,21 +97,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ - version.c extTools.c \ + oocOakStrings.c architecture.c prf.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ + extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o # build all library files stage6: @@ -249,7 +250,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o version.o architecture.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o prf.o version.o architecture.o @@ -265,11 +266,11 @@ clean: # rm_objects := rm $(wildcard *.o) # objects rm *.o - rm *.so + rm *.sym rm *.h rm *.c rm *.a - rm *.sym + rm *.so install: test -d $(PREFIX)/bin | mkdir -p $(PREFIX)/bin diff --git a/makefile.linux.gnuc.armv7a_hardfp b/makefile.linux.gnuc.armv7a_hardfp index 62617c29..45f8f024 100644 --- a/makefile.linux.gnuc.armv7a_hardfp +++ b/makefile.linux.gnuc.armv7a_hardfp @@ -19,19 +19,17 @@ VOCPARAM = $(shell ./vocparam > voc.par) LIBNAME = VishapOberon LIBRARY = lib$(LIBNAME) -ifndef PREFIX -PREFIX = /opt/voc-$(RELEASE) -endif - -ifndef PREFIXLN -PREFIXLN = /opt/voc +ifndef PRF +PRF = "/opt" endif +PREFIX = $(PRF)/voc-$(RELEASE) +PREFIXLN = $(PRF)/voc CCOPT = -fPIC $(INCLUDEPATH) -g CC = cc $(CCOPT) -c CL = cc $(CCOPT) -LD = cc -shared -o $(LIBRARY).so +LD = cc -shared -lX11 -o $(LIBRARY).so # s is necessary to create index inside a archive ARCHIVE = ar rcs $(LIBRARY).a @@ -71,12 +69,15 @@ stage2: # cp src/par/voc.par.gnu.x86 voc.par # cp src/par/voc.par.gnu.armv6 voc.par # cp src/par/voc.par.gnu.armv7 voc.par + cp src/voc/prf.Mod_default src/voc/prf.Mod # this prepares modules necessary to build the compiler itself stage3: $(VOCSTATIC0) -siapxPS SYSTEM.Mod - $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod + $(VOCSTATIC0) -sPS prf.Mod $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files.Mod $(VOCSTATIC0) -sxPS OakFiles.Mod @@ -96,21 +97,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ - version.c extTools.c \ + oocOakStrings.c architecture.c prf.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ + extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o # build all library files stage6: @@ -249,7 +250,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o version.o architecture.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o prf.o version.o architecture.o @@ -265,11 +266,11 @@ clean: # rm_objects := rm $(wildcard *.o) # objects rm *.o - rm *.so + rm *.sym rm *.h rm *.c rm *.a - rm *.sym + rm *.so install: test -d $(PREFIX)/bin | mkdir -p $(PREFIX)/bin diff --git a/makefile.linux.gnuc.powerpc b/makefile.linux.gnuc.powerpc index 5f343f2f..c4b20b6f 100644 --- a/makefile.linux.gnuc.powerpc +++ b/makefile.linux.gnuc.powerpc @@ -19,19 +19,17 @@ VOCPARAM = $(shell ./vocparam > voc.par) LIBNAME = VishapOberon LIBRARY = lib$(LIBNAME) -ifndef PREFIX -PREFIX = /opt/voc-$(RELEASE) -endif - -ifndef PREFIXLN -PREFIXLN = /opt/voc +ifndef PRF +PRF = "/opt" endif +PREFIX = $(PRF)/voc-$(RELEASE) +PREFIXLN = $(PRF)/voc CCOPT = -fPIC $(INCLUDEPATH) -g CC = cc $(CCOPT) -c CL = cc $(CCOPT) -LD = cc -shared -o $(LIBRARY).so +LD = cc -shared -lX11 -o $(LIBRARY).so # s is necessary to create index inside a archive ARCHIVE = ar rcs $(LIBRARY).a @@ -71,12 +69,15 @@ stage2: # cp src/par/voc.par.gnu.x86 voc.par # cp src/par/voc.par.gnu.armv6 voc.par # cp src/par/voc.par.gnu.armv7 voc.par + cp src/voc/prf.Mod_default src/voc/prf.Mod # this prepares modules necessary to build the compiler itself stage3: $(VOCSTATIC0) -siapxPS SYSTEM.Mod - $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod + $(VOCSTATIC0) -sPS prf.Mod $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files.Mod $(VOCSTATIC0) -sxPS OakFiles.Mod @@ -96,21 +97,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ - version.c extTools.c \ + oocOakStrings.c architecture.c prf.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ + extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o # build all library files stage6: @@ -249,7 +250,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o version.o architecture.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o prf.o version.o architecture.o @@ -265,11 +266,11 @@ clean: # rm_objects := rm $(wildcard *.o) # objects rm *.o - rm *.so + rm *.sym rm *.h rm *.c rm *.a - rm *.sym + rm *.so install: test -d $(PREFIX)/bin | mkdir -p $(PREFIX)/bin diff --git a/makefile.linux.gnuc.x86 b/makefile.linux.gnuc.x86 index b6203342..3a841c8a 100644 --- a/makefile.linux.gnuc.x86 +++ b/makefile.linux.gnuc.x86 @@ -19,19 +19,17 @@ VOCPARAM = $(shell ./vocparam > voc.par) LIBNAME = VishapOberon LIBRARY = lib$(LIBNAME) -ifndef PREFIX -PREFIX = /opt/voc-$(RELEASE) -endif - -ifndef PREFIXLN -PREFIXLN = /opt/voc +ifndef PRF +PRF = "/opt" endif +PREFIX = $(PRF)/voc-$(RELEASE) +PREFIXLN = $(PRF)/voc CCOPT = -fPIC $(INCLUDEPATH) -g CC = cc $(CCOPT) -c CL = cc $(CCOPT) -LD = cc -shared -o $(LIBRARY).so +LD = cc -shared -lX11 -o $(LIBRARY).so # s is necessary to create index inside a archive ARCHIVE = ar rcs $(LIBRARY).a @@ -71,12 +69,15 @@ stage2: # cp src/par/voc.par.gnu.x86 voc.par # cp src/par/voc.par.gnu.armv6 voc.par # cp src/par/voc.par.gnu.armv7 voc.par + cp src/voc/prf.Mod_default src/voc/prf.Mod # this prepares modules necessary to build the compiler itself stage3: $(VOCSTATIC0) -siapxPS SYSTEM.Mod - $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod + $(VOCSTATIC0) -sPS prf.Mod $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files.Mod $(VOCSTATIC0) -sxPS OakFiles.Mod @@ -96,21 +97,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ - version.c extTools.c \ + oocOakStrings.c architecture.c prf.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ + extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o # build all library files stage6: @@ -249,7 +250,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o version.o architecture.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o prf.o version.o architecture.o @@ -265,11 +266,11 @@ clean: # rm_objects := rm $(wildcard *.o) # objects rm *.o - rm *.so + rm *.sym rm *.h rm *.c rm *.a - rm *.sym + rm *.so install: test -d $(PREFIX)/bin | mkdir -p $(PREFIX)/bin diff --git a/makefile.linux.gnuc.x86_64 b/makefile.linux.gnuc.x86_64 index 7ca60168..4aa4eede 100644 --- a/makefile.linux.gnuc.x86_64 +++ b/makefile.linux.gnuc.x86_64 @@ -19,19 +19,17 @@ VOCPARAM = $(shell ./vocparam > voc.par) LIBNAME = VishapOberon LIBRARY = lib$(LIBNAME) -ifndef PREFIX -PREFIX = /opt/voc-$(RELEASE) -endif - -ifndef PREFIXLN -PREFIXLN = /opt/voc +ifndef PRF +PRF = "/opt" endif +PREFIX = $(PRF)/voc-$(RELEASE) +PREFIXLN = $(PRF)/voc CCOPT = -fPIC $(INCLUDEPATH) -g CC = cc $(CCOPT) -c CL = cc $(CCOPT) -LD = cc -shared -o $(LIBRARY).so +LD = cc -shared -lX11 -o $(LIBRARY).so # s is necessary to create index inside a archive ARCHIVE = ar rcs $(LIBRARY).a @@ -71,12 +69,15 @@ stage2: # cp src/par/voc.par.gnu.x86 voc.par # cp src/par/voc.par.gnu.armv6 voc.par # cp src/par/voc.par.gnu.armv7 voc.par + cp src/voc/prf.Mod_default src/voc/prf.Mod # this prepares modules necessary to build the compiler itself stage3: $(VOCSTATIC0) -siapxPS SYSTEM.Mod - $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod + sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod + $(VOCSTATIC0) -sPS prf.Mod $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files.Mod $(VOCSTATIC0) -sxPS OakFiles.Mod @@ -96,21 +97,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ - version.c extTools.c \ + oocOakStrings.c architecture.c prf.c version.c Kernel.c Files.c OakFiles.c Reals.c CmdlnTexts.c \ + extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o + SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o # build all library files stage6: @@ -249,7 +250,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o version.o architecture.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o prf.o version.o architecture.o @@ -265,11 +266,11 @@ clean: # rm_objects := rm $(wildcard *.o) # objects rm *.o - rm *.so + rm *.sym rm *.h rm *.c rm *.a - rm *.sym + rm *.so install: test -d $(PREFIX)/bin | mkdir -p $(PREFIX)/bin diff --git a/ocat b/ocat index 99b7ba15..61f65e8f 100755 Binary files a/ocat and b/ocat differ diff --git a/showdef b/showdef index dd6536b5..a8fbd8d3 100755 Binary files a/showdef and b/showdef differ diff --git a/src/voc/prf.Mod b/src/voc/prf.Mod new file mode 100644 index 00000000..2f4d8f24 --- /dev/null +++ b/src/voc/prf.Mod @@ -0,0 +1,5 @@ +MODULE prf; + +CONST prefix* = "/opt"; + +END prf. diff --git a/src/voc/prf.Mod_default b/src/voc/prf.Mod_default new file mode 100644 index 00000000..2f4d8f24 --- /dev/null +++ b/src/voc/prf.Mod_default @@ -0,0 +1,5 @@ +MODULE prf; + +CONST prefix* = "/opt"; + +END prf. diff --git a/src/voc/version.Mod b/src/voc/version.Mod index 8b53f855..dfff575e 100644 --- a/src/voc/version.Mod +++ b/src/voc/version.Mod @@ -1,5 +1,5 @@ MODULE version; - IMPORT Strings := oocOakStrings, architecture; + IMPORT Strings := oocOakStrings, architecture, prf; CONST (* targets *) gnux86* = 0; gnux8664* = 1; gnuarmv6j* = 2; gnuarmv6jhardfp* = 3; gnuarmv7ahardfp* = 4; gnupowerpc* = 5; @@ -15,7 +15,8 @@ COPY(version, versionLong); Strings.Append (" ", versionLong); Strings.Append(date, versionLong); prefix := ""; - prefix0 := "/opt"; + (*prefix0 := "/opt";*) + COPY(prf.prefix, prefix0); COPY (prefix0, prefix); Strings.Append ("/voc-", prefix); Strings.Append(version, prefix); (* /opt/voc-1.0 *) diff --git a/voc b/voc index 03676c67..7a2e4239 100755 Binary files a/voc and b/voc differ