Added PROD_LDFLAGS, LIB_LDFLAGS, PROD_OBJLIBS, USR_OBJLIBS, LIB_OBJLIBS.
This commit is contained in:
@@ -57,7 +57,7 @@
|
||||
# If you define INC, e.g. INC = getopt.h, the source
|
||||
# (getopt.h) must be in the source directory (..) and/or
|
||||
# in one or more ../os/<OS_CLASS> directories.
|
||||
# The INC source files cannot be created by the build.
|
||||
|
||||
#
|
||||
|
||||
ifneq ($(strip $(USR_CFLAGS_$(T_A))),)
|
||||
@@ -124,6 +124,22 @@ USR_LDFLAGS+=$(USR_LDFLAGS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(PROD_LDFLAGS_$(OS_CLASS))),)
|
||||
PROD_LDFLAGS+=$(subst -nil-,,$(PROD_LDFLAGS_$(OS_CLASS)))
|
||||
else
|
||||
ifdef PROD_LDFLAGS_DEFAULT
|
||||
PROD_LDFLAGS+=$(PROD_LDFLAGS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(LIB_LDFLAGS_$(OS_CLASS))),)
|
||||
LIB_LDFLAGS+=$(subst -nil-,,$(LIB_LDFLAGS_$(OS_CLASS)))
|
||||
else
|
||||
ifdef LIB_LDFLAGS_DEFAULT
|
||||
LIB_LDFLAGS+=$(LIB_LDFLAGS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
# check for special includes:
|
||||
#
|
||||
ifneq ($(strip $(INC_$(OS_CLASS))),)
|
||||
@@ -225,11 +241,27 @@ OBJS_HOST+=$(OBJS_HOST_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(LDOBJS_$(OS_CLASS))),)
|
||||
LDOBJS+=$(subst -nil-,,$(LDOBJS_$(OS_CLASS)))
|
||||
ifneq ($(strip $(PROD_OBJLIBS_$(OS_CLASS))),)
|
||||
PROD_OBJLIBS+=$(subst -nil-,,$(PROD_OBJLIBS_$(OS_CLASS)))
|
||||
else
|
||||
ifneq (,$(strip $(LDOBJS_DEFAULT)))
|
||||
LDOBJS+=$(LDOBJS_DEFAULT)
|
||||
ifdef PROD_OBJLIBS_DEFAULT
|
||||
PROD_OBJLIBS+=$(PROD_OBJLIBS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(LIB_OBJLIBS_$(OS_CLASS))),)
|
||||
LIB_OBJLIBS+=$(subst -nil-,,$(LIB_OBJLIBS_$(OS_CLASS)))
|
||||
else
|
||||
ifdef LIB_OBJLIBS_DEFAULT
|
||||
LIB_OBJLIBS+=$(LIB_OBJLIBS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(USR_OBJLIBS_$(OS_CLASS))),)
|
||||
USR_OBJLIBS+=$(subst -nil-,,$(USR_OBJLIBS_$(OS_CLASS)))
|
||||
else
|
||||
ifdef USR_OBJLIBS_DEFAULT
|
||||
USR_OBJLIBS+=$(USR_OBJLIBS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
@@ -140,13 +140,13 @@ JAR =
|
||||
#--------------------------------------------------
|
||||
# obj files
|
||||
|
||||
TARGET_OBJS = $($*_LDOBJS) $(addsuffix $(OBJ),$(basename $($*_OBJS)))
|
||||
TARGET_OBJS = $($*_OBJLIBS) $($*_LDOBJS) $(addsuffix $(OBJ),$(basename $($*_OBJS)))
|
||||
|
||||
PRODUCT_OBJS = $(addsuffix $(OBJ),$(basename $(SRCS) $(USR_SRCS) $(PROD_SRCS) $(USR_OBJS) $(PROD_OBJS)))
|
||||
PROD_LD_OBJS = $(LDOBJS) $(TARGET_OBJS) $(PRODUCT_OBJS)
|
||||
PROD_LD_OBJS = $(USR_OBJLIBS) $(PROD_OBJLIBS) $(TARGET_OBJS) $(PRODUCT_OBJS)
|
||||
|
||||
LIBRARY_OBJS = $(addsuffix $(OBJ),$(basename $(SRCS) $(USR_SRCS) $(LIB_SRCS) $(LIBSRCS) $(USR_OBJS) $(LIB_OBJS)))
|
||||
LIBRARY_LD_OBJS = $(LDOBJS) $(TARGET_OBJS) $(LIBRARY_OBJS)
|
||||
LIBRARY_LD_OBJS = $(USR_OBJLIBS) $(LIB_OBJLIBS) $(TARGET_OBJS) $(LIBRARY_OBJS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# WIN95/NT resource files
|
||||
@@ -259,8 +259,8 @@ CXXFLAGS = $(CONFORM_CXXFLAGS) $(CROSS_CXXFLAGS) $(OPT_CXXFLAGS)\
|
||||
$(DEBUG_CXXFLAGS) $(WARN_CXXFLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS)\
|
||||
$(ARCH_DEP_CXXFLAGS) $(CODE_CXXFLAGS) $(STATIC_CXXCFLAGS) $(OP_SYS_CXXFLAGS)
|
||||
|
||||
LDFLAGS = $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(PROD_LDFLAGS)\
|
||||
$(ARCH_DEP_LDFLAGS) $(DEBUG_LDFLAGS) $(OP_SYS_LDFLAGS) $(CROSS_LDFLAGS)
|
||||
LDFLAGS = $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) \
|
||||
$(ARCH_DEP_LDFLAGS) $(DEBUG_LDFLAGS) $(OP_SYS_LDFLAGS) $(CROSS_LDFLAGS) $(DIR_LDFLAGS)
|
||||
|
||||
LDLIBS = $(PROD_LDLIBS) $(STATIC_LDLIBS)\
|
||||
$(POSIX_LDLIBS) $(ARCH_DEP_LDLIBS) $(DEBUG_LDLIBS) $(OP_SYS_LDLIBS)
|
||||
|
||||
@@ -35,7 +35,7 @@ CPP = $(RTEMS_BASE)/bin/$(CC_FOR_TARGET) -x c -E
|
||||
AR = $(RTEMS_BASE)/bin/$(AR_FOR_TARGET)
|
||||
LD = $(RTEMS_BASE)/bin/$(LD_FOR_TARGET) -r
|
||||
RTEMS_LDFLAGS := $(STATIC_LDFLAGS) $(LDFLAGS)
|
||||
LINK.cpp = $(CCC) -o $@ $(RTEMS_LDFLAGS) $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
LINK.cpp = $(CCC) -o $@ $(RTEMS_LDFLAGS) $(LDFLAGS) $(PROD_LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
|
||||
RANLIB := $(RTEMS_BASE)/bin/$(RANLIB)
|
||||
|
||||
@@ -55,8 +55,8 @@ CXXFLAGS = $(CONFORM_CXXFLAGS) $(CROSS_CXXFLAGS) $(OPT_CXXFLAGS)\
|
||||
$(ARCH_DEP_CXXFLAGS) $(CODE_CXXFLAGS) $(STATIC_CXXCFLAGS) $(OP_SYS_CXXFLAGS)\
|
||||
$(CROSS_CXXFLAGS)
|
||||
|
||||
LDFLAGS = $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(PROD_LDFLAGS)\
|
||||
$(ARCH_DEP_LDFLAGS) $(OP_SYS_LDFLAGS) $(CROSS_LDFLAGS)
|
||||
LDFLAGS = $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) \
|
||||
$(ARCH_DEP_LDFLAGS) $(OP_SYS_LDFLAGS) $(CROSS_LDFLAGS) $(DIR_LDFLAGS)
|
||||
|
||||
LDLIBS = $(PROD_LDLIBS) $(STATIC_LDLIBS)\
|
||||
$(POSIX_LDLIBS) $(ARCH_DEP_LDLIBS) $(OP_SYS_LDLIBS)
|
||||
|
||||
@@ -52,17 +52,17 @@ PROD_LDLIBS = $($*_LDLIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)\
|
||||
$($*_SYS_LIBS:%=-l%) $(SYS_PROD_LIBS:%=-l%)
|
||||
|
||||
PROD_DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(PROD_DEPLIBS))
|
||||
PROD_LDFLAGS += $(sort $(PROD_DEPLIB_DIRS:%=-L%))
|
||||
DIR_LDFLAGS += $(sort $(PROD_DEPLIB_DIRS:%=-L%))
|
||||
|
||||
#--------------------------------------------------
|
||||
# Operating system definitions
|
||||
OP_SYS_CPPFLAGS += -DUNIX
|
||||
OP_SYS_LDLIBS += -lm
|
||||
#OP_SYS_LDLIBS += -lm
|
||||
|
||||
#--------------------------------------------------
|
||||
# Link definitions
|
||||
LINK.cpp = $(CCC) -o $@ $(STATIC_LDFLAGS) $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
LINK.shrlib = $(CCC) -o $@ $(SHRLIB_LDFLAGS) $(LDFLAGS) $(LIBRARY_LD_OBJS) $(LIBRARY_LD_RESS) $(SHRLIB_LDLIBS)
|
||||
LINK.cpp = $(CCC) -o $@ $(STATIC_LDFLAGS) $(LDFLAGS) $(PROD_LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
LINK.shrlib = $(CCC) -o $@ $(SHRLIB_LDFLAGS) $(LDFLAGS) $(LIB_LDFLAGS) $(LIBRARY_LD_OBJS) $(LIBRARY_LD_RESS) $(SHRLIB_LDLIBS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# Allow site overrides
|
||||
|
||||
@@ -30,9 +30,9 @@ ARCH_DEP_CPPFLAGS += -D_X86_
|
||||
ARCH_DEP_CFLAGS += -mcpu=pentium
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
PROD_LDFLAGS_YES += $(sort $(SHRLIB_SEARCH_DIRS:%=-Wl,-rpath,%/lib/$(T_A)))
|
||||
DIR_LDFLAGS_YES += $(sort $(SHRLIB_SEARCH_DIRS:%=-Wl,-rpath,%/lib/$(T_A)))
|
||||
SHRLIB_LDFLAGS += $(sort $(SHRLIB_SEARCH_DIRS:%=-Wl,-rpath,%/lib/$(T_A)))
|
||||
PROD_LDFLAGS += $(PROD_LDFLAGS_$(SHARED_LIBRARIES))
|
||||
DIR_LDFLAGS += $(DIR_LDFLAGS_$(SHARED_LIBRARIES))
|
||||
|
||||
ifdef CROSS
|
||||
GNU_TARGET=i586-pc-linux-gnu
|
||||
|
||||
@@ -34,7 +34,7 @@ OP_SYS_LDLIBS += -lsocket -lnsl
|
||||
|
||||
# -R does not work unless full path names are specified
|
||||
# use loader's -R option
|
||||
PROD_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
|
||||
DIR_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
|
||||
|
||||
ifdef CROSS
|
||||
GNU_TARGET=sparc-sun-solaris2
|
||||
|
||||
@@ -35,7 +35,7 @@ OP_SYS_LDLIBS += -lsocket -lnsl
|
||||
|
||||
# -R does not work unless full path names are specified
|
||||
# use loader's -R option
|
||||
#PROD_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
|
||||
#DIR_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
|
||||
|
||||
ifdef CROSS
|
||||
GNU_TARGET=x86-sun-solaris2
|
||||
|
||||
@@ -36,7 +36,7 @@ PROD_LDLIBS = $($*_LDLIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)\
|
||||
$($*_SYS_LIBS:%=-l%) $(SYS_PROD_LIBS:%=-l%)
|
||||
|
||||
PROD_DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(PROD_DEPLIBS))
|
||||
PROD_LDFLAGS += $(sort $(PROD_DEPLIB_DIRS:%=-L%))
|
||||
DIR_LDFLAGS += $(sort $(PROD_DEPLIB_DIRS:%=-L%))
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Prod definitions
|
||||
@@ -50,7 +50,7 @@ NMS = $(PRODNAME:%$(EXE)=%.nm)
|
||||
OBJLIB += $(OBJLIB_$(OS_CLASS))
|
||||
OBJLIB_SUFFIX = Library.o
|
||||
OBJLIBNAME = $(addsuffix $(OBJLIB_SUFFIX),$(basename $(OBJLIB)))
|
||||
OBJLIB_LD_OBJS = $(LDOBJS) $(TARGET_OBJS)
|
||||
OBJLIB_LD_OBJS = $(USR_OBJLIBS) $(TARGET_OBJS)
|
||||
OBJLIB_LD_OBJS += $(addsuffix $(OBJ),$(basename $(OBJLIB_SRCS) $(OBJLIB_OBJS)))
|
||||
PRODTARGETS += $(OBJLIBNAME)
|
||||
INSTALL_PROD += $(OBJLIBNAME:%=$(INSTALL_BIN)/%)
|
||||
@@ -118,7 +118,7 @@ OSITHREAD_USE_DEFAULT_STACK = NO
|
||||
|
||||
#--------------------------------------------------
|
||||
# Link definitions
|
||||
LINK.cpp = $(LD) -o $@ $(STATIC_LDFLAGS) $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
LINK.cpp = $(LD) -o $@ $(STATIC_LDFLAGS) $(LDFLAGS) $(PROD_LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# Definitions for compile of *_ctdt.c file
|
||||
|
||||
@@ -148,7 +148,7 @@ STATIC_LDLIBS_NO=
|
||||
# -w display warnings on
|
||||
LINK_OPT_FLAGS_YES = -c -C -Gi -Gn -Tpd -x -w
|
||||
LINK_OPT_FLAGS_NO = -c -C -Gi -Gn -Tpd -x -w-
|
||||
WIN32_DLLFLAGS = $(LINK_OPT_FLAGS_$(HOST_OPT))
|
||||
WIN32_DLLFLAGS = $(LINK_OPT_FLAGS_$(HOST_OPT)) $(LIB_LDFLAGS)
|
||||
OPT_LDFLAGS =
|
||||
|
||||
ARCH_DEP_CFLAGS=
|
||||
@@ -263,7 +263,7 @@ LDFLAGS += -c -C -Gn -Tpe -x -w -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk
|
||||
LINKSTARTUP = c0x32.obj
|
||||
LINKLIBS=import32.lib cw32$(LIBSUF).lib
|
||||
|
||||
LINK.cpp = $(WINLINK) $(STATIC_LDFLAGS) $(LDFLAGS) $(LINKSTARTUP) $(subst /,\\,$(PROD_LD_OBJS))
|
||||
LINK.cpp = $(WINLINK) $(STATIC_LDFLAGS) $(LDFLAGS) $(PROD_LDFLAGS) $(LINKSTARTUP) $(subst /,\\,$(PROD_LD_OBJS))
|
||||
LINK.cpp += , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
|
||||
|
||||
#--------------------------------------------------
|
||||
|
||||
@@ -197,7 +197,7 @@ OP_SYS_LDLIBS =
|
||||
# '-entry:_DllMainCRTStartup$(DLLENTRY)'
|
||||
DLLENTRY = @12
|
||||
|
||||
WIN32_DLLFLAGS = /subsystem:windows /dll $(OPT_LDFLAGS)
|
||||
WIN32_DLLFLAGS = /subsystem:windows /dll $(OPT_LDFLAGS) $(LIB_LDFLAGS)
|
||||
|
||||
#
|
||||
# specify dll .def file only if it exists
|
||||
@@ -265,7 +265,7 @@ SHRLIB_LDLIBS = $(DLL_DEPLIBS) $($*_SYS_DLL_LIBS:%=%.lib) \
|
||||
|
||||
#--------------------------------------------------
|
||||
# Linker definition
|
||||
LINK.cpp = $(WINLINK) -nologo $(STATIC_LDFLAGS) $(LDFLAGS) -out:$@ \
|
||||
LINK.cpp = $(WINLINK) -nologo $(STATIC_LDFLAGS) $(LDFLAGS) $(PROD_LDFLAGS) -out:$@ \
|
||||
$(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user