diff options
author | grant <grant@pkgsrc.org> | 2004-03-11 13:03:58 +0000 |
---|---|---|
committer | grant <grant@pkgsrc.org> | 2004-03-11 13:03:58 +0000 |
commit | dc1847996633ea9194a36b797e49f693c9f5fc72 (patch) | |
tree | 3434d463e0789e4ff8d9e78dbc0ec913e5aec800 /bootstrap/files | |
parent | 19aa548dc050dbaf77264e958e3f443d950ee350 (diff) | |
download | pkgsrc-dc1847996633ea9194a36b797e49f693c9f5fc72.tar.gz |
import the required bits of bootstrap-pkgsrc from 20040311.
Diffstat (limited to 'bootstrap/files')
-rwxr-xr-x | bootstrap/files/install-sh | 281 | ||||
-rw-r--r-- | bootstrap/files/irix.patch | 40 | ||||
-rw-r--r-- | bootstrap/files/packages.cat7 | 757 | ||||
-rwxr-xr-x | bootstrap/files/strip-sh | 26 |
4 files changed, 1104 insertions, 0 deletions
diff --git a/bootstrap/files/install-sh b/bootstrap/files/install-sh new file mode 100755 index 00000000000..971488f4609 --- /dev/null +++ b/bootstrap/files/install-sh @@ -0,0 +1,281 @@ +#!/bin/sh +# +# $NetBSD: install-sh,v 1.1.1.1 2004/03/11 13:03:59 grant Exp $ +# This script now also installs multiple files, but might choke on installing +# multiple files with spaces in the file names. +# +# install - install a program, script, or datafile +# This comes from X11R5 (mit/util/scripts/install.sh). +# +# Copyright 1991 by the Massachusetts Institute of Technology +# +# Permission to use, copy, modify, distribute, and sell this software and its +# documentation for any purpose is hereby granted without fee, provided that +# the above copyright notice appear in all copies and that both that +# copyright notice and this permission notice appear in supporting +# documentation, and that the name of M.I.T. not be used in advertising or +# publicity pertaining to distribution of the software without specific, +# written prior permission. M.I.T. makes no representations about the +# suitability of this software for any purpose. It is provided "as is" +# without express or implied warranty. +# +# Calling this script install-sh is preferred over install.sh, to prevent +# `make' implicit rules from creating a file called install from it +# when there is no Makefile. +# +# This script is compatible with the BSD install script, but was written +# from scratch. + +# set DOITPROG to echo to test this script + +# Don't use :- since 4.3BSD and earlier shells don't like it. +doit="${DOITPROG-}" + + +# put in absolute paths if you don't have them in your path; or use env. vars. + +mvprog="${MVPROG-mv}" +cpprog="${CPPROG-cp}" +chmodprog="${CHMODPROG-chmod}" +chownprog="${CHOWNPROG-chown}" +chgrpprog="${CHGRPPROG-chgrp}" +stripprog="${STRIPPROG-strip}" +rmprog="${RMPROG-rm}" +mkdirprog="${MKDIRPROG-mkdir}" + +transformbasename="" +transform_arg="" +instcmd="$mvprog" +chmodcmd="$chmodprog 0755" +chowncmd="" +chgrpcmd="" +stripcmd="" +rmcmd="$rmprog -f" +mvcmd="$mvprog" +src="" +msrc="" +dst="" +dir_arg="" + +while [ x"$1" != x ]; do + case $1 in + -c) instcmd="$cpprog" + shift + continue;; + + -d) dir_arg=true + shift + continue;; + + -m) chmodcmd="$chmodprog $2" + shift + shift + continue;; + + -o) chowncmd="$chownprog $2" + shift + shift + continue;; + + -g) chgrpcmd="$chgrpprog $2" + shift + shift + continue;; + + -s) stripcmd="$stripprog" + shift + continue;; + + -t=*) transformarg=`echo "$1" | sed 's/-t=//'` + shift + continue;; + + -b=*) transformbasename=`echo "$1" | sed 's/-b=//'` + shift + continue;; + + *) if [ x"$src" = x ] + then + src=$1 + msrc=$1 + else + # this colon is to work around a 386BSD /bin/sh bug + : + msrc="$msrc $1" + dst=$1 + fi + shift + continue;; + esac +done + +if [ x"$dir_arg" = x -a x"$msrc" != x"$src $dst" ] +then + if [ ! -d "$dst" ]; then + echo "install: destination is not a directory" + exit 1 + fi +else + msrc=$src +fi + + +if [ x"$src" = x ] +then + echo "install: no input file specified" + exit 1 +else + true +fi + +if [ x"$dir_arg" != x ]; then + dst=$src + src="" + + if [ -d "$dst" ]; then + instcmd=: + chmodcmd="" + else + instcmd=mkdir + fi +else + +# Waiting for this to be detected by the "$instcmd $src $dsttmp" command +# might cause directories to be created, which would be especially bad +# if $src (and thus $dsttmp) contains '*'. + + if [ -f "$src" ] + then + true + elif [ -d "$src" ] + then + echo "install: $src: not a regular file" + exit 1 + else + echo "install: $src does not exist" + exit 1 + fi + + if [ x"$dst" = x ] + then + echo "install: no destination specified" + exit 1 + else + true + fi + +# If destination is a directory, append the input filename; if your system +# does not like double slashes in filenames, you may need to add some logic + + if [ -d "$dst" ] + then + dst="$dst"/`basename "$src"` + else + true + fi +fi + +## this sed command emulates the dirname command +dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` + +# Make sure that the destination directory exists. +# this part is taken from Noah Friedman's mkinstalldirs script + +# Skip lots of stat calls in the usual case. +if [ ! -d "$dstdir" ]; then +defaultIFS=' +' +IFS="${IFS-${defaultIFS}}" + +oIFS="${IFS}" +# Some sh's can't handle IFS=/ for some reason. +IFS='%' +set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` +IFS="${oIFS}" + +pathcomp='' + +while [ $# -ne 0 ] ; do + pathcomp="${pathcomp}${1}" + shift + + if [ ! -d "${pathcomp}" ] ; + then + $mkdirprog "${pathcomp}" + else + true + fi + + pathcomp="${pathcomp}/" +done +fi + +if [ x"$dir_arg" != x ] +then + $doit $instcmd "$dst" && + + if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dst"; else true ; fi && + if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dst"; else true ; fi && + if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dst"; else true ; fi && + if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dst"; else true ; fi +else + +# If we're going to rename the final executable, determine the name now. + + for arg in `echo "$msrc"| sed -e 's/ [^ ]*$//'`; do + + if [ x"$msrc" = x"$src" ] + then + file=$dst + else + file=$arg + fi + + if [ x"$transformarg" = x ] + then + dstfile=`basename "$file"` + else + dstfile=`basename "$file" "$transformbasename" | + sed $transformarg`$transformbasename + fi + +# don't allow the sed command to completely eliminate the filename + + if [ x"$dstfile" = x ] + then + dstfile=`basename "$file"` + else + true + fi + +# Make a temp file name in the proper directory. + + dsttmp=$dstdir/#inst.$$# + +# Move or copy the file name to the temp name + + $doit $instcmd $arg "$dsttmp" && + + trap "rm -f ${dsttmp}" 0 && + +# and set any options; do chmod last to preserve setuid bits + +# If any of these fail, we abort the whole thing. If we want to +# ignore errors from any of these, just make sure not to ignore +# errors from the above "$doit $instcmd $src $dsttmp" command. + + if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dsttmp"; else true;fi && + if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dsttmp"; else true;fi && + if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dsttmp"; else true;fi && + if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dsttmp"; else true;fi && + +# Now rename the file to the real destination. + + $doit $rmcmd -f "$dstdir/$dstfile" && + $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" + done + +fi && + + +exit 0 diff --git a/bootstrap/files/irix.patch b/bootstrap/files/irix.patch new file mode 100644 index 00000000000..6ef73048b0e --- /dev/null +++ b/bootstrap/files/irix.patch @@ -0,0 +1,40 @@ +$NetBSD: irix.patch,v 1.1.1.1 2004/03/11 13:03:59 grant Exp $ + +--- /usr/lib/X11/config/X11.rules.orig Thu Jun 12 09:12:20 2003 ++++ /usr/lib/X11/config/X11.rules Sun Jun 8 10:31:35 2003 +@@ -79,7 +79,7 @@ + #if UseInstalledX11 + #if defined(X11ProjectRoot) + # define X11BuildLibPath $(XPROJECTROOT)/lib +-else ++#else + # define X11BuildLibPath $(USRLIBDIR) + #endif + #elif ImportX11 +--- /usr/lib/X11/config/sgi.cf.orig Thu Jun 12 09:12:20 2003 ++++ /usr/lib/X11/config/sgi.cf Sun Jun 8 12:55:50 2003 +@@ -241,7 +241,9 @@ + * Actually, it doesn't matter what MakeCmd is, since we don't use it. + * We assume that $(MAKE) gets set for us by make. + */ ++#ifndef MakeCmd + #define MakeCmd $(TOOLROOTSAFE) $(TOOLROOT)/sbin/make ++#endif + #define TroffCmd psroff -t + + #define StandardIncludes -nostdinc -I$(ROOT)/usr/include +@@ -320,10 +322,14 @@ + #define NroffFilemanDir $(MAN4DIR)$(MANPACKAGE) + #define NroffMiscmanDir $(MAN5DIR)$(MANPACKAGE) + ++#ifndef ManUsr + #ifdef UseInstalled + MANUSR = /usr/share/local + #else + MANUSR = /usr/share ++#endif ++#else ++ MANUSR = ManUsr + #endif + + CATMAN1DIR = $(MANUSR)/catman/u_man/cat1 diff --git a/bootstrap/files/packages.cat7 b/bootstrap/files/packages.cat7 new file mode 100644 index 00000000000..609389909ef --- /dev/null +++ b/bootstrap/files/packages.cat7 @@ -0,0 +1,757 @@ +PACKAGES(7) NetBSD Miscellaneous Information Manual PACKAGES(7) + +NNAAMMEE + ppaacckkaaggeess - NetBSD user package variables + +DDEESSCCRRIIPPTTIIOONN + This manual page describes the variables that users of the NetBSD pack- + ages system can set to alter the configuration of the package system, and + individual packages. + +CCOOMMMMOONN VVAARRIIAABBLLEESS + This section documents variables that typically apply to all packages. + Many of these may be set in mk.conf(5). + + ARCH The architecture, as returned by ``uname -m''. See + uname(1). + + OPSYS The operating system name, as returned by ``uname -s''. + + LOCALBASE Where non-X11 based packages will be installed. The + default is _/_u_s_r_/_p_k_g. + + CROSSBASE Where ``cross'' category packages will be installed. + The default is _$_{_L_O_C_A_L_B_A_S_E_}_/_c_r_o_s_s. + + X11BASE Where X11 is installed on the system, and where ``X11'' + category packages will be installed. The default is + _/_u_s_r_/_X_1_1_R_6. + + DISTDIR Where to get gzip'd, tar-balled copies of original + sources. The default is _$_{_P_K_G_S_R_C_D_I_R_}_/_d_i_s_t_f_i_l_e_s. + + MASTER_SITE_BACKUP + Backup location(s) for distribution files and patch + files if not found locally and ${MAS- + TER_SITES}/${PATCH_SITES}. The Defaults are + _f_t_p_:_/_/_f_t_p_._N_e_t_B_S_D_._o_r_g_/_p_u_b_/_N_e_t_B_S_D_/_p_a_c_k_a_g_e_s_/_d_i_s_t_f_i_l_e_s_/_$_{_D_I_S_T___S_U_B_D_I_R_}_/ + and + _f_t_p_:_/_/_f_t_p_._f_r_e_e_b_s_d_._o_r_g_/_p_u_b_/_F_r_e_e_B_S_D_/_d_i_s_t_f_i_l_e_s_/_$_{_D_I_S_T___S_U_B_D_I_R_}_/. + + MASTER_SITE_OVERRIDE + If set, override the MASTER_SITES setting with this + value. + + PACKAGES A top level directory where all packages go (rather than + going locally to each package). The default is + _$_{_P_K_G_S_R_C_D_I_R_}_/_p_a_c_k_a_g_e_s. + + GMAKE Set to path of GNU make if not in $PATH (default: + gmake). + + PKG_FC Set to the path of the desired Fortran compiler + (default: f2c-f77). + + XMKMF Set to path of ``xmkmf'' if not in $PATH (default: xmkmf + -a). + + WRKOBJDIR A top level directory where, if defined, the separate + working directories will get created, and symbolically + linked to from _$_{_W_R_K_D_I_R_} (see below). This is useful + for building packages on several architectures, then + _$_{_P_K_G_S_R_C_D_I_R_} can be NFS-mounted while _$_{_W_R_K_O_B_J_D_I_R_} is + local to every arch. (It should be noted that + _$_{_P_K_G_S_R_C_D_I_R_} should not be set by the user - it is an + internal definition which refers to the root of the + pkgsrc tree. It is possible to have many pkgsrc tree + instances.) + + PKG_DEVELOPER + Run some sanity checks that package developers want: + + ++oo make sure patches apply with zero fuzz + + ++oo run check-shlibs to see that all binaries will find + their shared libs. + + USE_GLX Says that if Mesa is requested, a package should prefer- + ably use a GLX (hardware-accelerated) version of the + Mesa library. + + BINPKG_SITES + List of sites carrying binary pkgs. + + LOCALPATCHES + Directory for local patches that aren't part of pkgsrc. + See pkgsrc/Packages.txt for more information. ``rel'' + and ``arch'' are replaced with OS release ( ``1.5'', + etc.) and architecture ( ``mipsel'', etc.). + + PKGMAKECONF + Location of the mk.conf file used by a package's BSD- + style Makefile. If this is not set, MAKECONF is set to + _/_d_e_v_/_n_u_l_l to avoid picking up settings used by builds in + /usr/src. + +PPAACCKKAAGGEE SSPPEECCIIFFIICC VVAARRIIAABBLLEESS + This section documents variables that typically apply to an individual + package. Non-Boolean variables without defaults are *mandatory*. + + ONLY_FOR_PLATFORM + If set, it lists the values of OS triples (OS-version- + platform) that the package will build under. It can be a + glob-style wildcard. + + NOT_FOR_PLATFORM + If set, it lists the values of OS triples (OS-version- + platform) that the package will not build under. It can + be a glob-style wildcard. + + MAINTAINER + The e-mail address of the contact person for this pack- + age. The person who feels responsible for this package, + and who is most likely to look at problems or questions + regarding this package which have been reported with + send-pr(1). The right person to contact before making + major changes to the package. The default is pack- + ages@NetBSD.org. + + CATEGORIES + A list of descriptive categories into which this package + falls. + + COMMENT A one-line description of the package (should not include + the package name). + + MASTER_SITES + Primary location(s) for distribution files if not found + locally. + + PATCH_SITES + Primary location(s) for distribution patch files (see + PATCHFILES below) if not found locally. + + PKG_DEBUG_LEVEL + The level of debugging output which is displayed whilst + making and installing the package. The default value for + this is 0, which will not display the commands as they + are executed (normal, default, quiet operation); the + value 1 will display all shell commands before their + invocation, and the value 2 will display both the shell + commands before their invocation, and their actual execu- + tion progress with sseett --xx will be displayed. + + WRKDIR A temporary working directory that gets *clobbered* on + clean. The default is _$_{_._C_U_R_D_I_R_}_/_w_o_r_k or + _$_{_._C_U_R_D_I_R_}_/_w_o_r_k_._$_{_M_A_C_H_I_N_E___A_R_C_H_} if OBJMACHINE is set. + + WRKSRC A subdirectory of ${WRKDIR} where the distribution actu- + ally unpacks to. The default is _$_{_W_R_K_D_I_R_}_/_$_{_D_I_S_T_N_A_M_E_}. + The value of WRKSRC should be set explicitly if the pack- + age does not follow standard conventions and include the + package's name as a subdirectory. Please note that the + old NO_WRKSUBDIR definition has been deprecated and + should not be used. + + DISTNAME Name of package or distribution. + + DISTFILES + Name(s) of archive file(s) containing distribution. The + default is _$_{_D_I_S_T_N_A_M_E_}_$_{_E_X_T_R_A_C_T___S_U_F_X_}. + + PATCHFILES + Name(s) of additional files that contain distribution + patches There is no default. Make will look for them at + PATCH_SITES (see above). They will automatically be + uncompressed before patching if the names end with + ``.gz'' or ``.Z''. + + DIST_SUBDIR + Suffix to _$_{_D_I_S_T_D_I_R_}. If set, all _$_{_D_I_S_T_F_I_L_E_S_} and + _$_{_P_A_T_C_H_F_I_L_E_S_} will be put in this subdirectory of + _$_{_D_I_S_T_D_I_R_}_. + + ALLFILES All of _$_{_D_I_S_T_F_I_L_E_S_} and _$_{_P_A_T_C_H_F_I_L_E_S_}. + + IGNOREFILES + If some of the _$_{_A_L_L_F_I_L_E_S_} are not checksum-able, set + this variable to their names. + + PKGNAME Name of the package file to create if the _$_{_D_I_S_T_N_A_M_E_} + isn't really relevant for the package. The default is + _$_{_D_I_S_T_N_A_M_E_}. + + SVR4_PKGNAME + Name of the package file to create if the _$_{_P_K_G_N_A_M_E_} + isn't unique enough on a SVR4 system. The default is + _$_{_P_K_G_N_A_M_E_} which may be shortened when you use gensolpkg. + Only add SVR4_PKGNAME if _$_{_P_K_G_N_A_M_E_} does not produce an + unique package name on a SVR4 system. The length of + SVR4_PKGNAME is limited to 5 characters. + + PKGREVISION + This number indicates the package's revision within the + NetBSD Packages Collection (pkgsrc). If set, this will be + attached to the PKGNAME variable separated by a "nb". + + EXTRACT_ONLY + If defined, a subset of _$_{_D_I_S_T_F_I_L_E_S_} you want to actually + extract. + + PATCHDIR A directory containing any additional patches you made to + package this software. The default is + _$_{_._C_U_R_D_I_R_}_/_p_a_t_c_h_e_s. + + SCRIPTDIR + A directory containing any auxiliary scripts. The + default is _$_{_._C_U_R_D_I_R_}_/_s_c_r_i_p_t_s. + + FILESDIR A directory containing any miscellaneous additional + files. The default is _$_{_._C_U_R_D_I_R_}_/_f_i_l_e_s. + + PKGDIR A direction containing any package creation files. The + default is _$_{_._C_U_R_D_I_R_}_/_p_k_g. + + PKG_DBDIR + Where package installation is recorded. The default is + _/_v_a_r_/_d_b_/_p_k_g. + + FORCE_PKG_REGISTER + If set, it will overwrite any existing package registra- + tion information in _$_{_P_K_G___D_B_D_I_R_}_/_$_{_P_K_G_N_A_M_E_}. + + NO_MTREE If set, will not invoke mtree from _b_s_d_._p_k_g_._m_k from the + ``install'' target. + + MTREE_FILE + The name of the mtree file. The default is + _/_e_t_c_/_m_t_r_e_e_/_B_S_D_._x_1_1_._d_i_s_t if USE_IMAKE or USE_X11BASE is + set, or _/_e_t_c_/_m_t_r_e_e_/_B_S_D_._p_k_g_._d_i_s_t otherwise. + + USE_X11 Instructs the package system that the package will use + headers and libraries from X11BASE and so a check must be + made that these are available. If they are not, an + IGNORE message will be displayed, and the package will + not be built. + + PLIST_SRC + Which file(s) to use to build _$_{_P_L_I_S_T_}. Default is + _$_{_P_K_G_D_I_R_}_/_P_L_I_S_T. + + PLIST_SUBST + Patterns that get automatically expanded during the PLIST + creation. Takes arguments of the form VARNAME = + ``value'' and subsequently replaces every occurrence of + ${VARNAME} with value. + + INSTALL_FILE + The name of a script which will be invoked when + installing binary packages. If there is a file called + _$_{_P_K_G_D_I_R_}_/_I_N_S_T_A_L_L, that file will be used. + + DEINSTALL_FILE + The name of a script which will be invoked when de- + installing binary packages. If there is a file called + _$_{_P_K_G_D_I_R_}_/_D_E_I_N_S_T_A_L_L, that file will be used. + + MESSAGE The name of a file which will be displayed during the + installation of a package. No substitution according to + MESSAGE_SUBST takes place. Overrides MESSAGE_SRC. Should + not be used. + + MESSAGE_SRC + The name of a file which will be displayed when + installing a package. If neither MESSAGE_SRC nor MESSAGE + are set, and there is a file called _$_{_P_K_G_D_I_R_}_/_M_E_S_S_A_G_E, + that file will be used. Before displaying the file, sub- + stitution according to MESSAGE_SUBST takes place. + + MESSAGE_SUBST + This variable takes equations of the form VARNAME = + ``value'', and replaces all occurrences of ${VARNAME} in + MESSAGE_SRC with value. By default, substitution is per- + formed for LOCALBASE, PKGNAME, PREFIX, X11BASE, and + X11PREFIX. + + NO_BIN_ON_CDROM + Binaries of this package may not be placed on CDROM. Set + this string to _$_{_R_E_S_T_R_I_C_T_E_D_}. + + NO_BIN_ON_FTP + Binaries of this package may not be made available via + ftp. Set this string to _$_{_R_E_S_T_R_I_C_T_E_D_}. + + NO_BUILD Use a dummy (do-nothing) build target. + + NO_CONFIGURE + Use a dummy (do-nothing) configure target. + + NO_INSTALL + Use a dummy (do-nothing) install target. + + NO_PACKAGE + Use a dummy (do-nothing) package target. + + NO_PKG_REGISTER + Don't register a package install as a package. + + NO_SRC_ON_CDROM + Distfile(s) of this package may not be placed on CDROM. + Set this string to _$_{_R_E_S_T_R_I_C_T_E_D_}. + + NO_SRC_ON_FTP + Distfile(s) of this package may not be made available via + ftp. Set this string to _$_{_R_E_S_T_R_I_C_T_E_D_}. If this variable + is set, the distfile will not be mirrored by + ftp.NetBSD.org. + + NO_DEPENDS + Don't verify build of dependencies. + + CHECK_SHLIBS + Do not run 'check-shlibs' even if PKG_DEVELOPER is set. + This prevents errors on emul/compat packages (e.g., Linux + binaries, ...). + + MAKEFILE Name of the Makefile in ${WRKSRC}, used in the default + build and install targets. Default: ``Makefile''. + + BROKEN Package is broken. Set this string to the reason why. + + RESTRICTED + Package is restricted. Set this string to the reason + why. + + LICENCE The package has a non-standard licence, such as share- + ware, or non-commercial-use only. This string should be + set to the type of licence the package has, like "share- + ware", or "non-commercial-use". If LICENCE is set, the + ACCEPTABLE_LICENCES variable will be searched, if set, + for a string matching the licence. + + PASSIVE_FETCH + Uses passive ftp(1) to retrieve distribution files. + + REPLACE_PERL + Takes a list of files and replaces each occurrence of + "/usr/bin/perl", "/usr/local/bin/perl" and + "/usr/pkg/bin/perl" in the named files with the value of + ${PERL5}. This can be used to point perl scripts to the + proper interpreter that pkgsrc installs. Note: it looks + for the listed files in ${WRKSRC}. + + UNLIMIT_RESOURCES + List of process limits which need to be raised to hard + limits for building this package. So far "datasize" and + "stacksize" are supported. + + USE_LIBTOOL + Says that the package uses _l_i_b_t_o_o_l to manage building of + libraries and shared objects, where applicable. + + LTCONFIG_OVERRIDE + If set, override the specified _l_t_c_o_n_f_i_g for using the + _l_i_b_t_o_o_l package instead of the pkg's own _l_i_b_t_o_o_l. + + USE_FORTRAN + Says that the package uses a Fortran compiler for build- + ing. + + USE_GMAKE + Says that the package uses _g_m_a_k_e. + + USE_JAVA Says that the package uses a Java virtual machine. + + USE_PERL5 + Says that the package uses _p_e_r_l_5 for building and run- + ning. + + PERL5_REQD + Sets the minimum _p_e_r_l_5 version required. The default is + 5.0. + + USE_IMAKE + Says that the package uses _i_m_a_k_e. + + USE_MESA Says that the package uses the Mesa library. This will + include all Mesa components that are not included in the + installed X11 distribution. + + USE_SSL Says that the package uses a SSL library. The location of + the SSL installation can be found in ${SSLBASE}. + + USE_X11BASE + Says that the package installs itself into the X11 base + directory ${X11BASE}. This is necessary for packages + that install X11 fonts, application default files or + Imake rule or template files. + + USE_XAW Says that the package uses the Athena widget set. + + USE_XPM Says that the package uses the Xpm library. If it is not + included in the installed X11 distribution the xpm pack- + age will be used. + + USE_GTEXINFO + Says that the package uses gtexinfo. + + NO_INSTALL_MANPAGES + For imake packages that don't like the install.man tar- + get. + + HAS_CONFIGURE + Says that the package has its own configure script. + + GNU_CONFIGURE + Set if you are using GNU configure (optional). + + CONFIGURE_SCRIPT + Name of configure script, defaults to _c_o_n_f_i_g_u_r_e. + + CONFIGURE_ARGS + Pass these args to configure if ${HAS_CONFIGURE} is set. + + CONFIGURE_ENV + Pass these env (shell-like) to configure if + _$_{_H_A_S___C_O_N_F_I_G_U_R_E_} is set. + + SCRIPTS_ENV + Additional environment variables passed to scripts in + _$_{_S_C_R_I_P_T_D_I_R_} executed by _b_s_d_._p_k_g_._m_k. + + MAKE_ENV Additional environment variables passed to sub-make in + build stage. + + CFLAGS Any CFLAGS you wish passed to the configure script and/or + sub-make in build stage. + + LDFLAGS Any LDFLAGS you wish passed to the configure script + and/or sub-make in build stage. LDFLAGS is pre-loaded + with rpath settings for ELF machines depending on the + setting of USE_IMAKE or USE_X11BASE. If you do not wish + to override these settings, use LDFLAGS+=. + + MAKE_ENV Additional environment variables passed to sub-make in + build stage. + + INTERACTIVE_STAGE + Set this if your package needs to interact with the user + during its fetch, configure, build or install stages. + Multiple stages may be specified. The user can then + decide to skip this package by setting ${BATCH}. + + FETCH_DEPENDS + A list of ``path:dir'' pairs of other packages this pack- + age depends upon in the ``fetch'' stage. ``path'' is the + name of a file if it starts with a slash (/), an exe- + cutable otherwise. make will test for the existence (if + it is a full pathname) or search for it in your $PATH (if + it is an executable) and go into ``dir'' to do a ``make + all install'' if it's not found. + + BUILD_DEPENDS + A list of ``path:dir'' pairs of other packages this pack- + age depends upon to build (between the ``extract'' and + ``build'' stages, inclusive). The test done to determine + the existence of the dependency is the same as + FETCH_DEPENDS. + + RUN_DEPENDS + This definition is deprecated, and is no longer used in + the packages collection. It should be replaced by a sim- + ple ``DEPENDS'' definition. + + LIB_DEPENDS + This definition is deprecated, and is no longer used in + the packages collection. It should be replaced by a sim- + ple ``DEPENDS'' definition. + + DEPENDS A list of prerequisite packages. The format of this entry + is ``pkgname:dir''. If the ``pkgname'' package is not + installed, then it will be built and installed from the + source package in ``dir''. + + CONFLICTS + A list of other ports this package conflicts with. Use + this for packages that install identical set of files. + The format of this entry is ``pkgname''. + + EXTRACT_CMD + Command for extracting archive. The default is tar(1). + + EXTRACT_SUFX + Suffix for archive names. The default is ``.tar.gz''. + + FETCH_CMD + Full path to ftp/http command if not in $PATH. The + default is _/_u_s_r_/_b_i_n_/_f_t_p. + + NO_IGNORE + Set this to ``YES'' (most probably in a ``make fetch'' in + _$_{_P_K_G_S_R_C_D_I_R_}) if you want to fetch all distfiles, even + for packages not built due to limitation by absent X or + Motif. + + __PLATFORM_OK + Internal variable set if the package is ok to build on + this architecture. Set to ``YES'' to insist on e.g. + fetching all distfiles (for interactive use in + _$_{_P_K_G_S_R_C_D_I_R_}, mostly. + + ALL_TARGET + The target to pass to make in the package when building. + The default is ``all''. + + INSTALL_TARGET + The target to pass to make in the package when + installing. The default is ``install''. + + MASTER_SORT + List of suffixes for preferred download locations to sort + the MASTER_SITES accordingly. + + MASTER_SORT_REGEX + Similar to MASTER_SORT, but takes a list of regular + expressions for finer grained control. + + OSVERSION_SPECIFIC + Used to denote packages, such as LKM's, which are tightly + bound to a specific version of the OS. Such binary pack- + ages are not backwards compatible with other versions of + the OS, and should be uploaded to a version specific + directory on the FTP. This variable is not currently + used by any of the package system internals, but may be + used in the future. Set this to ``YES'' to denote such a + package. + +MMOOTTIIFF SSUUPPPPOORRTT + This section documents variables related to the use and installation of + Motif and/or LessTif. Also, packages that require a Motif installation + need to include motif.buildlink.mk. + + USE_MOTIF12 + Set this in your package if it requires Motif-1.2 headers + and/or libraries. If Motif is not present on your sys- + tem, the lesstif12 package will be installed for you. + + MOTIFBASE + If set, it points to an existing Motif-2.0 installation. + Otherwise, this is set automatically to the directory of + the Motif-2.0 installation used. + + MOTIF12BASE + If set, it points to an existing Motif-1.2 installation. + Otherwise, this is set automatically to the directory of + the Motif-1.2 installation used. + + MOTIFLIB Set automatically to the flags and libraries needed to + link the Motif or LessTif library. + +PPAACCKKAAGGEE DDIISSTTFFIILLEE RREEPPOOSSIITTOORRIIEESS + The following variables allow to override the default package reposito- + ries, they define a space separated list of mirror sites to be used + instead of the defaults to retrieve packages from (usually if there's a + closer or cheaper site). + + `%SUBDIR%' and `${DIST_SUBDIR}' are replaced by a package specific + strings. + + MMAASSTTEERR__SSIITTEE__BBAACCKKUUPP + Backup sites for packages that are maintained in + `ftp.NetBSD.org:/pub/NetBSD/packages/distfiles/${DIST_SUBDIR}'. + + MMAASSTTEERR__SSIITTEE__GGNNUU + GNU source mirror. + + MMAASSTTEERR__SSIITTEE__LLOOCCAALL + Local package source distributions that are maintained in + `ftp.NetBSD.org:/pub/NetBSD/packages/distfiles/LOCAL_PORTS/'. + + MMAASSTTEERR__SSIITTEE__PPEERRLL__CCPPAANN + Perl CPAN mirror. + + MMAASSTTEERR__SSIITTEE__SSOOUURRCCEEFFOORRGGEE + download.sourceforge.net mirror. + + MMAASSTTEERR__SSIITTEE__SSUUNNSSIITTEE + sunsite.unc.edu mirror. + + MMAASSTTEERR__SSIITTEE__TTEEXX__CCTTAANN + TeX CTAN mirror. + + MMAASSTTEERR__SSIITTEE__XXCCOONNTTRRIIBB + X Window System contributed source mirror. + +SSPPEECCIIAALL VVAARRIIAABBLLEESS + Variables to change if you want a special behavior: + + ECHO_MSG Used to print all the ``===>'' style prompts - override + this to turn them off. The default is _/_b_i_n_/_e_c_h_o. + + CLEAR_DIRLIST + If set, cause the ``clean-update'' target to completely + clean up and lose the list of dependent packages. Use + with care! + + DEPENDS_TARGET + The target to execute when a package is calling a depen- + dency. The default depends on the target that is used: + ``package'' for ``make package'', ``update'' for ``make + update'', and ``reinstall'' for all other targets. + + NOCLEAN If set, prevent the ``update'' target from cleaning up + after itself. + + PKG_VERBOSE + If set, print out more information about the automatic + manual page handling, and package deletion (see the + ``install'', ``deinstall'' and ``update'' targets), and + also sets PATCH_DEBUG as well. + + REINSTALL + During update, deinstall each package before calling + `${DEPENDS_TARGET}' (see the ``update'' target for more + information). + + UPDATE_TARGET + The target to execute for building a package during + ``make update''. Defaults to ``install''. Other good + targets are ``package'' or ``bin-install''. Do not set + this to ``update'' or you will get stuck in an endless + loop! + +IINNSSTTAALLLL VVAARRIIAABBLLEESS + This section documents variables that serve as convenient aliases. for + your *-install targets. + + INSTALL_PROGRAM + A command to install binary executables. Use these like: + ``${INSTALL_PROGRAM} ${WRKSRC}/prog ${PREFIX}/bin''. + + INSTALL_SCRIPT + A command to install executable scripts. + + INSTALL_DATA + A command to install sharable data. + + INSTALL_MAN + A command to install man pages (doesn't compress). + + INSTALL_PROGRAM_DIR + Create a directory for storing programs. + + INSTALL_SCRIPT_DIR + Create a directory for storing scripts. + + INSTALL_DATA_DIR + Create a directory for storing arbitrary data. + + INSTALL_MAN_DIR + Create a directory for storing man pages. + +MMAANNUUAALL PPAAGGEE VVAARRIIAABBLLEESS + This section documents variables used to configure the way manual pages + are installed by this package. + + MANCOMPRESSED + Indicates that the package installs man pages in a com- + pressed form. The default package installs man pages + uncompressed. + + INFO_FILES + set to the base names of the info files you wish to be + installed in the info dir file. Automatically sets + USE_GTEXINFO. + +PPAACCKKAAGGEE TTAARRGGEETTSS + This section documents the default targets and their behaviors. If any + target relies on another target for completion (e.g., the ``install'' + target relies on the ``build'' target), then these targets will be exe- + cuted beforehand. + + fetch Retrieves ${DISTFILES} and ${PATCHFILES} into _$_{_D_I_S_T_D_I_R_} + as necessary. + + fetch-list + Show list of files that would be retrieved by fetch. + + extract Unpacks ${DISTFILES} into _$_{_W_R_K_D_I_R_}_. + + patch Apply any provided patches to the source. + + configure + Runs either GNU configure, one or more local configure + scripts or nothing, depending on what's available. + + build Actually compile the sources. + + install Install the results of a build. + + bin-install + Install a binary package from local disk and via FTP from + a list of sites (see ``BINPKG_SITES'' variable), and do a + ``make package'' if no binary package is available any- + where. The arguments given to pkg_add(1) can be set via + ``BIN_INSTALL_FLAGS'', e.g., to do verbose operation, + etc. + + reinstall + Install the results of a build, ignoring ``already + installed'' flag. + + deinstall + Remove the installation. + + update Update the installation of the current package and all + dependent packages that are installed on the system. + + replace Update the installation of the current package. This + differs from update in that it does not replace dependent + packages. You will need to install + _p_k_g_s_r_c_/_p_k_g_t_o_o_l_s_/_p_k_g___t_a_r_u_p for this target to work. + + package Create a binary package other people can use. + + clean Clean the source tree for a package. + + clean-depends + Clean the source tree for a package and the packages it + depends upon. + + clean-update + Clean the source tree for a package and all dependent + packages that are installed on the system. + + describe Try to generate a one-line description for each package + for use in INDEX files and the like. + + checksum Use _f_i_l_e_s_/_m_d_5 to ensure that your distfiles are valid. + + makesum Generate _f_i_l_e_s_/_m_d_5 (only do this for your own packages!). + + readme Create a README.html file describing the category or + package. See _$_{_P_K_G_S_R_C_D_I_R_}_/_P_a_c_k_a_g_e_s_._t_x_t for more details. + + mirror-distfiles + Mirror the distfile(s) if they are freely re-dis- + tributable. If NO_SRC_ON_FTP is set in the package's + Makefile (usually to _$_{_R_E_S_T_R_I_C_T_E_D_}) then that reason is + printed, and the distfile is not mirrored. + + Default sequence for ``all'' is: fetch checksum extract patch configure + build. + + NEVER override the ``regular'' targets unless you want to open a major + can of worms. + +SSEEEE AALLSSOO + make(1), mk.conf(5), _$_{_P_K_G_S_R_C_D_I_R_}_/_m_k_/_b_s_d_._p_k_g_._d_e_f_a_u_l_t_s_._m_k and + + _D_o_c_u_m_e_n_t_a_t_i_o_n _o_n _t_h_e _N_e_t_B_S_D _P_a_c_k_a_g_e _S_y_s_t_e_m. _$_{_P_K_G_S_R_C_D_I_R_}_/_P_a_c_k_a_g_e_s_._t_x_t + +HHIISSTTOORRYY + This manual page is based upon the comments in the _b_s_d_._p_k_g_._m_k file, as + distributed with NetBSD. The sources to this are far and varied across + all free BSD projects. + +NetBSD 1.6 September 15, 2003 NetBSD 1.6 diff --git a/bootstrap/files/strip-sh b/bootstrap/files/strip-sh new file mode 100755 index 00000000000..a737466080c --- /dev/null +++ b/bootstrap/files/strip-sh @@ -0,0 +1,26 @@ +#!/bin/sh +# +# On AIX, strip complains too much if the file is not +# writable, or if it's already stripped. +# +for f in "$@" ; do + if ! /usr/bin/file "$f" | grep -q "not stripped" ; then + # Skip the file if it's already stripped + continue + fi + nowrite=0 + if [ ! -w "$f" ] ; then + # Make sure it's writable. + nowrite=1 + chmod +w "$f" + fi + /usr/bin/strip "$f" + ret=$? + if [ $nowrite -eq 1 ] ; then + chmod -w "$f" + fi + if [ $ret -ne 0 ] ; then + exit $ret + fi +done +exit 0 |