]> git.sur5r.net Git - cc65/commitdiff
Convert the watcom makefiles for use with wine under Linux
authorcuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Sun, 2 Nov 2003 21:46:00 +0000 (21:46 +0000)
committercuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Sun, 2 Nov 2003 21:46:00 +0000 (21:46 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@2598 b7a2c559-68d2-44c3-8de9-860c34a00d81

src/ar65/make/watcom.mak
src/ca65/make/watcom.mak
src/cc65/make/watcom.mak
src/cl65/make/watcom.mak
src/co65/make/watcom.mak
src/common/make/watcom.mak
src/da65/make/watcom.mak
src/grc/make/watcom.mak
src/ld65/make/watcom.mak
src/make/watcom.mak
src/od65/make/watcom.mak

index d333e0ab60a4dae8c56dca44e52a7b938fbae78f..c3b877fa0977f19e22655af84bd1eae494b129a2 100644 (file)
@@ -5,34 +5,50 @@
 # ------------------------------------------------------------------------------
 # Generic stuff
 
-AR     = WLIB
-LD     = WLINK
+# Environment variables for the watcom compiler
+export WATCOM  = c:\\watcom
+export INCLUDE = $(WATCOM)\\h
+
+# We will use the windows compiler under linux (define as empty for windows)
+WINE = wine --
+
+# Programs
+AR             = $(WINE) WLIB
+CC      = $(WINE) WCC386
+LD             = $(WINE) WLINK
+WSTRIP = $(WINE) WSTRIP
+
 LNKCFG  = ld.tmp
 
+# Program arguments
+CFLAGS  = -d1 -onatx -zp4 -5 -zq -w2 -i=..\\common
+
+# Target files
+EXE    = ar65.exe
+
+# Create NT programs by default
+ifndef TARGET
+TARGET = NT
+endif
+
 # --------------------- OS2 ---------------------
 ifeq ($(TARGET),OS2)
 SYSTEM  = os2v2
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # -------------------- DOS4G --------------------
 ifeq ($(TARGET),DOS32)
 SYSTEM  = dos4g
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # --------------------- NT ----------------------
 ifeq ($(TARGET),NT)
 SYSTEM  = nt
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
-# Add the include dir
-CFLAGS  += -i=..\common
-
 # ------------------------------------------------------------------------------
 # Implicit rules
 
@@ -56,35 +72,33 @@ OBJS =      add.obj         \
        objdata.obj     \
        objfile.obj
 
-LIBS = ..\common\common.lib
+LIBS = ../common/common.lib
 
 
 # ------------------------------------------------------------------------------
 # Main targets
 
-all:           ar65
-
-ar65:          ar65.exe
-
+all:           $(EXE)
 
 # ------------------------------------------------------------------------------
 # Other targets
 
 
-ar65.exe:      $(OBJS) $(LIBS)
-       @echo DEBUG ALL > $(LNKCFG)
-       @echo OPTION QUIET >> $(LNKCFG)
-       @echo NAME $@ >> $(LNKCFG)
-       @for %%i in ($(OBJS)) do echo FILE %%i >> $(LNKCFG)
-       @for %%i in ($(LIBS)) do echo LIBRARY %%i >> $(LNKCFG)
-       $(LD) system $(SYSTEM) @$(LNKCFG)
+$(EXE):        $(OBJS) $(LIBS)
+       @echo "DEBUG ALL" > $(LNKCFG)
+       @echo "OPTION QUIET" >> $(LNKCFG)
+       @echo "NAME $@" >> $(LNKCFG)
+       @for i in $(OBJS); do echo "FILE $${i}"; done >> $(LNKCFG)
+       @for i in $(LIBS); do echo "LIBRARY $${i}"; done >> $(LNKCFG)
+       @$(LD) system $(SYSTEM) @$(LNKCFG)
        @rm $(LNKCFG)
 
-
 clean:
-       @if exist *.obj del *.obj
-       @if exist ar65.exe del ar65.exe
+       @rm -f *~ core
+
+zap:   clean
+       @rm -f *.obj $(EXE)
 
 strip:
-       @-wstrip ar65.exe
+       @-$(WSTRIP) $(EXE)
 
index e1ce7f0cb50c36a3ba734a722df3b7d3c65a51f9..dc0ff3861ca78cb4f4ceec9a16e2ccc1a0190256 100644 (file)
@@ -23,6 +23,9 @@ LNKCFG  = ld.tmp
 # Program arguments
 CFLAGS  = -d1 -onatx -zp4 -5 -zq -w2 -i=..\\common
 
+# Target files
+EXE    = ca65.exe
+
 # Create NT programs by default
 ifndef TARGET
 TARGET = NT
@@ -95,16 +98,14 @@ LIBS = ../common/common.lib
 # ------------------------------------------------------------------------------
 # Main targets
 
-all:           ca65
-
-ca65:          ca65.exe
+all:           $(EXE)
 
 
 # ------------------------------------------------------------------------------
 # Other targets
 
 
-ca65.exe:      $(OBJS) $(LIBS)
+$(EXE):        $(OBJS) $(LIBS)
        @echo "DEBUG ALL" > $(LNKCFG)
        @echo "OPTION QUIET" >> $(LNKCFG)
        @echo "NAME $@" >> $(LNKCFG)
@@ -114,9 +115,11 @@ ca65.exe:  $(OBJS) $(LIBS)
        @rm $(LNKCFG)
 
 clean:
-       @if exist *.obj del *.obj
-       @if exist ca65.exe del ca65.exe
+       @rm -f *~ core
+
+zap:   clean
+       @rm -f *.obj $(EXE)
 
 strip:
-       @-$(WSTRIP) ca65.exe
+       @-$(WSTRIP) $(EXE)
 
index 20c6bb737fe7eb690ec79e5cb9fd971f048b57b7..101bf5c07fba8ddac0929e1532f997479fb3704e 100644 (file)
@@ -5,34 +5,50 @@
 # ------------------------------------------------------------------------------
 # Generic stuff
 
-AR     = WLIB
-LD     = WLINK
+# Environment variables for the watcom compiler
+export WATCOM  = c:\\watcom
+export INCLUDE = $(WATCOM)\\h
+
+# We will use the windows compiler under linux (define as empty for windows)
+WINE = wine --
+
+# Programs
+AR             = $(WINE) WLIB
+CC      = $(WINE) WCC386
+LD             = $(WINE) WLINK
+WSTRIP = $(WINE) WSTRIP
+
 LNKCFG  = ld.tmp
 
+# Program arguments
+CFLAGS  = -d1 -onatx -zp4 -5 -zq -w2 -i=..\\common
+
+# Target files
+EXE    = cc65.exe
+
+# Create NT programs by default
+ifndef TARGET
+TARGET = NT
+endif
+
 # --------------------- OS2 ---------------------
 ifeq ($(TARGET),OS2)
 SYSTEM  = os2v2
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # -------------------- DOS4G --------------------
 ifeq ($(TARGET),DOS32)
 SYSTEM  = dos4g
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # --------------------- NT ----------------------
 ifeq ($(TARGET),NT)
 SYSTEM  = nt
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
-# Add the include dir
-CFLAGS  += -i=..\common
-
 # ------------------------------------------------------------------------------
 # Implicit rules
 
@@ -41,7 +57,7 @@ CFLAGS  += -i=..\common
 
 
 # ------------------------------------------------------------------------------
-# All library OBJ files
+# All OBJ files
 
 OBJS = anonname.obj    \
        asmcode.obj     \
@@ -107,34 +123,34 @@ OBJS =    anonname.obj    \
         typeconv.obj    \
        util.obj
 
-LIBS = ..\common\common.lib
+LIBS = ../common/common.lib
+
 
 # ------------------------------------------------------------------------------
 # Main targets
 
-all:           cc65
-
-cc65:          cc65.exe
+all:           $(EXE)
 
 
 # ------------------------------------------------------------------------------
 # Other targets
 
 
-cc65.exe:      $(OBJS) $(LIBS)
-       @echo DEBUG ALL > $(LNKCFG)
-       @echo OPTION QUIET >> $(LNKCFG)
-       @echo NAME $@ >> $(LNKCFG)
-       @for %%i in ($(OBJS)) do echo FILE %%i >> $(LNKCFG)
-       @for %%i in ($(LIBS)) do echo LIBRARY %%i >> $(LNKCFG)
-       $(LD) system $(SYSTEM) @$(LNKCFG)
+$(EXE):        $(OBJS) $(LIBS)
+       @echo "DEBUG ALL" > $(LNKCFG)
+       @echo "OPTION QUIET" >> $(LNKCFG)
+       @echo "NAME $@" >> $(LNKCFG)
+       @for i in $(OBJS); do echo "FILE $${i}"; done >> $(LNKCFG)
+       @for i in $(LIBS); do echo "LIBRARY $${i}"; done >> $(LNKCFG)
+       @$(LD) system $(SYSTEM) @$(LNKCFG)
        @rm $(LNKCFG)
 
 clean:
-       @if exist *.obj del *.obj
-       @if exist cc65.exe del cc65.exe
+       @rm -f *~ core
 
-strip:
-       @-wstrip cc65.exe
+zap:   clean
+       @rm -f *.obj $(EXE)
 
+strip:
+       @-$(WSTRIP) $(EXE)
 
index b050b1dff0961a4f66b54d6be25f4c5df1a10ec2..1e224d86b7e68b4ff9a21fc0761c5ae4da0928bc 100644 (file)
@@ -5,34 +5,50 @@
 # ------------------------------------------------------------------------------
 # Generic stuff
 
-AR     = WLIB
-LD     = WLINK
+# Environment variables for the watcom compiler
+export WATCOM  = c:\\watcom
+export INCLUDE = $(WATCOM)\\h
+
+# We will use the windows compiler under linux (define as empty for windows)
+WINE = wine --
+
+# Programs
+AR             = $(WINE) WLIB
+CC      = $(WINE) WCC386
+LD             = $(WINE) WLINK
+WSTRIP = $(WINE) WSTRIP
+
 LNKCFG  = ld.tmp
 
+# Program arguments
+CFLAGS  = -d1 -onatx -zp4 -5 -zq -w2 -i=..\\common
+
+# Target files
+EXE    = cl65.exe
+
+# Create NT programs by default
+ifndef TARGET
+TARGET = NT
+endif
+
 # --------------------- OS2 ---------------------
 ifeq ($(TARGET),OS2)
 SYSTEM  = os2v2
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # -------------------- DOS4G --------------------
 ifeq ($(TARGET),DOS32)
 SYSTEM  = dos4g
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # --------------------- NT ----------------------
 ifeq ($(TARGET),NT)
 SYSTEM  = nt
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
-# Add the include dir
-CFLAGS  += -i=..\common
-
 # ------------------------------------------------------------------------------
 # Implicit rules
 
@@ -47,34 +63,34 @@ OBJS =      error.obj       \
        global.obj      \
        main.obj
 
-LIBS = ..\common\common.lib
+LIBS = ../common/common.lib
+
 
 # ------------------------------------------------------------------------------
 # Main targets
 
-all:           cl65
-
-cl65:          cl65.exe
+all:           $(EXE)
 
 
 # ------------------------------------------------------------------------------
 # Other targets
 
 
-cl65.exe:      $(OBJS) $(LIBS)
-       @echo DEBUG ALL > $(LNKCFG)
-       @echo OPTION QUIET >> $(LNKCFG)
-       @echo NAME $@ >> $(LNKCFG)
-       @for %%i in ($(OBJS)) do echo FILE %%i >> $(LNKCFG)
-       @for %%i in ($(LIBS)) do echo LIBRARY %%i >> $(LNKCFG)
-       $(LD) system $(SYSTEM) @$(LNKCFG)
+$(EXE):        $(OBJS) $(LIBS)
+       @echo "DEBUG ALL" > $(LNKCFG)
+       @echo "OPTION QUIET" >> $(LNKCFG)
+       @echo "NAME $@" >> $(LNKCFG)
+       @for i in $(OBJS); do echo "FILE $${i}"; done >> $(LNKCFG)
+       @for i in $(LIBS); do echo "LIBRARY $${i}"; done >> $(LNKCFG)
+       @$(LD) system $(SYSTEM) @$(LNKCFG)
        @rm $(LNKCFG)
 
 clean:
-       @if exist *.obj del *.obj
-       @if exist cl65.exe del cl65.exe
+       @rm -f *~ core
 
-strip:
-       @-wstrip cl65.exe
+zap:   clean
+       @rm -f *.obj $(EXE)
 
+strip:
+       @-$(WSTRIP) $(EXE)
 
index 401adea7f40dd9286149f23fc604705f446c1fe0..a9669af5a46e90497f74b6fc4d751e43b2230c7b 100644 (file)
@@ -5,34 +5,50 @@
 # ------------------------------------------------------------------------------
 # Generic stuff
 
-AR     = WLIB
-LD     = WLINK
+# Environment variables for the watcom compiler
+export WATCOM  = c:\\watcom
+export INCLUDE = $(WATCOM)\\h
+
+# We will use the windows compiler under linux (define as empty for windows)
+WINE = wine --
+
+# Programs
+AR             = $(WINE) WLIB
+CC      = $(WINE) WCC386
+LD             = $(WINE) WLINK
+WSTRIP = $(WINE) WSTRIP
+
 LNKCFG  = ld.tmp
 
+# Program arguments
+CFLAGS  = -d1 -onatx -zp4 -5 -zq -w2 -i=..\\common
+
+# Target files
+EXE    = co65.exe
+
+# Create NT programs by default
+ifndef TARGET
+TARGET = NT
+endif
+
 # --------------------- OS2 ---------------------
 ifeq ($(TARGET),OS2)
 SYSTEM  = os2v2
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # -------------------- DOS4G --------------------
 ifeq ($(TARGET),DOS32)
 SYSTEM  = dos4g
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # --------------------- NT ----------------------
 ifeq ($(TARGET),NT)
 SYSTEM  = nt
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
-# Add the include dir
-CFLAGS  += -i=..\common
-
 # ------------------------------------------------------------------------------
 # Implicit rules
 
@@ -51,34 +67,34 @@ OBJS =      convert.obj     \
         model.obj       \
         o65.obj
 
-LIBS = ..\common\common.lib
+LIBS = ../common/common.lib
 
 
 # ------------------------------------------------------------------------------
 # Main targets
 
-all:           co65
-
-co65:          co65.exe
+all:           $(EXE)
 
 
 # ------------------------------------------------------------------------------
 # Other targets
 
 
-co65.exe:      $(OBJS) $(LIBS)
-       @echo DEBUG ALL > $(LNKCFG)
-       @echo OPTION QUIET >> $(LNKCFG)
-       @echo NAME $@ >> $(LNKCFG)
-       @for %%i in ($(OBJS)) do echo FILE %%i >> $(LNKCFG)
-       @for %%i in ($(LIBS)) do echo LIBRARY %%i >> $(LNKCFG)
-       $(LD) system $(SYSTEM) @$(LNKCFG)
+$(EXE):        $(OBJS) $(LIBS)
+       @echo "DEBUG ALL" > $(LNKCFG)
+       @echo "OPTION QUIET" >> $(LNKCFG)
+       @echo "NAME $@" >> $(LNKCFG)
+       @for i in $(OBJS); do echo "FILE $${i}"; done >> $(LNKCFG)
+       @for i in $(LIBS); do echo "LIBRARY $${i}"; done >> $(LNKCFG)
+       @$(LD) system $(SYSTEM) @$(LNKCFG)
        @rm $(LNKCFG)
 
 clean:
-       @if exist *.obj del *.obj
-       @if exist co65.exe del co65.exe
+       @rm -f *~ core
+
+zap:   clean
+       @rm -f *.obj $(EXE)
 
 strip:
-       @-wstrip co65.exe
+       @-$(WSTRIP) $(EXE)
 
index f59878c9a246702a4d34d648398bf76f46f9b1cb..0147ddf12ee13ac131f2d6b6d683bee204988f27 100644 (file)
@@ -95,8 +95,11 @@ $(LIB): $(OBJS)
        @echo Done!
 
 clean:
-       @if exist *.obj del *.obj
-       @if exist $(LIB) del $(LIB)
+       @rm -f *~ core
+
+zap:   clean
+       @rm -f *.obj $(LIB)
+
 
 
 
index ce34bd6d026d689c2f74033550a27865036b3f59..12457dab9d75507c0dd946d8f89263a4edfb5503 100644 (file)
@@ -5,34 +5,50 @@
 # ------------------------------------------------------------------------------
 # Generic stuff
 
-AR     = WLIB
-LD     = WLINK
+# Environment variables for the watcom compiler
+export WATCOM  = c:\\watcom
+export INCLUDE = $(WATCOM)\\h
+
+# We will use the windows compiler under linux (define as empty for windows)
+WINE = wine --
+
+# Programs
+AR             = $(WINE) WLIB
+CC      = $(WINE) WCC386
+LD             = $(WINE) WLINK
+WSTRIP = $(WINE) WSTRIP
+
 LNKCFG  = ld.tmp
 
+# Program arguments
+CFLAGS  = -d1 -onatx -zp4 -5 -zq -w2 -i=..\\common
+
+# Target files
+EXE    = da65.exe
+
+# Create NT programs by default
+ifndef TARGET
+TARGET = NT
+endif
+
 # --------------------- OS2 ---------------------
 ifeq ($(TARGET),OS2)
 SYSTEM  = os2v2
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # -------------------- DOS4G --------------------
 ifeq ($(TARGET),DOS32)
 SYSTEM  = dos4g
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # --------------------- NT ----------------------
 ifeq ($(TARGET),NT)
 SYSTEM  = nt
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
-# Add the include dir
-CFLAGS  += -i=..\common
-
 # ------------------------------------------------------------------------------
 # Implicit rules
 
@@ -60,34 +76,34 @@ OBJS =      attrtab.obj     \
        scanner.obj
 
 
-LIBS = ..\common\common.lib
+LIBS = ../common/common.lib
 
 
 # ------------------------------------------------------------------------------
 # Main targets
 
-all:           da65
-
-da65:          da65.exe
+all:           $(EXE)
 
 
 # ------------------------------------------------------------------------------
 # Other targets
 
 
-da65.exe:      $(OBJS) $(LIBS)
-       @echo DEBUG ALL > $(LNKCFG)
-       @echo OPTION QUIET >> $(LNKCFG)
-       @echo NAME $@ >> $(LNKCFG)
-       @for %%i in ($(OBJS)) do echo FILE %%i >> $(LNKCFG)
-       @for %%i in ($(LIBS)) do echo LIBRARY %%i >> $(LNKCFG)
-       $(LD) system $(SYSTEM) @$(LNKCFG)
+$(EXE):        $(OBJS) $(LIBS)
+       @echo "DEBUG ALL" > $(LNKCFG)
+       @echo "OPTION QUIET" >> $(LNKCFG)
+       @echo "NAME $@" >> $(LNKCFG)
+       @for i in $(OBJS); do echo "FILE $${i}"; done >> $(LNKCFG)
+       @for i in $(LIBS); do echo "LIBRARY $${i}"; done >> $(LNKCFG)
+       @$(LD) system $(SYSTEM) @$(LNKCFG)
        @rm $(LNKCFG)
 
 clean:
-       @if exist *.obj del *.obj
-       @if exist *.obj del da65.exe
+       @rm -f *~ core
+
+zap:   clean
+       @rm -f *.obj $(EXE)
 
 strip:
-       @-wstrip da65.exe
+       @-$(WSTRIP) $(EXE)
 
index 91818665f5153b552dd0fd99e616866bf627f0a0..27dc57026f410582f908c0486e3ffb278515abf6 100644 (file)
@@ -5,34 +5,50 @@
 # ------------------------------------------------------------------------------
 # Generic stuff
 
-AR     = WLIB
-LD     = WLINK
+# Environment variables for the watcom compiler
+export WATCOM  = c:\\watcom
+export INCLUDE = $(WATCOM)\\h
+
+# We will use the windows compiler under linux (define as empty for windows)
+WINE = wine --
+
+# Programs
+AR             = $(WINE) WLIB
+CC      = $(WINE) WCC386
+LD             = $(WINE) WLINK
+WSTRIP = $(WINE) WSTRIP
+
 LNKCFG  = ld.tmp
 
+# Program arguments
+CFLAGS  = -d1 -onatx -zp4 -5 -zq -w2 -i=..\\common
+
+# Target files
+EXE    = grc.exe
+
+# Create NT programs by default
+ifndef TARGET
+TARGET = NT
+endif
+
 # --------------------- OS2 ---------------------
 ifeq ($(TARGET),OS2)
 SYSTEM  = os2v2
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # -------------------- DOS4G --------------------
 ifeq ($(TARGET),DOS32)
 SYSTEM  = dos4g
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # --------------------- NT ----------------------
 ifeq ($(TARGET),NT)
 SYSTEM  = nt
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
-# Add the include dir
-CFLAGS  += -i=..\common
-
 # ------------------------------------------------------------------------------
 # Implicit rules
 
@@ -45,36 +61,34 @@ CFLAGS  += -i=..\common
 
 OBJS =         grc.obj
 
-LIBS = ..\common\common.lib
+LIBS = ../common/common.lib
+
 
 # ------------------------------------------------------------------------------
 # Main targets
 
-all:           grc
-
-.PHONY:         grc
-
-grc:           grc.exe
+all:           $(EXE)
 
 
 # ------------------------------------------------------------------------------
 # Other targets
 
 
-grc.exe:       $(OBJS) $(LIBS)
-       @echo DEBUG ALL > $(LNKCFG)
-       @echo OPTION QUIET >> $(LNKCFG)
-       @echo NAME $@ >> $(LNKCFG)
-       @for %%i in ($(OBJS)) do echo FILE %%i >> $(LNKCFG)
-       @for %%i in ($(LIBS)) do echo LIBRARY %%i >> $(LNKCFG)
-       $(LD) system $(SYSTEM) @$(LNKCFG)
+$(EXE):        $(OBJS) $(LIBS)
+       @echo "DEBUG ALL" > $(LNKCFG)
+       @echo "OPTION QUIET" >> $(LNKCFG)
+       @echo "NAME $@" >> $(LNKCFG)
+       @for i in $(OBJS); do echo "FILE $${i}"; done >> $(LNKCFG)
+       @for i in $(LIBS); do echo "LIBRARY $${i}"; done >> $(LNKCFG)
+       @$(LD) system $(SYSTEM) @$(LNKCFG)
        @rm $(LNKCFG)
 
 clean:
-       @if exist *.obj del *.obj
-       @if exist grc.exe del grc.exe
+       @rm -f *~ core
 
-strip:
-       @-wstrip grc.exe
+zap:   clean
+       @rm -f *.obj $(EXE)
 
+strip:
+       @-$(WSTRIP) $(EXE)
 
index 4e452785e59dfde185da75e991fb4ef3701ce238..fdc16cc8400a73eae8cbca4a655398484fe9ae03 100644 (file)
@@ -5,34 +5,50 @@
 # ------------------------------------------------------------------------------
 # Generic stuff
 
-AR     = WLIB
-LD     = WLINK
+# Environment variables for the watcom compiler
+export WATCOM  = c:\\watcom
+export INCLUDE = $(WATCOM)\\h
+
+# We will use the windows compiler under linux (define as empty for windows)
+WINE = wine --
+
+# Programs
+AR             = $(WINE) WLIB
+CC      = $(WINE) WCC386
+LD             = $(WINE) WLINK
+WSTRIP = $(WINE) WSTRIP
+
 LNKCFG  = ld.tmp
 
+# Program arguments
+CFLAGS  = -d1 -onatx -zp4 -5 -zq -w2 -i=..\\common
+
+# Target files
+EXE    = ld65.exe
+
+# Create NT programs by default
+ifndef TARGET
+TARGET = NT
+endif
+
 # --------------------- OS2 ---------------------
 ifeq ($(TARGET),OS2)
 SYSTEM  = os2v2
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # -------------------- DOS4G --------------------
 ifeq ($(TARGET),DOS32)
 SYSTEM  = dos4g
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # --------------------- NT ----------------------
 ifeq ($(TARGET),NT)
 SYSTEM  = nt
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
-# Add the include dir
-CFLAGS  += -i=..\common
-
 # ------------------------------------------------------------------------------
 # Implicit rules
 
@@ -72,35 +88,34 @@ OBJS =      asserts.obj     \
         spool.obj       \
        tgtcfg.obj
 
-LIBS = ..\common\common.lib
+LIBS = ../common/common.lib
 
 
 # ------------------------------------------------------------------------------
 # Main targets
 
-all:           ld65
-
-ld65:          ld65.exe
+all:           $(EXE)
 
 
 # ------------------------------------------------------------------------------
 # Other targets
 
 
-ld65.exe:      $(OBJS) $(LIBS)
-       @echo DEBUG ALL > $(LNKCFG)
-       @echo OPTION QUIET >> $(LNKCFG)
-       @echo NAME $@ >> $(LNKCFG)
-       @for %%i in ($(OBJS)) do echo FILE %%i >> $(LNKCFG)
-       @for %%i in ($(LIBS)) do echo LIBRARY %%i >> $(LNKCFG)
-       $(LD) system $(SYSTEM) @$(LNKCFG)
+$(EXE):        $(OBJS) $(LIBS)
+       @echo "DEBUG ALL" > $(LNKCFG)
+       @echo "OPTION QUIET" >> $(LNKCFG)
+       @echo "NAME $@" >> $(LNKCFG)
+       @for i in $(OBJS); do echo "FILE $${i}"; done >> $(LNKCFG)
+       @for i in $(LIBS); do echo "LIBRARY $${i}"; done >> $(LNKCFG)
+       @$(LD) system $(SYSTEM) @$(LNKCFG)
        @rm $(LNKCFG)
 
-
 clean:
-       @if exist *.obj del *.obj
-       @if exist *.obj del ld65.exe
+       @rm -f *~ core
+
+zap:   clean
+       @rm -f *.obj $(EXE)
 
 strip:
-       @-wstrip ld65.exe
+       @-$(WSTRIP) $(EXE)
 
index b416275f197604f27db09cb95e1f117d60d9f1e7..084bc04da8fef297617813360a64e5317b0e6b7a 100644 (file)
@@ -17,21 +17,24 @@ SUBDIRS =           \
 all:   nt
 
 
-nt:
-       for %%i in ($(SUBDIRS)) do $(MAKE) TARGET=NT -C %%i -f make\watcom.mak
+nt:                                                              
+       for i in $(SUBDIRS); do $(MAKE) TARGET=NT -C $${i} -f make/watcom.mak; done
 
 
 dos:
-       for %%i in ($(SUBDIRS)) do $(MAKE) TARGET=DOS32 -C %%i -f make\watcom.mak
+       for i in $(SUBDIRS); do $(MAKE) TARGET=DOS32 -C $${i} -f make/watcom.mak; done
 
 os2:
-       for %%i in ($(SUBDIRS)) do $(MAKE) TARGET=OS2 -C %%i -f make\watcom.mak
+       for i in $(SUBDIRS); do $(MAKE) TARGET=OS2 -C $${i} -f make/watcom.mak; done
 
 clean:
-       for %%i in ($(SUBDIRS)) do $(MAKE) -C %%i -f make\watcom.mak clean
+       for i in $(SUBDIRS); do $(MAKE) -C $${i} -f make/watcom.mak clean; done
+
+zap:
+       for i in $(SUBDIRS); do $(MAKE) -C $${i} -f make/watcom.mak zap; done
 
 strip:
-       for %%i in ($(SUBDIRS)) do $(MAKE) -C %%i -f make\watcom.mak strip
+       for i in $(SUBDIRS); do $(MAKE) -C $${i} -f make/watcom.mak strip; done
 
 
 
index 0cd38a28ae1bb517a8b21db057c26c3041d66df5..f5729fef2a49092fb018653bd1873cec7074e8d7 100644 (file)
@@ -5,34 +5,50 @@
 # ------------------------------------------------------------------------------
 # Generic stuff
 
-AR     = WLIB
-LD     = WLINK
+# Environment variables for the watcom compiler
+export WATCOM  = c:\\watcom
+export INCLUDE = $(WATCOM)\\h
+
+# We will use the windows compiler under linux (define as empty for windows)
+WINE = wine --
+
+# Programs
+AR             = $(WINE) WLIB
+CC      = $(WINE) WCC386
+LD             = $(WINE) WLINK
+WSTRIP = $(WINE) WSTRIP
+
 LNKCFG  = ld.tmp
 
+# Program arguments
+CFLAGS  = -d1 -onatx -zp4 -5 -zq -w2 -i=..\\common
+
+# Target files
+EXE    = od65.exe
+
+# Create NT programs by default
+ifndef TARGET
+TARGET = NT
+endif
+
 # --------------------- OS2 ---------------------
 ifeq ($(TARGET),OS2)
 SYSTEM  = os2v2
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # -------------------- DOS4G --------------------
 ifeq ($(TARGET),DOS32)
 SYSTEM  = dos4g
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
 # --------------------- NT ----------------------
 ifeq ($(TARGET),NT)
 SYSTEM  = nt
-CC      = WCC386
-CFLAGS  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
+CFLAGS  += -bt=$(TARGET)
 endif
 
-# Add the include dir
-CFLAGS  += -i=..\common
-
 # ------------------------------------------------------------------------------
 # Implicit rules
 
@@ -41,7 +57,7 @@ CFLAGS  += -i=..\common
 
 
 # ------------------------------------------------------------------------------
-# All library OBJ files
+# All OBJ files
 
 OBJS =         dump.obj        \
        error.obj       \
@@ -49,36 +65,34 @@ OBJS =      dump.obj        \
        global.obj      \
        main.obj
 
-LIBS = ..\common\common.lib
+LIBS = ../common/common.lib
 
 
 # ------------------------------------------------------------------------------
 # Main targets
 
-all:           od65
-
-.PHONY:         od65
-
-od65:          od65.exe
+all:           $(EXE)
 
 
 # ------------------------------------------------------------------------------
 # Other targets
 
 
-od65.exe:      $(OBJS) $(LIBS)
-       @echo DEBUG ALL > $(LNKCFG)
-       @echo OPTION QUIET >> $(LNKCFG)
-       @echo NAME $@ >> $(LNKCFG)
-       @for %%i in ($(OBJS)) do echo FILE %%i >> $(LNKCFG)
-       @for %%i in ($(LIBS)) do echo LIBRARY %%i >> $(LNKCFG)
-       $(LD) system $(SYSTEM) @$(LNKCFG)
+$(EXE):        $(OBJS) $(LIBS)
+       @echo "DEBUG ALL" > $(LNKCFG)
+       @echo "OPTION QUIET" >> $(LNKCFG)
+       @echo "NAME $@" >> $(LNKCFG)
+       @for i in $(OBJS); do echo "FILE $${i}"; done >> $(LNKCFG)
+       @for i in $(LIBS); do echo "LIBRARY $${i}"; done >> $(LNKCFG)
+       @$(LD) system $(SYSTEM) @$(LNKCFG)
        @rm $(LNKCFG)
 
 clean:
-       @if exist *.obj del *.obj
-       @if exist od65.exe del od65.exe
+       @rm -f *~ core
+
+zap:   clean
+       @rm -f *.obj $(EXE)
 
 strip:
-       @-wstrip od65.exe
+       @-$(WSTRIP) $(EXE)