51 lines
1.7 KiB
Plaintext
51 lines
1.7 KiB
Plaintext
# CONFIG.Common.linuxCommon
|
|
#
|
|
# $Revision-Id$
|
|
# 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=200112L -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
|
|
# add -rdynamic so that more symbols (all globals, not only
|
|
# cross-referenced ones) are available to 'backtrace'.
|
|
OP_SYS_LDLIBS += -lrt -ldl -rdynamic
|
|
|
|
# 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
|