1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
# HP-UX 10 has a select() in libcurses, so we need to get the libc version,
# which we do by linking -lc before -lcurses. (Unfortunately we can't
# just not use libcurses.) This also ensures that we get the POSIX signal
# routines in libc, not the BSD-like ones in libBSD.
LIBS := -lc $(LIBS)
# On the other hand, if we don't have POSIX signals, we need to use the
# libBSD signal routines. (HPUX 9 and early HPUX 10 releases don't have
# POSIX signals.) Make sure libBSD comes before libc in that case.
ifeq ($(HAVE_POSIX_SIGNALS), no)
LIBS := -lBSD $(LIBS)
endif
# On HPUX 9, rint() is provided only in the PA1.1 version of libm.
# If configure found it necessary to link against /lib/pa1.1 to find rint,
# add -L command to make that happen.
# (CAUTION: you need PHSS_4630 to have a working version of rint() on 9!)
ifneq ($(HPUXMATHLIB),)
LDFLAGS:= -L/lib/pa1.1 $(LDFLAGS)
endif
# Embed 'libdir' as the shared library search path so that the executables
# don't need SHLIB_PATH to be set. (We do not observe the --enable-rpath
# switch here because you'd get rather bizarre behavior if you leave this
# option off.)
LDFLAGS += -Wl,+b -Wl,$(libdir)
# catch null pointer dereferences
LDFLAGS += -Wl,-z
# set up appropriate options for shared library builds
export_dynamic = -Wl,-E
shlib_symbolic = -Bsymbolic
INSTALL_SHLIB_OPTS = -m 555
AROPT = crs
DLSUFFIX = .sl
ifeq ($(GCC), yes)
CFLAGS_SL = -fPIC
else
CFLAGS_SL = +z
endif
ifeq ($(GXX), yes)
CXXFLAGS_SL = -fPIC
else
CXXFLAGS_SL = +z
endif
# Rule for building shared libs (currently used only for regression test
# shlib ... should go away, since this is not really enough knowledge)
%.sl: %.o
$(LD) -b -o $@ $<
|