# CONFIG.Common.linuxCommon # # Revision-Id: anj@aps.anl.gov-20101005192737-disfz3vs0f3fiixd # This file is maintained by the build community. # # Definitions for linux target builds # Sites may override these definitions in CONFIG_SITE.Common.linuxCommon #------------------------------------------------------- # Include definitions common to all Unix targets include $(CONFIG)/os/CONFIG.Common.UnixCommon OS_CLASS = Linux CODE_CPPFLAGS = -D_REENTRANT POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS -D_XOPEN_SOURCE=500 POSIX_LDLIBS = -lpthread # -D_BSD_SOURCE for gethostname() in unistd.h as needed by cacChannelIO.cpp. OP_SYS_CPPFLAGS += -D_BSD_SOURCE OP_SYS_CPPFLAGS += -Dlinux OP_SYS_LDLIBS += -lrt -ldl # Added here for cross-target builds which include this file STATIC_LDFLAGS_YES= -Wl,-Bstatic STATIC_LDFLAGS_NO= STATIC_LDLIBS_YES= -Wl,-Bdynamic # Set runtime path for shared libraries SHRLIBDIR_RPATH_LDFLAGS_YES += $(SHRLIB_DEPLIB_DIRS:%=-Wl,-rpath,%) SHRLIBDIR_LDFLAGS += $(SHRLIBDIR_RPATH_LDFLAGS_$(LINKER_USE_RPATH)) # Set runtime path for products PRODDIR_RPATH_LDFLAGS_YES += $(PROD_DEPLIB_DIRS:%=-Wl,-rpath,%) PRODDIR_LDFLAGS += $(PRODDIR_RPATH_LDFLAGS_$(LINKER_USE_RPATH)) # Link libraries controlled by COMMANDLINE_LIBRARY # The newest Linux versions only need readline, older ones need both # readline and ncurses, and the oldest need readline and curses LDLIBS_READLINE = -lreadline LDLIBS_READLINE_NCURSES = -lreadline -lncurses LDLIBS_READLINE_CURSES = -lreadline -lcurses #-------------------------------------------------- # Allow site overrides -include $(CONFIG)/os/CONFIG_SITE.Common.linuxCommon -include $(CONFIG)/os/CONFIG_SITE.$(EPICS_HOST_ARCH).linuxCommon