summaryrefslogtreecommitdiff
path: root/mk/bsd.pkg.mk
AgeCommit message (Collapse)AuthorFilesLines
2015-04-29Introduce _USE_CWRAPPERS logic to ensure consistency, USE_CWRAPPERS couldjperkin1-2/+2
differ between a package and user setting, resulting in incorrect WRAPPER_* values being set from wrapper-defs.mk.
2015-04-27Split cwrappers from legacy wrappers. We no longer generate the legacyjperkin1-3/+4
wrappers when USE_CWRAPPERS is enabled, saving a reasonable amount of I/O during builds, mostly due to avoiding the transform/untransform sed file generations. WRAPPER_DIR and WRAPPER_BINDIR are used by various packages to override or point to specific wrappers, and these now point to the cwrappers directory when enabled, removing the need for CWRAPPERS_BIN_DIR duplication and fixing packages which previously were using legacy wrappers by accident. A number of targets are now duplicated between bsd.wrapper.mk and cwrappers.mk, the intention being that the legacy wrappers will be deprecated once cwrappers is verified on all supported platforms. If that turns out to take longer than expected, we will probably want to introduce a wrapper.mk to abstract them away before loading the appropriate back-end.
2015-03-07Address issues raised by agc@ to make the github master site handlingtnn1-7/+3
more pkgsrcesque. 1) turn _USE_GITHUB into an internal infrastructure variable 2) put back MASTER_SITES in packages' Makefiles. 3) encode the account in the master site URL, remove GH_ACCOUNT 4) rename GH_PROJECT to GITHUB_PROJECT 5) rename GH_TAGNAME to GITHUB_TAG and allow it to accept commit hash as well as tag. GH_COMMIT is gone. 6) turn on this functionality when MASTER_SITES matches a predefined github pattern instead of via explicit USE_GITHUB setting.
2015-03-07Adopt USE_GITHUB from FreeBSD ports to make github MASTER_SITEtnn1-1/+9
handling less painful. See: https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/makefile-distfiles.html#makefile-master_sites-github To use, set in Makefile: DISTNAME= exampleproject-1.2 USE_GITHUB= YES The following variables alter USE_GITHUB behavior: GH_ACCOUNT defaults to PKGBASE GH_PROJECT defaults to PKGBASE GH_TAGNAME defaults to PKGVERSION_NOREV (sometimes you want to override with v${PKGVERSION_NOREV}) GH_COMMIT explicit commit hash if no tag is available GH_RELEASE default empty, may be set to ${DISTNAME} for example GH_TYPE overrides the autodetected MASTER_SITE URL scheme
2015-01-01Use PKG_SKIP_REASON instead of PKG_FAIL_REASON for some cases wheredholland1-5/+5
the problem is either situational (e.g. the various RESTRICTED-like cases) or unfixable in pkgsrc (no pthreads, ipv6, etc. on platform). Conversely, if the wrong version of mysql is installed, that's a PKG_FAIL_REASON.
2015-01-01Add support for BROKEN_ON_PLATFORM and BROKEN_EXCEPT_ON_PLATFORM, as perdholland1-4/+36
discussion on tech-pkg. BROKEN_ON_PLATFORM and NOT_FOR_PLATFORM are the same, except that (now) BROKEN_ON_PLATFORM sets PKG_FAIL_REASON and NOT_FOR_PLATFORM sets PKG_SKIP_REASON. BROKEN_EXCEPT_FOR_PLATFORM and ONLY_FOR_PLATFORM correspond in the same way. The idea is that going forward we will distinguish unbuildable packages that theoretically ought to be fixed (these are BROKEN) from packages where it doesn't make sense to build (these are NOT_FOR)... examples of the former include most non-64-bit-clean packges; examples of the latter include OS-specific language bindings. A general review of the uses of NOT_FOR_PLATFORM and ONLY_FOR_PLATFORM (converting many of them to BROKEN...) is coming up. Similarly, a general review of the uses of PKG_FAIL_REASON and PKG_SKIP_REASON is coming up. For this to become useful, pbulk needs to be taught to report failing and skipped packages differently - the idea is that failing packages should be reported up front and skipped packages don't need to be. This has not been done yet, but one set of things at a time...
2014-12-30Remove pkg_views support, second part: infrastructure.wiz1-32/+1
2014-11-25mk/buildlink3/* (via mk/wrapper/bsd.wrapper.mk") must be included beforejoerg1-3/+3
mk/cwrappers.mk, so fix include order.
2014-11-24Add cwrappers glue as developed during Google's Summer of Code 2007.joerg1-1/+5
2014-10-12Simplify PKG_DEVELOPER checks.joerg1-2/+2
2014-10-09Remove SVR4_PKGNAME, per discussion on tech-pkg.wiz1-2/+1
2014-08-28Make package cross-compiling work through su-target asriz1-1/+2
well as it does for unprivileged builds. From riastradh.
2014-08-14Split SMF handling across bsd.pkg.mk and bsd.prefs.mk. Should fix issuesjperkin1-1/+7
with packages which include bsd.prefs.mk before setting SMF variables.
2014-06-02Remove old bulk build code. Use pbulk.wiz1-14/+1
2014-05-06Move INIT_SYSTEM to bsd.prefs.mk, allowing it to be tested injperkin1-9/+1
package Makefiles when packages perform custom rc.d handling.
2014-04-15Remove DEBUG_FLAGS variable that occurs exactly once in pkgsrc -- here.wiz1-2/+2
Set INSTALL_UNSTRIPPED if you want the behaviour it affected.
2014-03-11Introduce infrastructure support for SMF.jperkin1-1/+4
SMF is the Service Management Facility, the default init system in Solaris and derivatives since version 10. This adds "smf" to the list of supported INIT_SYSTEM types, and makes it the default init system on platforms where it is available. Packages can introduce SMF support by providing a manifest file, by default located in ${FILESDIR}/smf/manifest.xml but manifests under ${WRKSRC} can be used too if the package source includes one. SMF method scripts are supported too if required, using SMF_METHODS in a similar manner to RCD_SCRIPTS. Many parts of the SMF infrastructure are configurable, see mk/smf.mk for the full details.
2014-03-11Add initial support for alternative init systems.jperkin1-1/+6
This commit introduces an INIT_SYSTEM variable which will determine the type of init system to be used on the target system, supporting "rc.d" at this time. The pkginstall infrastructure is changed to only install RCD_SCRIPTS if INIT_SYSTEM is set to "rc.d", and PLIST entries for rc.d scripts are now handled automatically based on RCD_SCRIPTS.
2014-03-03Use PKGNAME_NOREV as a part of default WRKSRC if DISTNAME is not defined.obache1-2/+2
2014-03-02loose mandantory DISTNAME.obache1-3/+7
2013-07-15Reset MAKELEVEL=0 to fix bad gmake/bsdmake interactions.christos1-1/+2
Our make(1) now sets $MAKELEVEL. While this should cause no harm, gmake detects a non-zero $MAKELEVEL and automatically sets "w" in $MAKEFLAGS for subordinate makes, in order to print the entry and exit directories. Our make, does not understand -w, so it prints an error message and exits. In order to catch this everywhere (since cmake for example can invoke either our make or gmake depending on how it feels), we reset the variable for any top level command. This effectively reverts to the behavior of our make not setting $MAKELEVEL.
2013-06-05Revert change to "PKG_SETENV":tron1-2/+6
1.) It breaks the build of "www/firefox" which gets upset if "SHELL" is not defined in the environment. There are probably more packages which similar problems. 2.) It breaks established use case like this one: export ALLOW_VULNERABLE_PACKAGES=yes cd pkgsrc/multimedia/ffmpeg2theora bmake install In this case the value of "ALLOW_VULNERABLE_PACKAGES" will not be passed to the build of "pkgsrc/multimedia/ffmpeg". And the build of this package will fail due to known vulnerabilities.
2013-06-03Make PKGSRC_SETENV sanitize the environment.riastradh1-3/+2
2013-05-12drop `file' command from default USE_TOOLS list.obache1-2/+7
It is used in limited case, and does not exist by default on some platforms. proposed at over 30 months ago, and no negative feedback (only one request).
2013-05-09Split BUILD_DEPENDS into TOOL_DEPENDS and BUILD_DEPENDS in mk/.riastradh1-1/+2
Build depends are target packages that are needed at build-time for, e.g., static libraries to link against, header files to include, &c. Tool depends are native packages that are needed at build-time for, e.g., compilers/linkers/&c. to run. ok agc
2013-04-25also reset LC_ALL as C.obache1-1/+2
2013-02-22Allow to overwrite commnand of privilege check as _IS_ROOT_CMD.obache1-2/+3
2013-02-21if `id -u' failed, assume that numeric ID is specified (especially for Cygwin).obache1-2/+2
2013-02-15check requirement of uac manifest, it is required for Windows Vistaobache1-3/+5
(aka NT-6.0) and later.
2013-02-10Experimental support of manifest files for Windows UAC.obache1-1/+5
For Windows Vista or later, executable files including special keywords (install, update, patch, and so on) in its name are expected as requireing privileged permissions by default (UAC). If not, it must be specified with manifest file, or it will be failed to execute as "Permission denied".
2012-12-06Introduce PKGGNUDIR as a way to control gnu prefix.jperkin1-1/+2
By default pkgsrc uses LOCABASE/gnu as a prefix for packages to install native versions of GNU tools, which are them symbolically linked back to the 'g' versions of the files in LOCALBASE, and users can then add LOCALBASE/gnu/bin to PATH to pick up those tools. On systems where the GNU environment is desired, PKGGNUDIR now allows users to install the non-'g' files directly into LOCALBASE, making them the default without having to alter PATH, whilst retaining the 'g' files in order to ensure dependencies and tool paths remain the same.
2012-07-18Pass down ${_PATH_ORIG} to privileged stage sub make instead of modified ${PATH}obache1-4/+2
for pkgsrc internally, It may cause some problems (ex. unwanted pick up commands of tools/wrapper). No objection in teck-pkg@ for a week.
2012-05-24Use ?= for setting PKGSRC_SETENV to make it easy to override in mk.confabs1-2/+2
2012-03-05Pass MKCATPAGES to packages that use BSD-style Makefiles.sbd1-1/+2
2011-10-15Rename "flavor" to "pkgformat".reed1-3/+3
This is from Anton Panev's GSoC 2011 project to add RPM and DPKG support to pkgsrc. (I am not adding that further support in this commit.) This is just a rename of the existing functionality. Now it will be easy to test the GSoC work by simply putting in a single directory (such as "rpm" or "deb"). See http://addpackageforma.sourceforge.net/ for some details. This is from Anton's CVS, but I made some minor changes: - changed plural pkgformats to singular pkgformat (to be consistent) - fixed a few places (in comments) that were missed - catch up on some additions to flavor not in the pkgforma cvs: PKGSRC_SETENV and _flavor-destdir-undo-replace and undo-destdir-replace-install.
2011-09-08Introduce PKGSRC_SETENV, defaulting to SETENV. Can be set to ${SETENV} -iabs1-2/+5
to santise environment
2011-03-12Add MULTI variable, and add it to BUILD_DEFS, to more easily findwiz1-1/+8
variable settings affecting binary packages. From Aleksey Cheusov in PR 44695.
2011-02-07Handle '-' in uname output, needed for DragonFly. From Justin Sherrill in PR ↵wiz1-2/+2
44526.
2010-11-03Removed duplicate PKGVERSION lineadam1-2/+1
2010-08-24I'm fed up with having to waste time because PKG_DEVELOPER is "special" andbad1-2/+2
can't be disabled by setting it to "no" like the other variables. Besides, flavor/pkg/metadata.mk has been expecting for a long time that "no" is a valid value. Make PKG_DEVELOPER DWIM.
2010-07-03Remove MKDIR line that causes the one following to effectivelydarcy1-2/+1
be a no-op. With this line removed the umask will be applied to the created directories. As discussed with joerg@.
2010-05-20On Linux systems record the glibc version in the build information.sbd1-1/+5
OKed by wiz@
2010-05-19Add BUILTIN_PKGS with the "builtin" package names to the build information.sbd1-1/+12
E.g if readline 6.0 and ncurses 5.7 are part of the system we get: BUILTIN_PKGS=readline-6.0 ncurses-5.7
2010-04-30Simplify the osabi dependence as suggested by wiz@.sbd1-2/+2
2010-04-30Improve the pattern of the osabi dependence again!sbd1-2/+2
2010-04-30Change the pattern of the osabi dependence to one the actually works!sbd1-2/+2
2010-04-30Make all packages that set OSVERSION_SPECIFIC depends on pkgtools/osabi.sbd1-1/+2
Also include a note about changes to OS_VERSION in bsd.prefs.mk
2010-02-23Retire check for ONLY_FOR_ARCHS, NOT_FOR_ARCHS and NOT_FOR_OPSYS.joerg1-6/+1
2010-02-23Retire check for MASTER_SITE_SUBDIR and PATCH_SITE_SUBDIR.joerg1-9/+1
2010-02-23Retire check for ALL_TARGET. It was added before 2005.joerg1-5/+1