summaryrefslogtreecommitdiff
path: root/src/makefiles/Makefile.hpux
blob: eeb10589e698ffdda6ec2104415d7cbc5f61eb6b (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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
HPUX_MAJOR= $(shell uname -r|sed 's/^[^.]*\.\([^.]*\).*/\1/')
# Distinguish HPUX 10 (and later) from HPUX 9
ifneq ($(HPUX_MAJOR), 09)
   CFLAGS+= -DHPUX_10
endif

# HP-UX 10 has a select() in libcurses, so we need to get the libc version first
# We also want to be sure we get the POSIX signal routines in libc,
# not the BSD-like ones in libBSD.
ifneq ($(HPUX_MAJOR), 09)
   LDFLAGS:= -Wl,-E -lc $(LDFLAGS)
endif

# HP-UX 09 provides rint() only in PA1.1 version of libm, so add -L command
# to get that version. (CAUTION: you need PHSS_4630 to have a working version
# of rint()!)  Also, libPW exists on this platform but is not helpful, so
# delete it from LDFLAGS.
# NOTE: libBSD must be loaded before libc to get BSD signal() semantics.
ifeq ($(HPUX_MAJOR), 09)
   LDFLAGS:= -Wl,-E -L /lib/pa1.1 $(LDFLAGS:-lPW=)
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.
LDFLAGS+= -Wl,+b -Wl,$(LIBDIR)

# Does anyone use this stuff?
#ifdef ENFORCE_ALIGNMENT
#   CFLAGS+= -DNOFIXADE
#else
#   ifeq ($(HPUX_MAJOR), 08)
#      CFLAGS+= +u -DHP_S500_ALIGN
#      LDFLAGS+= +u
#   else
#   ifeq ($(HPUX_MAJOR), 09)
#      ifeq ($(CC), cc)
#         CFLAGS+= +u4 
#         LDFLAGS+= +u4
#      endif
#   endif
#   endif
#endif

%.sl: %.o
	$(LD) -b -o $@ $<