summaryrefslogtreecommitdiff
path: root/mk/tools.mk
AgeCommit message (Collapse)AuthorFilesLines
2005-01-21Interix doesn't have a "flex" program per se in the base system. Its "lex"tv1-2/+2
is flex, but libfl.a and FlexLexer.h are missing. So use pkgsrc flex on an as-needed basis.
2004-12-30Create a symlink to the pkgsrc perl executable in ${TOOLDIR}/bin sominskim1-1/+16
that native perl is never used. Suggested by jlam@.
2004-12-22On NetBSD, rpcgen must *always* be invoked with "-b":jlam1-3/+6
-b Compile stubs in "backwards compatible" mode, disabling support for transport-independent RPC. The -b should always be specified when generating files for NetBSD, since there is no transport-independent RPC support in NetBSD. Therefore, force "-b" to be the first argument whenever rpcgen is invoked via the wrapper.
2004-12-18Always create a ${TOOLS_DIR}/bin/rpcgen to wrap the real rpcgen.jlam1-1/+22
The wrapper will correctly set the CPP environment variable to a stat((2)able path to a C preprocessor, then rely on the PATH to find and invoke the real rpcgen. Remove NO_EXPORT_CPP in package Makefiles where it was used just to avoid problems with rpcgen. The build system now just does the right thing automatically without needing package-specific knowledge. This fixes PR pkg/27272.
2004-11-02Some updates for DragonFly from Todd Willey via tech-pkg.wiz1-6/+6
2004-10-14make sure _TOOLS_HAS_GNU.<tool> is initialised. from Michael van Elstgrant1-1/+2
in PR pkg/27258.
2004-10-14fix a commentgrant1-2/+2
2004-10-14devel/yacc -> devel/bison. there is no such package as devel/yacc.grant1-2/+2
(how did this ever work?)
2004-10-14handle the operating system having GNU yacc (actually bison) andgrant1-1/+5
explicitly undef YACC. YACC?=yacc is set in sys.mk, but this interferes with building some packages that require bison because they try ${YACC} and fail.
2004-10-12Let's do another _TOOLS_REPLACE_OPSYS dance for Interix. It ships with atv1-2/+2
version of gawk in /usr/contrib/bin, so use that instead.
2004-10-11Upon further digging, it appears that Interix just needed atv1-2/+2
_TOOLS_REPLACE_OPSYS setting to pick up nbsed in tools.mk; no need to throw more into autoconf's environment.
2004-10-06Reorganize some of the files under pkgsrc/mk:jlam1-2/+2
(1) defs.${OPSYS}.mk --> platform/${OPSYS}.mk. The "platform" subdirectory is where all of the ${OPSYS}-specific infrastructure logic should reside. (2) bsd.pkg.defaults.mk --> defaults/mk.conf bsd.pkg.obsolete.mk --> defaults/obsolete.mk Renaming bsd.pkg.defaults.mk to defaults/mk.conf is to mimic the way that NetBSD has /etc/rc.conf as well as /etc/defaults/rc.conf, where the latter is a full list of user-settable variables, and the two files share the same name to reinforce the fact /etc/defaults/rc.conf can be directly copied in place as /etc/rc.conf. This is the same relationship shared by defaults/mk.conf and /etc/mk.conf.
2004-08-23Also hide automake 1.9* commands by adding their names in _HIDE_PROGS.automake.seb1-2/+4
For me this fixed the build of devel/kdevelop-base version 3.1.0 with latest automake package version 1.9.1 installed.
2004-07-22make the TBL variable work as intendeddrochner1-2/+2
2004-07-21If a package Makefile sets USE_TBL to "yes", then add "tbl" tojlam1-1/+22
${TOOLS_DIR}/bin. It will either point to /usr/bin/tbl or will depend on groff otherwise. This should allow removing dependencies on groff just for the sake of forcing the existence of tbl.
2004-06-15NetBSD 2.0 and above does not have GNU awk, make it so.grant1-3/+3
2004-04-27if we need the devel/flex package and USE_BUILDLINK3 is set, thendmcmahill1-1/+5
pull in devel/flex/buildlink3.mk instead of just listing a BUILD_DEPENDS. This is needed because flex installs a library.
2004-04-22So the patch(1) shipped with Interix is just *slightly* too old: it can'ttv1-2/+2
cope with "new" files (i.e., -0+0 starting line). Do what AIX does and make pkgsrc depend on textproc/patch for Interix.
2004-03-29fix our idea of which platforms have bison.grant1-2/+2
2004-03-11Add Interix where appropriate, and fix a typo in _TOOLS_OPSYS_HAS_GNU.sed.tv1-6/+8
2004-03-09Add FreeBSD-*-* to _TOOLS_OPSYS_HAS_GNU.sed.xtraeme1-2/+2
2004-02-18Remove some checks for PREPEND_PATH as we don't need them.jlam1-4/+1
2004-02-18* Move pkgsrc/mk/compiler/bsd.compiler.mk to pkgsrc/mk/compiler.mk.jlam1-2/+2
Package Makefiles may now directly include compiler.mk. * Don't include compiler.mk within bsd.prefs.mk any longer. It was only included for the purposes of defining CC_VERSION. Packages that want to test the value of CC_VERSION should now first include "../../mk/compiler.mk". Any GCC_REQD statements in package Makefiles should be set before compiler.mk is included. * Simpllfy pkgsrc/mk/compiler/*.mk files as a result of not needing to be included indirectly by bsd.prefs.mk. We remove the special handling associated with detecting whether the file was included from within bsd.prefs.mk. These files are now much more straightforward to write and understand. * G/C the BSD_PREFS_MK stack mechanism as the only users (compiler/*) no longer need it. * Ensure that directories are prepended to the PATH only from within bsd.pkg.mk.
2004-02-17Move up the creation of the auto* stubs to just before the do-configurejlam1-3/+3
target. This still allows any autoconf/automake we execute at pre-configure time to find its own scripts, but forces the configure script find our stubs instead. This should prevent the need to constantly override the missing script using GNU_MISSING_OVERRIDE.
2004-02-11Defer creating the auto* stubs until just before we enter the build phase.jlam1-2/+4
This allows any autoconf/automake we execute at pre-configure time to find its own scripts, yet still prevents "make build" from clobbering any changes we may have made.
2004-02-06Hiding the PATH from certain phases of the build only accidentally workedjlam1-3/+2
due to a type on gcc.mk that causes the ${_GCC_PREFIX}/bin to always be prepended to the PATH. The problem that was hiding was "make" resolving to ${TOOLS_DIR}/bin/make if the package used GNU make, which broke building since the package Makefile is a BSD Makefile and we passed PATH to some phases of the build. Fix this by expanding MAKE to the full path to ${MAKE} in bsd.prefs.mk. We also garbage collect the now useless checks for PHASES_AFTER_BUILDLINK that cluttered the PREPEND_PATH code.
2004-02-06We only prepend a directory to the PATH if we haven't already done sojlam1-1/+7
(by checking PREPEND_PATH) and only for those phases of the build that care about the PATH (buildlink or later). We also pass the PATH to those same phases of the build so that executing ${CC} will work correctly from custom {pre,do,post}-* targets that occur at buildlink time or later.
2004-02-03add support for the GNU versions of lex and yacc, which are requiredgrant1-2/+43
to build some packages on some platforms.
2004-01-29bring back rev. 1.20.grant1-2/+22
in fact, the last revision didn't contain unwanted changes, but two minor errors, now fixed. sorry for the mess.
2004-01-29backout previous; it had other changes I didn't want to commit yet...grant1-22/+2
2004-01-29add GNU gnu patch(1), to override patch(1) on some platforms.grant1-2/+22
2004-01-07Assume NetBSD's sed is good enough.wiz1-2/+2
If problems arise, we can always remove it later. jlam@ agrees (see tech-pkg).
2003-12-23hide aclocal-1.8 and automake-1.8 after automake update to 1.8.grant1-2/+4
2003-12-23fix a comment.grant1-2/+2
2003-12-04Congratulations, we've found our first incompatible awk: Irix!jschauma1-2/+2
Pointed out by Bas van Oostveen in PR pkg/23514.
2003-09-21don't try to use tools if they haven't been installed yet.grant1-1/+11
fixes PR pkg/22844.
2003-09-19add m4 to the list of tools.grant1-2/+20
2003-09-02Merge pkgviews-mk branch into the HEAD by running:jlam1-1/+1
cd pkgsrc/mk cvs update -Pd -A cvs update -Pd -j pkgviews-mk-base -j pkgviews-mk
2003-08-27GNU make installed from pkgsrc can always be found asjlam1-2/+2
${LOCALBASE}/bin/gmake. ${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}/make technically works, too, but this covers the (unsupported!!) case where the user has GNU_PROGRAM_PREFIX="" and has moved the "make" binary directly over the "gmake" symlink created by pkgsrc (Jeremy Reed reported this problem on tech-pkg@ because he uses this a a debugging technique to find out whether GNU make is actually needed by a package or not).
2003-08-27Cut-n-pasto: s/GREP/GMAKE/ in the GNU make section. (from pkgviews-mk)jlam1-2/+2
2003-08-26Create a symlink from the "make" requested by the package intojlam1-2/+39
${TOOLS_DIR}/bin/make. If a package wants GNU make, then it should set: USE_GNU_TOOLS+= make in the package Makefile. Allow for USE_GMAKE to continue to work until we get a chance to sweep through pkgsrc and remove the usage of this now-redundant variable. This change allows us to avoid patching makefiles that use a bare "make" command to invoke sub-make processes. Idea suggested by salo@netbsd.org in pkg/22509.
2003-08-17Avoid circular dependencies if USE_GNU_TOOLS is set unconditionally injlam1-1/+19
either the environment or in /etc/mk.conf by telling dependencies of the named GNU tool to ignore any USE_GNU_TOOLS settings when they are built.
2003-08-17If an OS is listed in _TOOLS_REPLACE_OPSYS.<tool>, then we want to makejlam1-2/+4
sure that tool is symlinked into ${TOOLS_DIR}/bin.
2003-08-16put SunOS back in _TOOLS_REPLACE_OPSYS.sed.grant1-2/+2
2003-08-16fix small typo: TOOLS_REPLACE -> _TOOLS_REPLACEgrant1-2/+2
2003-08-16Move the hide-tools portion of bsd.buildlink2.mk into tools.mk, andjlam1-131/+185
put the tools in ${WRKDIR}/.tools/bin instead of in ${BUILDLINK_DIR}, and remove the need for buildlink2 to use USE_GNU_TOOLS. In the modified USE_GNU_TOOLS implementation, the following implementation- specific variables have the following meanings: _TOOLS_REPLACE.<tool> means that we want ${AWK}, ${SED}, etc. symlinked into ${TOOLS_DIR} as awk, sed, etc. _TOOLS_NEED_GNU.<tool> means that we want to use the pkgsrc version of <tool> symlinked info ${TOOLS_DIR} as awk, sed, etc. If this is "YES", then it always trumps _TOOLS_REPLACE.<tool>. And we want nothing to happen if we're building the pkgsrc GNU tool itself. The modified USE_GNU_TOOLS implementation should also hopefully fix the circular dependency problem. Create a new target "tools" that is run after "patch" and before "buildlink" that populates the ${TOOLS_DIR} directory. This ensures that it's always run at the right time, instead of relying on pre-buildlink or pre-configure, which may be cancelled by NO_BUILDLINK or NO_CONFIGURE. XXX There is some possible fallout in texinfo.mk with the MAKE_ENV and XXX CONFIGURE_ENV settings for INSTALL_INFO and MAKEINFO. It looks XXX like the MAKE_ENV and CONFIGURE_ENV settings should move from XXX tools.mk into texinfo.mk, and they no longer need to be XXX conditional on USE_BUILDLINK2. I'll leave it to the texinfo.mk XXX dude (Hi, Stoned!).
2003-08-12mark sed on Solaris as having a suitable replacement, eliminating thegrant1-6/+2
circular dependency on GNU sed until this is addressed properly.
2003-08-02depend on the right version of grep.grant1-2/+2
2003-08-02comment: clarify and describe why USE_GNU_TOOLS+= must be used.grant1-4/+10
2003-08-02handle platforms with broken tools in the base system, such as sedgrant1-0/+173
and awk. as proposed on tech-pkg@, with some changes to set the appropriate tool variables and handle OSs which provide GNU tools in the base system (ie. do nothing). this allows packages or users to force the use of pkgsrc GNU tools when they are not present in the base system by defining e.g. USE_GNU_TOOLS="awk sed". Solaris' sed is marked as incompatible, as even the XPG4 sed is too limited for a number of packages (especially large ones which use libtool, as libtool calls blind 'sed'), so GNU sed is always used on Solaris.