3 # hints file for OpenBSD; Todd Miller <millert@openbsd.org>
4 # Edited to allow Configure command-line overrides by
5 # Andy Dougherty <doughera@lafcol.lafayette.edu>
7 # To build with distribution paths, use:
8 # ./Configure -des -Dopenbsd_distribution=defined
11 # OpenBSD has a better malloc than perl...
12 test "$usemymalloc" || usemymalloc='n'
14 # Currently, vfork(2) is not a real win over fork(2) but this will
15 # change starting with OpenBSD 2.7.
18 # setre?[ug]id() have been replaced by the _POSIX_SAVED_IDS versions
19 # in 4.4BSD. Configure will find these but they are just emulated
20 # and do not have the same semantics as in 4.3BSD.
27 # Not all platforms support dynamic loading...
28 # For the case of "$openbsd_distribution", the hints file
29 # needs to know whether we are using dynamic loading so that
30 # it can set the libperl name appropriately.
31 # Allow command line overrides.
33 ARCH=`arch | sed 's/^OpenBSD.//'`
34 case "${ARCH}-${osvers}" in
35 alpha-2.[0-8]|mips-*|vax-*|powerpc-2.[0-7]|m88k-*)
36 test -z "$usedl" && usedl=$undef
39 test -z "$usedl" && usedl=$define
40 # We use -fPIC here because -fpic is *NOT* enough for some of the
41 # extensions like Tk on some OpenBSD platforms (ie: sparc)
42 cccdlflags="-DPIC -fPIC $cccdlflags"
44 [01].*|2.[0-7]|2.[0-7].*)
45 lddlflags="-Bshareable $lddlflags"
49 lddlflags="-shared -fPIC $lddlflags"
53 lddlflags="-shared -fPIC $lddlflags"
54 libswanted=`echo $libswanted | sed 's/ dl / /'`
61 # Tweaks for various versions of OpenBSD
65 # OpenBSD 2.5 has broken odbm support
70 # OpenBSD doesn't need libcrypt but many folks keep a stub lib
71 # around for old NetBSD binaries.
72 libswanted=`echo $libswanted | sed 's/ crypt / /'`
74 # Configure can't figure this out non-interactively
77 # cc is gcc so we can do better than -O
78 # Allow a command-line override, such as -Doptimize=-g
84 test "$optimize" || optimize='-O2'
88 # This script UU/usethreads.cbu will get 'called-back' by Configure
89 # after it has prompted the user for whether to use threads.
90 cat > UU/usethreads.cbu <<'EOCBU'
93 # any openbsd version dependencies with pthreads?
94 ccflags="-pthread $ccflags"
95 ldflags="-pthread $ldflags"
96 # Add -lpthread. Also change from -lc to -lc_r
97 libswanted="$libswanted pthread"
98 libswanted=`echo " $libswanted "| sed -e 's/ c / c_r /' -e 's/^ //' -e 's/ $//'`
104 # When building in the OpenBSD tree we use different paths
105 # This is only part of the story, the rest comes from config.over
106 case "$openbsd_distribution" in
109 # We put things in /usr, not /usr/local
112 sysman='/usr/share/man/man1'
115 # Local things, however, do go in /usr/local
116 siteprefix='/usr/local'
117 siteprefixexp='/usr/local'
118 # Ports installs non-std libs in /usr/local/lib so look there too
119 locincpth='/usr/local/include'
120 loclibpth='/usr/local/lib'
121 # Link perl with shared libperl
122 if [ "$usedl" = "$define" -a -r shlib_version ]; then
124 libperl=`. ./shlib_version; echo libperl.so.${major}.${minor}`