summaryrefslogtreecommitdiff
path: root/src/makefiles/Makefile.hpux
blob: de2b87d6138fb92c7f4ba0cd57d0d111ec1c510f (plain)
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
# 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.
LDFLAGS:= -lc $(LDFLAGS)

# 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)
   LDFLAGS:= -lBSD $(LDFLAGS)
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

# On all HPUX versions, embed `libdir' as the shared library search path
# so that the executables don't need SHLIB_PATH to be set, specify -z
# to catch null pointer dereferences, and specify -E to make all symbols
# visible to dynamically linked shared libraries.
LDFLAGS+= -Wl,+b -Wl,$(libdir) -Wl,-z -Wl,-E

# 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 $@ $<