ChangeLog: 19990621-00:37
This commit is contained in:
@@ -1,3 +1,47 @@
|
||||
19990621-00:37 Ryszard Glab <rglab@imid.med.pl>
|
||||
* config/dos/watcom.cf
|
||||
* changed invocation of 'echo' command to overcome problems with
|
||||
too small space for environment variables.
|
||||
Note also that it is possible that you will have to increase this
|
||||
space at DOS startup (for example add
|
||||
SHELL=c:\command.com c:\ /E:2048 /P
|
||||
to config.sys)
|
||||
* removed some variables that can be expanded directly
|
||||
|
||||
* config/dos/global.cf
|
||||
* all '\' are now replaced with '/' in COMSPEC variable to shell from
|
||||
make utility succesully
|
||||
+ added check to not include this file recursively
|
||||
|
||||
* config/dos/djgpp.cf
|
||||
* removed some unnecessary data
|
||||
|
||||
* config/linux/gcc.cf
|
||||
* created executables have no extension now
|
||||
|
||||
* config/win32/gcc.cf
|
||||
* config/win32/msvc.cf
|
||||
+ added missing CC_IN variable
|
||||
|
||||
* config/c.cf
|
||||
* config/global.cf
|
||||
* config/lib.cf
|
||||
* config/rules.cf
|
||||
+ added dependency on header files for YACC and LEX sources
|
||||
* some rules or variables got clarified
|
||||
|
||||
* source/compiler/Makefile
|
||||
+ added dependency on header files
|
||||
|
||||
* include/Makefile
|
||||
+ added missing hbpp.h
|
||||
|
||||
* makewat.env, makefile.wat
|
||||
- removed from repository - replaced by GNU make (dos/watcom.cf)
|
||||
|
||||
* makefile.gcc, readmake.txt, tests/tests.mk
|
||||
- removed from repository - replaced by GNU make (gcc.cf)
|
||||
|
||||
19990620-23:40 CET Victor Szel <info@szelvesz.hu>
|
||||
* source/compiler/harbour.y
|
||||
Finished the required modifications for the PCODE
|
||||
|
||||
@@ -13,24 +13,25 @@ YACC_H_TMP = $(YACC_C:.c=.h)
|
||||
YACC_H = y_tab.h
|
||||
YACC_OUTPUT = $(YACC_C:.c=.out)
|
||||
YACC_OBJ = $(YACC_C:.c=$(OBJ_EXT))
|
||||
YACC_HB_H := $(foreach h, $(YACC_HEADERS), $(HB_INC_DIR)/$(h))
|
||||
endif
|
||||
|
||||
ifdef LEX_SOURCE
|
||||
LEX_BASE = $(LEX_SOURCE:.l=)
|
||||
LEX_C = $(LEX_BASE)l.c
|
||||
LEX_OBJ = $(LEX_C:.c=$(OBJ_EXT))
|
||||
LEX_HB_H := $(foreach h, $(LEX_HEADERS), $(HB_INC_DIR)/$(h))
|
||||
endif
|
||||
|
||||
ALL_C_OBJS = $(C_OBJS) $(MAIN_OBJ) $(YACC_OBJ) $(LEX_OBJ)
|
||||
|
||||
|
||||
$(YACC_OBJ) : $(YACC_C)
|
||||
|
||||
$(YACC_C) : ../../$(YACC_SOURCE)
|
||||
$(YACC) $(YACC_FLAGS) -o$@ $?
|
||||
$(YACC_C) : ../../$(YACC_SOURCE) $(YACC_HB_H)
|
||||
$(YACC) $(YACC_FLAGS) -o$@ $<
|
||||
|
||||
|
||||
$(LEX_OBJ) : $(LEX_C)
|
||||
|
||||
$(LEX_C) : ../../$(LEX_SOURCE)
|
||||
$(LEX) $(LEX_FLAGS) -o$@ $?
|
||||
$(LEX_C) : ../../$(LEX_SOURCE) $(LEX_HB_H)
|
||||
$(LEX) $(LEX_FLAGS) -o$@ $<
|
||||
|
||||
@@ -8,8 +8,8 @@ ifeq ($(DIRS),) # Empty directory list
|
||||
DIR_RULE =\
|
||||
@echo Done
|
||||
else
|
||||
DIR_LIST = $(subst /,\,$(DIRS))
|
||||
DIR_MAKE = $(subst /,\,$(MK))
|
||||
DIR_LIST := $(subst /,\,$(DIRS))
|
||||
DIR_MAKE := $(subst /,\,$(MK))
|
||||
DIR_RULE =\
|
||||
$(COMSPEC) /C FOR %d IN ($(DIR_LIST)) DO $(DIR_MAKE) -C %d $@
|
||||
endif
|
||||
|
||||
@@ -12,35 +12,36 @@ LIB_EXT = .a
|
||||
CC = gcc
|
||||
CC_IN = -c
|
||||
CC_OUT = -o
|
||||
CPPFLAGS = -DDEBUG -I. -I$(HB_INC_DIR)
|
||||
CFLAGS = -Wall -g
|
||||
CPPFLAGS = -I. -I$(HB_INC_DIR)
|
||||
CFLAGS = -Wall
|
||||
|
||||
LD = gcc
|
||||
LD_OUT = -o
|
||||
ifdef HB_LIB_DIR
|
||||
LDFLAGS = -L$(HB_LIB_DIR)
|
||||
endif
|
||||
LINKLIBS = $(foreach lib, $(LIBS), -l$(lib))
|
||||
LINKLIBS := $(foreach lib, $(LIBS), -l$(lib))
|
||||
# LINKLIBS += -lm
|
||||
|
||||
#Note: The empty line below HAVE TO exist!
|
||||
# Note: The empty line directly before 'endef' HAVE TO exist!
|
||||
# It causes that every echo command will be separated by LF
|
||||
define lib_object
|
||||
echo ADDMOD $(file) >> __lib__.tmp
|
||||
|
||||
endef
|
||||
|
||||
# We have to use script to overcome the DOS limit of max 128 characters
|
||||
# in commmand line
|
||||
define create_library
|
||||
echo CREATE $@ > __lib__.tmp
|
||||
$(foreach file, $^, $(lib_object))
|
||||
echo SAVE >> __lib__.tmp
|
||||
echo END >> __lib__.tmp
|
||||
$(AR) -M < __lib__.tmp
|
||||
del __lib__.tmp
|
||||
endef
|
||||
|
||||
AR = ar
|
||||
ARFLAGS =
|
||||
#AR_RULE = $(AR) $(ARFLAGS) r $@ $^ || $(RM) $@
|
||||
AR_RULE = $(create_library)
|
||||
|
||||
include $(TOP)$(ROOT)config/rules.cf
|
||||
|
||||
@@ -2,24 +2,30 @@
|
||||
# $Id$
|
||||
#
|
||||
|
||||
ifndef MK
|
||||
all : first
|
||||
|
||||
# There is a conflict with the use of '\' and '/' characters
|
||||
# The MAKE requires '/' in filenames (ARCH_DIR) however some compilers
|
||||
# and some DOS commands require '\' (ARCH_DOS)
|
||||
ARCH_DIR = $(subst \,/,$(ARCH))
|
||||
ARCH_DOS = $(subst /,\,$(ARCH))
|
||||
MK = $(subst \,/,$(subst \~,~,$(MAKE)))
|
||||
MK := $(subst \,/,$(subst \~,~,$(MAKE)))
|
||||
|
||||
ifeq ($(HB_INC_DIR),)
|
||||
HB_INC_DIR=$(TOP)$(ROOT)include
|
||||
HB_INC_DIR = $(TOP)$(ROOT)include
|
||||
endif
|
||||
ifeq ($(HB_LIB_DIR),)
|
||||
HB_LIB_DIR=$(TOP)$(ROOT)libs
|
||||
HB_LIB_DIR = $(TOP)$(ROOT)libs
|
||||
endif
|
||||
ifeq ($(HB_BIN_DIR),)
|
||||
HB_BIN_DIR=$(TOP)$(ROOT)bin
|
||||
HB_BIN_DIR = $(TOP)$(ROOT)bin
|
||||
endif
|
||||
|
||||
ifeq ($(COMSPEC),) #location of command.com
|
||||
COMSPEC = command.com
|
||||
COMSPEC := command.com
|
||||
else
|
||||
COMSPEC := $(subst \,/,$(COMSPEC))
|
||||
endif
|
||||
|
||||
RM = del
|
||||
@@ -35,4 +41,5 @@ dirbase::
|
||||
clean::
|
||||
-echo Y | $(RM) $(ARCH_DOS)\*.*
|
||||
-$(RD) $(ARCH_DOS)
|
||||
-$(RD) $(HB_ARCHITECTURE)
|
||||
-$(RD) $(HB_ARCHITECTURE)
|
||||
endif
|
||||
@@ -10,47 +10,43 @@ LIB_PREF =
|
||||
LIB_EXT = .lib
|
||||
|
||||
$(HB_ARCHITECTURE)_$(HB_COMPILER)_GRANDP = $(subst /,\\,$(GRANDP))
|
||||
_HB_INC_DIR = $(subst /,\\,$(HB_INC_DIR))
|
||||
_HB_LIB_DIR = $(subst /,\,$(HB_LIB_DIR))
|
||||
WATCOM_INCLUDE = $(subst \,\\,$(WATCOM))\\h
|
||||
|
||||
CC = wpp386
|
||||
CC_IN =
|
||||
CC_OUT = -fo=
|
||||
CPPFLAGS = -d2 -w2 -5r -zq -zt0 -bt=DOS4G
|
||||
CFLAGS = -i$(WATCOM_INCLUDE) -i$(_HB_INC_DIR) -i.
|
||||
CFLAGS := -i$(subst \,\\,$(WATCOM))\\h -i$(subst /,\\,$(HB_INC_DIR)) -i.
|
||||
|
||||
#Note: The empty line below HAVE TO exist!
|
||||
# Note: The empty line directly before 'endef' HAVE TO exist!
|
||||
# It causes that the 'echo' command is separated by LF
|
||||
define link_file
|
||||
echo FILE $(file) >> __link__.tmp
|
||||
$(COMSPEC) /E:2048 /Cecho FILE $(file) >> __link__.tmp
|
||||
|
||||
endef
|
||||
|
||||
|
||||
define link_exe_file
|
||||
echo $(LDFLAGS) > __link__.tmp
|
||||
echo NAME $@ >> __link__.tmp
|
||||
$(COMSPEC) /E:2048 /Cecho $(LDFLAGS) NAME $@ > __link__.tmp
|
||||
$(foreach file, $^, $(link_file))
|
||||
echo $(LINKLIBS) >> __link__.tmp
|
||||
$(LD) @__link__.tmp
|
||||
del __link__.tmp
|
||||
$(COMSPEC) /E:2048 /Cecho $(LINKLIBS) >> __link__.tmp
|
||||
-$(LD) @__link__.tmp
|
||||
endef
|
||||
|
||||
LD = wlink
|
||||
LDFLAGS = debug all OP osn=DOS4G OP stack=16384
|
||||
LINKLIBS = LIBP $(_HB_LIB_DIR) LIB $(foreach lib, $(LIBS), $(lib))
|
||||
LINKLIBS := LIBP $(subst /,\,$(HB_LIB_DIR)) $(foreach lib, $(LIBS), LIB $(lib))
|
||||
LD_RULE = $(link_exe_file)
|
||||
|
||||
#Note: The empty line below HAVE TO exist!
|
||||
define lib_object
|
||||
echo -+$(file) >> __lib__.tmp
|
||||
$(COMSPEC) /E:2048 /Cecho -+$(file) >> __lib__.tmp
|
||||
|
||||
endef
|
||||
|
||||
define create_library
|
||||
echo $@ > __lib__.tmp
|
||||
$(COMSPEC) /E:2048 /Cecho $@ > __lib__.tmp
|
||||
$(foreach file, $^, $(lib_object))
|
||||
$(AR) @__lib__.tmp
|
||||
del __lib__.tmp
|
||||
endef
|
||||
|
||||
AR = wlib
|
||||
|
||||
@@ -3,6 +3,6 @@
|
||||
#
|
||||
|
||||
GRANDP = ../../
|
||||
ARCH = $(HB_ARCHITECTURE)/$(HB_COMPILER)
|
||||
ARCH := $(HB_ARCHITECTURE)/$(HB_COMPILER)
|
||||
|
||||
include $(TOP)$(ROOT)config/$(ARCH).cf
|
||||
|
||||
@@ -6,15 +6,15 @@ include $(TOP)$(ROOT)config/global.cf
|
||||
include $(TOP)$(ROOT)config/c.cf
|
||||
include $(TOP)$(ROOT)config/prg.cf
|
||||
|
||||
LIB_NAME = $(LIB_PREF)$(LIB)$(LIB_EXT)
|
||||
LIB_NAME := $(LIB_PREF)$(LIB)$(LIB_EXT)
|
||||
|
||||
_ARCH_DIR = $(notdir $(ARCH_DIR))
|
||||
ifeq ($(_ARCH_DIR),)
|
||||
LIB_ARCH := $(notdir $(ARCH_DIR))
|
||||
ifeq ($(LIB_ARCH),)
|
||||
# ARCH_DIR ends with a slash
|
||||
LIB_ARCH = $(ARCH_DIR)$(LIB_NAME)
|
||||
LIB_ARCH := $(ARCH_DIR)$(LIB_NAME)
|
||||
else
|
||||
# there is no slash at the end of ARCH_DIR
|
||||
LIB_ARCH = $(ARCH_DIR)/$(LIB_NAME)
|
||||
LIB_ARCH := $(ARCH_DIR)/$(LIB_NAME)
|
||||
endif
|
||||
|
||||
ALL_OBJS = $(ALL_C_OBJS) $(ALL_PRG_OBJS)
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/global.cf
|
||||
|
||||
OBJ_EXT = .o
|
||||
EXE_EXT = .exe
|
||||
EXE_EXT =
|
||||
LIB_PREF = lib
|
||||
LIB_EXT = .a
|
||||
|
||||
|
||||
@@ -11,12 +11,12 @@ LEX = flex
|
||||
LEX_FLAGS = -i -8
|
||||
|
||||
# How to run Harbour.
|
||||
_HB = $(notdir $(HB_BIN_DIR))
|
||||
ifeq ($(_HB),)
|
||||
HB := $(notdir $(HB_BIN_DIR))
|
||||
ifeq ($(HB),)
|
||||
# there is a slash at the end
|
||||
HB = $(HB_BIN_DIR)harbour$(EXE_EXT)
|
||||
HB := $(HB_BIN_DIR)harbour$(EXE_EXT)
|
||||
else
|
||||
HB = $(HB_BIN_DIR)/harbour$(EXE_EXT)
|
||||
HB := $(HB_BIN_DIR)/harbour$(EXE_EXT)
|
||||
endif
|
||||
HB_FLAGS = -n -q -I$(TOP) -I$(HB_INC_DIR)
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ LIB_PREF = lib
|
||||
LIB_EXT = .a
|
||||
|
||||
CC = gcc
|
||||
CC_IN = -c
|
||||
CC_OUT = -o
|
||||
CPPFLAGS = -DDEBUG -I. -I$(HB_INC_DIR)
|
||||
CFLAGS = -Wall -g
|
||||
|
||||
@@ -8,6 +8,7 @@ LIB_PREF =
|
||||
LIB_EXT = .lib
|
||||
|
||||
CC = cl.exe
|
||||
CC_IN = -c
|
||||
CC_OUT = -Fo
|
||||
CPPFLAGS = -DDEBUG -I. -I$(HB_INC_DIR)
|
||||
CFLAGS = -W0 -Zi # -W4 for max warnings
|
||||
|
||||
@@ -13,6 +13,7 @@ C_HEADERS=\
|
||||
filesys.h \
|
||||
gtapi.h \
|
||||
hberrors.h \
|
||||
hbpp.h \
|
||||
hbsetup.h \
|
||||
init.h \
|
||||
itemapi.h \
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
# Tell emacs that this is a -*- makefile -*-
|
||||
|
||||
.PHONY: COMPILER VM RTL TESTS
|
||||
|
||||
all: COMPILER VM RTL TESTS
|
||||
|
||||
COMPILER:
|
||||
make -w --directory=SOURCE/COMPILER -f MAKEFILE.GCC
|
||||
|
||||
VM:
|
||||
make -w --directory=SOURCE/VM -f MAKEFILE.GCC
|
||||
|
||||
RTL:
|
||||
make -w --directory=SOURCE/RTL -f MAKEFILE.GCC
|
||||
|
||||
TESTS:
|
||||
make -w --directory=TESTS/WORKING -f MAKEFILE.GCC
|
||||
|
||||
clean:
|
||||
make -w --directory=SOURCE/COMPILER -f MAKEFILE.GCC clean
|
||||
make -w --directory=SOURCE/VM -f MAKEFILE.GCC clean
|
||||
make -w --directory=SOURCE/RTL -f MAKEFILE.GCC clean
|
||||
make -w --directory=TESTS -f MAKEFILE.GCC clean
|
||||
@@ -1,42 +0,0 @@
|
||||
# $Id$
|
||||
# Makefile definitions for WATCOM C/C++ 10.x
|
||||
# This file is included by makefile.wat located in subdirectories
|
||||
# Usage:
|
||||
# wmake /f makefile.wat
|
||||
#
|
||||
# HARBOURDIR: set to where the Harbour project is installed
|
||||
#
|
||||
|
||||
# Harbour project directories
|
||||
HARBOURDIR = o:\h
|
||||
HARBOURLIB = $(HARBOURDIR)\libs\harbour.lib
|
||||
|
||||
# Watcom directories
|
||||
WATDIR=$(%WATCOM)
|
||||
WATLIBDIR=$(WATDIR)\lib386
|
||||
WATINCDIR=$(WATDIR)\h
|
||||
OS_TARGET=DOS4G
|
||||
|
||||
# Compiler options
|
||||
WC = wcc386
|
||||
WPP = wpp386
|
||||
WCDEBUG = /d2
|
||||
WCOPTIONS = /w2 /5r /zq /zt0 /bt=$(OS_TARGET)
|
||||
WCINCLUDE = -i=$(HARBOURDIR)\include -i=$(WATINCDIR)
|
||||
WCDEFINE = /d_OS_DOS
|
||||
WCEXTRA =
|
||||
|
||||
# Linker options
|
||||
WLINK = wlink
|
||||
WLOPTIONS = op osn=$(OS_TARGET)
|
||||
WLSTACK = op stack=16384
|
||||
WLDEBUG = debug all
|
||||
WLLIBS = $(HARBOURLIB)
|
||||
|
||||
.EXTENSIONS: .prg
|
||||
|
||||
.c.obj: # $< # .AUTODEPEND
|
||||
*$(WPP) $(WCOPTIONS) $(WCINCLUDE) $(WCDEBUG) $(WCDEFINE) $(WCEXTRA) $<
|
||||
|
||||
.prg.c: # <$ # .AUTODEPEND
|
||||
*$(HARBOURDIR)\BIN\HARBOUR -N $^*
|
||||
@@ -1,36 +0,0 @@
|
||||
This makefile tree provides an easy method to build
|
||||
the entire Harbour project. The development environment
|
||||
was Cygnus win32 B19 developers distribution, which
|
||||
means GNU Make and GCC. The root makefile will build
|
||||
the Harbour compiler, the VM, the RTL, and all tests found
|
||||
in the TESTS/WORKING dir. There is also a MAKEFILE.GCC in
|
||||
TESTS/BROKEN, but it is not called by the root makefile.
|
||||
|
||||
I have left all the MAKEFILE names as MAKEFILE.GCC.
|
||||
|
||||
Using the makefiles for development: Say you've just written
|
||||
a new RTL function in C. Just type
|
||||
make -f MAKEFILE.GCC
|
||||
in the RTL directory and it will compile it for you, and if
|
||||
the compile succeeds, add it to libharbour.a.
|
||||
|
||||
Say you've just written a new test function in Harbour, in the
|
||||
TESTS directory. Just type
|
||||
make -f MAKEFILE.GCC
|
||||
and it will harbour it, gcc it, and link it (along with any other
|
||||
uncompiled tests) into an EXE file.
|
||||
|
||||
Say you just want to work with one Harbour test called FOO.PRG.
|
||||
Do this:
|
||||
make -f MAKEFILE.GCC foo.exe
|
||||
|
||||
|
||||
Because of how my system unpacks a build, I assumed that all
|
||||
of the original files have uppercase filenames. Therefore
|
||||
I put in workarounds for .C instead of .c, .PRG instead of .prg,
|
||||
etc. Hopefully this won't cause much trouble if you happen to
|
||||
change all filenames to lowercase on your system.
|
||||
|
||||
|
||||
-- Ross Presser 4/24/1999
|
||||
|
||||
@@ -1,19 +1,64 @@
|
||||
#
|
||||
|
||||
# $Id$
|
||||
|
||||
#
|
||||
|
||||
|
||||
|
||||
ROOT = ../../
|
||||
|
||||
|
||||
|
||||
YACC_SOURCE=harbour.y
|
||||
|
||||
|
||||
|
||||
YACC_HEADERS=\
|
||||
|
||||
compiler.h \
|
||||
|
||||
hbsetup.h \
|
||||
|
||||
pcode.h \
|
||||
|
||||
types.h \
|
||||
|
||||
hberrors.h \
|
||||
|
||||
hbpp.h
|
||||
|
||||
|
||||
|
||||
LEX_SOURCE=harbour.l
|
||||
|
||||
|
||||
|
||||
LEX_HEADERS=\
|
||||
|
||||
hbsetup.h \
|
||||
|
||||
hberrors.h \
|
||||
|
||||
types.h
|
||||
|
||||
|
||||
|
||||
C_SOURCES=\
|
||||
|
||||
genobj32.c \
|
||||
|
||||
|
||||
|
||||
C_MAIN=harbour.c
|
||||
|
||||
|
||||
|
||||
LIBS=\
|
||||
|
||||
hbpp \
|
||||
|
||||
|
||||
|
||||
include $(TOP)$(ROOT)config/bin.cf
|
||||
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
# $Id$
|
||||
# Makefile for Watcom C/C++ 10.x
|
||||
#
|
||||
!include ..\..\makewat.env
|
||||
|
||||
TARGET=$(HARBOURDIR)\bin\harbour.exe
|
||||
|
||||
all : $(TARGET)
|
||||
|
||||
$(TARGET) : harboury.obj harbourl.obj harbour.obj
|
||||
%create link.tmp
|
||||
%append link.tmp $(WLDEBUG)
|
||||
%append link.tmp FI harboury
|
||||
%append link.tmp FI harbourl
|
||||
%append link.tmp FI harbour
|
||||
%append link.tmp LIB $(HARBOURDIR)\libs\hbpp
|
||||
%append link.tmp NAME $(TARGET)
|
||||
%append link.tmp $(WLOPTIONS)
|
||||
%append link.tmp $(WLSTACK)
|
||||
wlink @link.tmp
|
||||
|
||||
harboury.obj : harboury.c
|
||||
*$(WC) $(WCOPTIONS) $(WCINCLUDE) $(WCDEBUG) $(WCDEFINE) $(WCEXTRA) $<
|
||||
|
||||
harbourl.obj : harbourl.c
|
||||
*$(WC) $(WCOPTIONS) $(WCINCLUDE) $(WCDEBUG) $(WCDEFINE) $(WCEXTRA) $<
|
||||
|
||||
harbour.obj : harbour.c
|
||||
*$(WC) $(WCOPTIONS) $(WCINCLUDE) $(WCDEBUG) $(WCDEFINE) $(WCEXTRA) $<
|
||||
|
||||
harboury.c : harbour.y
|
||||
bison -d -v -o harboury.c harbour.y
|
||||
|
||||
harbourl.c : harbour.l
|
||||
flex -i -8 -oharbourl.c harbour.l
|
||||
|
||||
clean : .SYMBOLIC
|
||||
del *.out
|
||||
del *.obj
|
||||
del harboury.*
|
||||
del harbourl.*
|
||||
del *.h
|
||||
del *.err
|
||||
del *.tmp
|
||||
@@ -1,23 +0,0 @@
|
||||
# $Id$
|
||||
# Makefile for Watcom C/C++ 10.x
|
||||
#
|
||||
!include ..\..\makewat.env
|
||||
|
||||
TARGET=$(HARBOURDIR)\libs\hbpp.lib
|
||||
|
||||
OBJECTS=hbpp.obj hbppint.obj table.obj
|
||||
|
||||
all : $(TARGET)
|
||||
|
||||
.c.obj: # $< # .AUTODEPEND
|
||||
*$(WC) $(WCOPTIONS) $(WCINCLUDE) $(WCDEBUG) $(WCDEFINE) $(WCEXTRA) $<
|
||||
|
||||
$(TARGET) : $(OBJECTS)
|
||||
%create lib.tmp
|
||||
@for %i in ( $(OBJECTS) ) do @%append lib.tmp +-%i
|
||||
wlib $^@ @lib.tmp
|
||||
|
||||
clean : .SYMBOLIC
|
||||
-del *.obj
|
||||
-del *.tmp
|
||||
-del *.err
|
||||
@@ -1,38 +0,0 @@
|
||||
# $Id$
|
||||
# Makefile for Watcom C/C++
|
||||
#
|
||||
all : hbpp compiler vm rtl tools
|
||||
|
||||
hbpp : .SYMBOLIC
|
||||
cd hbpp
|
||||
wmake $(__MAKEOPTS__) /f makefile.wat all
|
||||
cd ..
|
||||
|
||||
compiler : .SYMBOLIC
|
||||
cd compiler
|
||||
wmake $(__MAKEOPTS__) /f makefile.wat all
|
||||
cd ..
|
||||
|
||||
vm : .SYMBOLIC
|
||||
cd vm
|
||||
wmake $(__MAKEOPTS__) /f makefile.wat all
|
||||
cd ..
|
||||
|
||||
rtl : .SYMBOLIC
|
||||
cd rtl
|
||||
wmake $(__MAKEOPTS__) /f makefile.wat all
|
||||
cd ..
|
||||
|
||||
tools: .SYMBOLIC
|
||||
cd tools
|
||||
wmake $(__MAKEOPTS__) /f makefile.wat all
|
||||
cd ..
|
||||
|
||||
clean : .SYMBOLIC
|
||||
cd compiler
|
||||
wmake /f makefile.wat clean
|
||||
cd ../vm
|
||||
wmake /f makefile.wat clean
|
||||
cd ../rtl
|
||||
wmake /f makefile.wat clean
|
||||
cd ..
|
||||
@@ -1,24 +0,0 @@
|
||||
# $Id$
|
||||
# Makefile for Watcom C/C++ 10.x
|
||||
#
|
||||
!include ..\..\makewat.env
|
||||
|
||||
TARGET=$(HARBOURLIB)
|
||||
|
||||
PRGSYS=tclass.prg errorsys.prg error.prg asort.prg objfunc.prg
|
||||
OBJSYS=tclass.obj errorsys.obj error.obj asort.obj objfunc.obj
|
||||
OBJECTS=arrays.obj console.obj dates.obj extend.obj strings.obj classes.obj &
|
||||
strcmp.obj files.obj set.obj math.obj environ.obj itemapi.obj &
|
||||
transfrm.obj errorapi.obj codebloc.obj $(OBJSYS)
|
||||
|
||||
all: $(TARGET)
|
||||
|
||||
$(TARGET): $(OBJECTS)
|
||||
%create lib.tmp
|
||||
@for %i in ( $(OBJECTS) ) do @%append lib.tmp +-%i
|
||||
wlib $^@ @lib.tmp
|
||||
|
||||
clean: .SYMBOLIC
|
||||
del *.obj
|
||||
del *.tmp
|
||||
del *.err
|
||||
@@ -1,20 +0,0 @@
|
||||
# $Id$
|
||||
# Makefile for Watcom C/C++ 10.x
|
||||
#
|
||||
!include ..\..\makewat.env
|
||||
|
||||
TARGET=$(HARBOURLIB)
|
||||
|
||||
OBJECTS=datesx.obj stringsx.obj mathx.obj
|
||||
|
||||
all: $(TARGET)
|
||||
|
||||
$(TARGET): $(OBJECTS) $(HARBSYS)
|
||||
%create lib.tmp
|
||||
@for %i in ( $(OBJECTS) ) do @%append lib.tmp +-%i
|
||||
wlib $^@ @lib.tmp
|
||||
|
||||
clean: .SYMBOLIC
|
||||
del *.obj
|
||||
del *.tmp
|
||||
del *.err
|
||||
@@ -1,20 +0,0 @@
|
||||
# $Id$
|
||||
# Makefile for Watcom C/C++ 10.x
|
||||
#
|
||||
!include ..\..\makewat.env
|
||||
|
||||
TARGET=$(HARBOURLIB)
|
||||
|
||||
OBJECTS=hvm.obj dynsym.obj initsymb.obj
|
||||
|
||||
all : $(TARGET)
|
||||
|
||||
$(TARGET) : $(OBJECTS)
|
||||
%create lib.tmp
|
||||
@for %i in ( $(OBJECTS) ) do @%append lib.tmp +-%i
|
||||
wlib $^@ @lib.tmp
|
||||
|
||||
clean : .SYMBOLIC
|
||||
-del *.obj
|
||||
-del *.tmp
|
||||
-del *.err
|
||||
@@ -1,31 +0,0 @@
|
||||
# compiler macros
|
||||
CC=gcc
|
||||
CFLAGS=-Wall -g -DDEBUG -DNO_OBJ -I$(INCLUDE_DIR) -L$(LIB_DIR) -x c
|
||||
CFLAGS1=-Wall -g -DDEBUG -DNO_OBJ -I$(INCLUDE_DIR) -L$(LIB_DIR)
|
||||
|
||||
# directory macros - define the LIB_DIR for you
|
||||
INCLUDE_DIR=../../INCLUDE/
|
||||
BIN_DIR=../../bin
|
||||
LIB_DIR=../../LIBS/WIN32
|
||||
|
||||
# makefile macros
|
||||
OBJECTS=$(SRCS:.PRG=.o)
|
||||
COMPILE.C=$(COMPILE.c)
|
||||
|
||||
# default targets
|
||||
|
||||
all:
|
||||
|
||||
clean:
|
||||
-rm -Rf $(BINARY) core *~ y_tab.* lexyy.c y.output *.o *.exe
|
||||
|
||||
.prg.c:
|
||||
$(BIN_DIR)/harbour $? /N
|
||||
|
||||
.PRG.c:
|
||||
$(BIN_DIR)/harbour $? /N
|
||||
|
||||
.o.exe:
|
||||
$(CC) $(CFLAGS1) -o $@ $? -lharbour
|
||||
|
||||
.SUFFIXES: .prg .PRG .exe .EXE
|
||||
@@ -1,12 +0,0 @@
|
||||
# Tell emacs that this is a -*- makefile -*-
|
||||
|
||||
include ../tests.mk
|
||||
|
||||
PRGS:= $(wildcard *.PRG)
|
||||
|
||||
OBJS= $(PRGS:.PRG=.o)
|
||||
EXES= $(PRGS:.PRG=.exe)
|
||||
|
||||
all: $(EXES)
|
||||
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
# $Id$
|
||||
# Makefile for WATCOM C/C++ 10.x
|
||||
#
|
||||
!ifdef FILE
|
||||
!include ..\..\makewat.env
|
||||
|
||||
all: $(FILE).exe
|
||||
|
||||
$(FILE).exe : $(FILE).obj $(HARBOURDIR)\bin\harbour.exe
|
||||
%create link.tmp
|
||||
%append link.tmp $(WLDEBUG)
|
||||
%append link.tmp FI $(FILE)
|
||||
%append link.tmp NAME $(FILE)
|
||||
%append link.tmp LIBRARY $(WLLIBS)
|
||||
%append link.tmp $(WLOPTIONS)
|
||||
%append link.tmp $(WLSTACK)
|
||||
wlink @link.tmp
|
||||
|
||||
$(FILE).c : $(FILE).prg
|
||||
$(HARBOURDIR)\bin\harbour $(FILE) -n
|
||||
|
||||
!else
|
||||
dummy : .SYMBOLIC
|
||||
@echo =============================================================
|
||||
@echo Please give a name of PRG file to compile (without extension)
|
||||
@echo wmake /f makefile.wat FILE=codebloc
|
||||
!endif
|
||||
Reference in New Issue
Block a user