- config/prg.cf
+ config/dirsh.mk
- config/none.cf
- config/global.cf
- config/lib.cf
+ config/prg.mk
- config/bin.cf
- config/dir.cf
- config/globsh.cf
+ config/none.mk
+ config/global.mk
+ config/bsd/gcc.mk
- config/bsd/gcc.cf
+ config/bsd/global.mk
- config/bsd/global.cf
- config/c.cf
+ config/lib.mk
- config/wce/msvcarm.cf
+ config/wce/global.mk
- config/wce/global.cf
+ config/wce/mingwarm.mk
- config/wce/mingwarm.cf
+ config/wce/poccarm.mk
- config/wce/poccarm.cf
+ config/wce/msvcarm.mk
+ config/bin.mk
- config/header.cf
- config/rules.cf
+ config/darwin/gcc.mk
- config/darwin/gcc.cf
+ config/darwin/global.mk
- config/darwin/global.cf
+ config/hpux/gcc.mk
- config/hpux/gcc.cf
+ config/hpux/global.mk
- config/hpux/global.cf
+ config/dir.mk
+ config/globsh.mk
+ config/dos/watcom.mk
- config/dos/watcom.cf
+ config/dos/global.mk
- config/dos/global.cf
+ config/dos/djgpp.mk
- config/dos/djgpp.cf
+ config/c.mk
- config/doc.cf
- config/win/watcom.cf
- config/win/mingw64.cf
+ config/win/xcc.mk
- config/win/gcc.cf
- config/win/msvcia64.cf
- config/win/icc.cf
- config/win/pocc64.cf
+ config/win/mingw.mk
- config/win/cygwin.cf
- config/win/global.cf
+ config/win/iccia64.mk
+ config/win/msvc64.mk
+ config/win/pocc.mk
+ config/win/bcc.mk
- config/win/msvc.cf
+ config/win/watcom.mk
+ config/win/mingw64.mk
+ config/win/gcc.mk
+ config/win/msvcia64.mk
+ config/win/icc.mk
- config/win/xcc.cf
+ config/win/pocc64.mk
+ config/win/cygwin.mk
+ config/win/global.mk
- config/win/mingw.cf
- config/win/msvc64.cf
- config/win/iccia64.cf
- config/win/pocc.cf
- config/win/bcc.cf
+ config/win/msvc.mk
- config/install.cf
+ config/header.mk
- config/instsh.cf
+ config/linux/watcom.mk
- config/linux/watcom.cf
+ config/linux/gcc.mk
- config/linux/gcc.cf
+ config/linux/icc.mk
- config/linux/icc.cf
+ config/linux/global.mk
- config/linux/global.cf
+ config/linux/sunpro.mk
- config/linux/sunpro.cf
- config/dirsh.cf
+ config/rules.mk
+ config/os2/watcom.mk
- config/os2/watcom.cf
+ config/os2/gcc.mk
- config/os2/gcc.cf
+ config/os2/global.mk
- config/os2/global.cf
+ config/sunos/gcc.mk
- config/sunos/gcc.cf
+ config/sunos/global.mk
- config/sunos/global.cf
+ config/sunos/sunpro.mk
- config/sunos/sunpro.cf
+ config/doc.mk
+ config/install.mk
+ config/instsh.mk
* Renaming .cf files to .mk.
Pass 1. The SVN will be in non-working state until the next
commit. Please don't build Harbour for about an hour now.
85 lines
2.3 KiB
Makefile
85 lines
2.3 KiB
Makefile
#
|
|
# $Id$
|
|
#
|
|
|
|
# How to run yacc.
|
|
YACC := bison
|
|
YACC_FLAGS := -d $(YACC_FLAGS)
|
|
|
|
# How to run lex.
|
|
LEX := flex
|
|
LEX_FLAGS := -i -8 $(LEX_FLAGS)
|
|
|
|
ifeq ($(HB_BUILD_DEBUG),yes)
|
|
HB_CFLAGS := -DHB_TR_LEVEL_DEBUG $(HB_CFLAGS)
|
|
else
|
|
HB_PRGFLAGS := -l $(HB_PRGFLAGS)
|
|
endif
|
|
|
|
ifeq ($(HB_BUILD_UNICODE),yes)
|
|
HB_CFLAGS := -DUNICODE $(HB_CFLAGS)
|
|
endif
|
|
|
|
# How to run Harbour
|
|
HB := $(HB_HOST_BIN_DIR)/harbour$(HB_HOST_BIN_EXT)
|
|
HB_FLAGS := -n1 $(HB_INC_DEPEND) -i$(HB_INC_COMPILE) -q0 -w3 -es2 -kmo $(HB_PRGFLAGS)
|
|
HB_RULE = $(HB) $? $(HB_FLAGS) $(HB_USER_PRGFLAGS)
|
|
|
|
# Use default rules if architecture/compiler specific rule is not defined
|
|
|
|
# The rule to compile a C source file.
|
|
ifeq ($(CC_RULE),)
|
|
CC_RULE = $(CC) $(HB_INC_DEPEND) $(CPPFLAGS) $(CFLAGS) $(HB_CFLAGS) $(HB_USER_CFLAGS) $(CC_OUT)$(<F:.c=$(OBJ_EXT)) $(CC_IN) $<
|
|
ifneq ($(HB_BUILD_DLL),no)
|
|
ifeq ($(HB_DYN_COMPILE),yes)
|
|
ifneq ($(LIBNAME),)
|
|
ifneq ($(findstring $(LIBNAME),$(HB_DYN_LIBS)),)
|
|
define cc_comp_all
|
|
$(CC) $(HB_INC_DEPEND) $(CPPFLAGS) $(CFLAGS) $(HB_CFLAGS) $(HB_USER_CFLAGS) $(CC_OUT)$(<F:.c=$(OBJ_EXT)) $(CC_IN) $<
|
|
$(CC) $(HB_INC_DEPEND) $(CPPFLAGS) $(CFLAGS) $(HB_CFLAGS) $(HB_USER_CFLAGS) $(CC_OUT)$(<F:.c=_dyn$(OBJ_EXT)) -DHB_DYNLIB $(CC_IN) $<
|
|
endef
|
|
CC_RULE = $(cc_comp_all)
|
|
endif
|
|
endif
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
# The rule to compile a C++ source file.
|
|
ifeq ($(CPP_RULE),)
|
|
CPP_RULE = $(CC) $(HB_INC_DEPEND) $(CPPFLAGS) $(CFLAGS) $(HB_CFLAGS) $(HB_USER_CFLAGS) $(CC_OUT)$(<F:.cpp=$(OBJ_EXT)) $(CC_IN) $<
|
|
endif
|
|
|
|
# The rule to link an executable.
|
|
ifeq ($(LD_RULE),)
|
|
LD_RULE = $(LD) $(CFLAGS) $(LD_OUT)$(subst /,$(DIRSEP),$(BIN_DIR)/$@) $(^F) $(LDFLAGS) $(HB_USER_LDFLAGS) $(LDLIBS)
|
|
endif
|
|
|
|
# Eliminate these rules.
|
|
%.c : %.y
|
|
|
|
%.c : %.l
|
|
|
|
# Rule to generate an object file from a C source file in the parent.
|
|
%$(OBJ_EXT) : $(GRANDP)%.c
|
|
$(CC_RULE)
|
|
|
|
# Rule to generate an object file from a C source file.
|
|
%$(OBJ_EXT) : %.c
|
|
$(CC_RULE)
|
|
|
|
# Rules for CPP files
|
|
%$(OBJ_EXT) : $(GRANDP)%.cpp
|
|
$(CPP_RULE)
|
|
|
|
%$(OBJ_EXT) : %.cpp
|
|
$(CPP_RULE)
|
|
|
|
# Rule to generate an executable file from an object file.
|
|
%$(BIN_EXT) : %$(OBJ_EXT)
|
|
$(LD_RULE)
|
|
|
|
# Rule to generate a C file from a PRG file.
|
|
%.c : $(GRANDP)%.prg
|
|
$(HB_RULE)
|