1
# @(#) $Revision: 4.21 $ $Source: /judy/make_includes/platform.hpux_pa.mk $
3
# Makefile fragment for Judy* for platform "hpux_pa" (HP-UX on PA-RISC).
7
# For $CCPATH, carefully point to the correct location (per Dennis Handly,
8
# 011214) and hope it's on all boxes where developers build, even though
9
# /usr/bin/cc is typically (but not necessarily) a symlink to it:
11
CCPATH = /opt/ansic/bin/cc
17
# Object file directories:
19
# $INTDIR is the location for intermediate (non-deliverable) constructed files,
20
# optionally including a suffix component for recursive make calls.
22
# $DELDIR is the CPF-standard "deliver/" followed by various paths for
23
# different files so they are in an appropriate place for delivery to an HPUX
24
# system. Yes, this leads to annoyingly long full paths such as
25
# hpux_pa/product/deliver/usr/share/doc/Judy, but Judy-cious use of symlinks in
26
# the top of a personal sandbox can mitigate this.
28
# Note: Through version 4.56, files were placed in deliver/opt/Judy, but in
29
# preparation for 11.11 OEUR delivery we decided they belong in various "core
30
# HPUX" locations under /usr on the filesystem (see below).
32
# Note: For open source delivery, Judy files belong back in /opt/Judy; see the
35
# Note: For safety the values of $OBJDIR_OPT and the suffix of $DELDIR_DOC are
36
# hard-coded into the install and uninstall targets.
38
OBJDIR_OPT = /opt/Judy
40
# For Linux, $DELDIR_LIB_SUFFIX is simply null.
42
DELDIR_LIB = $(DELDIR)/usr/lib$(DELDIR_LIB_SUFFIX)
43
DELDIR_INC = $(DELDIR)/usr/include
44
DELDIR_DOC = $(DELDIR)/usr/share/doc/Judy
45
DELDIR_DEMO = $(DELDIR_DOC)/demo
46
DELDIR_MAN = $(DELDIR)/usr/share/man/man3$(MANDIR_SUFFIX)
48
# Use normal tools for building internal tools (programs):
50
CSTRIP = /usr/local/bin/cstrip
55
# Optionally include PIC libs in tarchives:
57
TARCHIVE_LIBS_PIC = libs_pic
59
# Suffix for $LIB_ID (same as what's passed in $LIB_SUFFIX for a recursive
64
# Linker option to build a shared library:
68
# On HP-UX, compressed manual entries are compressed with compress(1), go in
69
# directories whose names end with a suffix, and filenames have no special
72
COMPRESSPATH = /usr/bin/compress
76
# A weird concession to Win32 VC++ "CL" compiler, which needs -Fo to specify
77
# the object file and -Fe to specify the executable file:
82
# Ensure $PLATFORM is set:
86
# Platform-specific library lists for HP-UX/PA for various "lib" targets:
89
LIBS_LIST = lib11_32a lib20_64a
90
LIBS_ALL_LIST = lib11_32a lib20_64a lib11_32sl lib20_32sl lib20_64sl
91
LIBS_PIC_LIST = lib20_32PICa lib20_64PICa
93
# Platform-specific $CC options for different kinds of libraries:
95
CC_OPTS_LIB11_32 = +DA1.1 -DJU_32BITS
96
CC_OPTS_LIB20_32 = +DA2.0 -DJU_32BITS
97
CC_OPTS_LIB20_64 = +DD64 -DJU_64BITS
99
# Unfortunately there are CC_OPTS differences between both platforms AND
100
# flavors, so spell them out here by flavor, meaning this file cannot be
103
CC_OPTS_product = -Wall -O
104
CC_OPTS_cov = -Wall -O -DJU_FLAVOR_COV
105
CC_OPTS_debug = -Wall -g -DJU_FLAVOR_DEBUG
107
# When compiling a generic (once-only, not per-library) constructed tool
108
# (program) on a PA 2.0 box, a warning is issued unless this option is given:
110
# (On other platforms the macro is null.)
112
CC_OPTS_TOOL_GEN = +DA1.1
114
# Use normal tools for building internal tools (programs):
116
# Note: The only tool actually needed for this purpose is cc.
118
CCPATH_TOOL = $(CCPATH)
120
# Waiver (hide) the following HP-UX-only, PIC-only warning from makelog by
121
# indenting it in cc output:
123
# On HP-UX, we do want to use +O3, although currently we do not (see
124
# make_includes/flavor.product.mk 4.1, although there's not much explanation in
125
# the delta logs, but see also later versions of that file), so keep this
126
# supporting code around although $PIC_SED is not used; and note, no one should
127
# redefine a Judy routine. Note the tab in the sed script.
129
PIC_WARNING = cc: warning 8006: Do not use optimization levels higher than 2 to generate a shared library if a user of that library may redefine a routine within that library (8006)
131
PIC_SED_VALUE = | sed '/^$(PIC_WARNING)$$/s/^/ /'