# CONFIG.Common.UnixCommon # # $Id$ # # Contains definitions common to all Unix target archs # # This file is maintained by the build community. # Sites may override definitions in CONFIG_SITE.Common.UnixCommon # or CONFIG_SITE..UnixCommon #------------------------------------------------------- # Unix valid build types VALID_BUILDS = Host Ioc #------------------------------------------------------- # Gnu directory GNU_DIR = /usr/local #------------------------------------------------------- # Unix prefix and suffix definitions EXE = OBJ = .o #Library prefix and suffixes LIB_PREFIX = lib LIB_SUFFIX = .a SHRLIB_SUFFIX = .so$(addprefix .,$(SHRLIB_VERSION)) #------------------------------------------------------- # names of libraries to build # -> lib.a LIBNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(LIB_SUFFIX)) # -> lib.so. SHRLIBNAME_YES = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(SHRLIB_SUFFIX)) #------------------------------------------------------- # shrlib: DEPLIBS, LDFLAGS, and LDLIBS definitions SHRLIB_DEPLIBS = $(foreach lib,$(SHRLIB_LIBS),$(firstword $(wildcard \ $($(lib)_DIR)/$(LIB_PREFIX)$(lib).*))) SHRLIB_LDFLAGS = $(SHRLIB_LDFLAGS_$(strip $(SHARED_LIBRARIES))) SHRLIB_LDLIBS = $($*_LDLIBS:%=-l%) $(SHRLIB_LIBS:%=-l%) \ $($*_SYS_LIBS:%=-l%) $(SYS_SHRLIB_LIBS:%=-l%) SHRLIB_DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(SHRLIB_DEPLIBS)) SHRLIB_LDFLAGS += $(sort $(SHRLIB_DEPLIB_DIRS:%=-L%)) #-------------------------------------------------- # Prod: DEPLIBS, LDFLAGS, and LDLIBS definitions PROD_DEPLIBS = $(foreach lib,$(PROD_LIBS) $(USR_LIBS),$(firstword $(wildcard \ $($(lib)_DIR)/$(LIB_PREFIX)$(lib).*))) 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%)) #-------------------------------------------------- # Operating system definitions OP_SYS_CPPFLAGS += -DUNIX 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) #-------------------------------------------------- # Allow site overrides -include $(CONFIG)/os/CONFIG_SITE.Common.UnixCommon -include $(CONFIG)/os/CONFIG_SITE.$(EPICS_HOST_ARCH).UnixCommon