patches even if one fail.
This helps when upgrading ports with a large number of patches, like
www/chromium where having to fix one patch, re-do the patching, fix the
fallout, 800 times, is really painful.
This fixes the first attempt at this which would make ports with
multiple patches patching one file somewhat explode.
Bump the minimum required pkg version to a version that accepts
properly lua scripts
Lua script offers the advantages over shell scripts that they are
running in a capsicum sandbox and they are natively rootdir friendly
Reviewed by: portmgr (mat)
Differential Revision: https://reviews.freebsd.org/D21433
This is to fix a cacche type to ccache in a comment, and the double
full-stop on the console when trying to build an unsupported FLAVOR:
===> py27-example-9.8.7 Unknown flavor 'py27', possible flavors: py37..
Approved by: portmgr@ (bapt@, on reviews.f.o)
Differential Revision: https://reviews.freebsd.org/D24588
The current implementation of install-missing-packages does not handle
correctly the situation when a port is missing multiple dependencies. pkg(8)
would only get the first missing origin as an argument. All the other origins
would be listed on new lines and would not be passed to pkg(8).
PR: 244215
Discussed with: mat, tobik
Approved by: portmgr (implicit, fix r525388)
Differential Revision: https://reviews.freebsd.org/D23795
As suggested by mat@ in D23484, let's use a proper if statement here
instead of short-circuits operators. Also, arguments to echo should be
quoted and ECHO_CMD should be used instead of ECHO (see bsd.commands.mk for
details).
Reported by: mat
Reviewed by: mat
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D23535
r519284 introduced a new target, install-missing-packages, which is
meant to allow users to install dependencies via pkg(8) instead of
building them themselves locally.
The target was producing errors when the dependencies were already
available on the system. This commit adjusts this behavior to just
silently do nothing if everything is fine. Also, wrap the command
with SU_CMD for better user experience.
Also, fix some trailing whitespace introduced in the original commit.
Reviewed by: bapt
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D23484
Also compress manpages in this location.
As a followup of a discussion which occured in 2017:
https://lists.freebsd.org/pipermail/freebsd-arch/2017-March/018115.html
And following:
https://svnweb.freebsd.org/base?view=revision&revision=315053
and
https://svnweb.freebsd.org/base?view=revision&revision=315142
All the supported FreeBSD version now supports share/man in manpath for
LOCALBASE As a result the ports tree can now accept it for manpage, but
more over migrate to this new path. Resulting in more consistency now the
manpages in base and ports would be in the relative path (under share/)
and a reduced amount of patching needed to port something to FreeBSD
Note1: this has already be done for GNU info pages earlier
Note2: due to the fact that for end user no functionnality will change during
the migration of the manpages to the new location and to avoid massive rebuild
of packages, it has been decided to not bump portrevision when migrating.
Reviewed by: mat (portmgr)
Differential Revision: https://reviews.freebsd.org/D23166
Previously variables such as AS, LD, etc. were only set to the path
but not the tool itself due to a typo.
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D22593
We'll have a new abi on ppc64 soon (ELFv2) which is incompatible with the ELFv1 abi. We need to detect the abi on which we build stuff.
Submitted by: mikael_urankar@gmail.com
Approved by: portmgr (earlier version)
Differential Revision: https://reviews.freebsd.org/D22039
This permits a port to use separate packing lists for optional
components instead of depending on PLIST_SUB.
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D22450
While here, modernize some comments in Mk/bsd.*.mk.
Note that graphics/drm-fbsd11.2-kmod is not renamed yet, this was somewhat
under discussion.
Submitted by: rene
Reviewed by: antoine, jbeich, mat, zeising
Differential Revision: https://reviews.freebsd.org/D21974
Retire XORG_CAT, it is not needed since all ports has moved to use
USES=xorg-cat.
Add a check to bsd.sanity.mk causing an error if any port happens to set it
in the future.
PR: 241694
Approved by: portmgr (mat)
The reason is that on elfv2 systems we still have ld.bfd in base, but it's only used for 32-bit binaries (LLD currently doesn't support linking 32-bit PPC binaries).
ld.bfd from base supports only elfv1 and using it breaks linking many ports that set LLD_UNSAFE. Use Binutils from ports in such case.
PR: 239743
Submitted by: jbeich
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D21996
in 2019 the norm is for applications to support both v4 and v6 version of the ip
stack. Furthermore, the ipv6 category was clearly not consistently spread over
the ports tree defeating the goal of the category.
makesum" downloads distfiles for all supported architectures while "make
fetch" only downloads files for the build architecture.
Approved by: portmgr (bapt)
This is useful when 2 tools do provide the same feature, but the configure
scripts do test for some variables which are not in one of the tool.
For example m4 in base is mostly compatible with GNU m4 when called with the -g
arguement. This wrapper allows to use it with build systems that do check for it
calling --version and expecting GNU in the arguments.
Reviewed by: mat (final discussions on irc)
Differential Revision: https://reviews.freebsd.org/D21835
when converting the do-fetch target to proper scripting
we lost the ability to overwrite do-fetch when running make makesum.
as reported here: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=
Let's call again do-fetch directly instead of duplicating its content
PR: 215530
Reported by: jbeich
Differential Revision: https://reviews.freebsd.org/D21544
first deinstall then reinstall.
For now keep the DEPENDS_TARGET, which should probably die, but
let study that in a second step
PR: 224244
Submitted by: Walter Schwarzenfeld <w.schwarzenfeld@utanet.at>
overlays are a way to help users to integrate their own ports tree
with the official ports tree without having to maintain clone of the
official tree and remerge on regular basis.
The ports tree will lookup in the overlays (in the order the are listed in
OVERLAY variable) for the dependencies and the USES. It will use the first
found.
in order to use it the user have to declare his overlays that way in their
make.conf:
OVERLAYS= overlay1 overlay2 overlay3
Reviewed by: manu
Approved by: swills
Differential Revision: https://reviews.freebsd.org/D21468
Change the handling of xorg dependencies to use the USES framework instead
of bsd.xorg.mk. bsd.xorg.mk is split into two parts:
* USES=xorg for ports depending on xorg ports with USE_XORG
* USES=xorg-cat for xorg ports with XORG_CAT
USES=xorg is fairly straight forward. The components needed are specified
with USE_XORG, and USES=xorg is needed to pull in this part of the
framework.
USES=xorg-cat requires that the category, previously specified with
XORG_CAT, now be passed as an argument to xorg-cat, like this
USES=xorg-cat:category. Not specifying a category is an error.
Further, it is also possible to specify which build system to use. The
default if nothing is specified is autoconf, but meson will also be supported.
This is added with a second argument: USES=xorg-cat:category[,buildsystem].
Detailed changelog:
* Add support in Uses/xorg-cat.mk to specify build system. Previously, only
autoconf was supported for xorg ports, but with this change, it's possible
to use meson instead. Autoconf is still the defaultx, if nothing else is
specified. The meson support is still disabled, and requires more testing.
* Add support in Uses/xorg-cat.mk to pull sources from freedesktop.org
gitlab.
When specifying USE_GITLAB in a port using xorg-cat, then various GL_*
variables will be set up automatically, as well as needed changes to the
build.
* Switch x11-drivers/xf86-video-intel to use the USE_GITLAB framework.
* While touching xf86-video-intel, switch to USES=xorg xorg-cat:driver, and
pet portlint.
* Add compat shims and warnings to bsd.port.mk, which will handle the old
style ports Makefiles.
* Change Uses/gl.mk and Uses/motif.mk to use this new framework.
* Change Uses/autoreconf.mk to check and add dependencies later. This is
needed because xorg-cat uses autoreconf, and without this fix
dependencies were not added properly.
* Be stricter about checking for arguments in USE_XORG, previously, :build
and :run were accepted, but not supported. Only the default or :both
supported.
* Change multimedia/gstreamer1-vaapi to handle the stricter argument
checking in USE_XORG, and add USES=xorg
* change x11/xscope to get distinfo from xorg-cat, instead of rolling it's
own, and add USES=xorg-cat
PR: 238988 (exp-run)
Reviewed by: antoine, tcberner, tijl, mat, tobik
Approved by: portmgr (antoine)
Obtained from: FreeBSD Graphics Team development repo
https://github.com/FreeBSDDesktop/freebsd-ports/tree/feature/usesxorg
Sponsored by: B3 Init (zeising)
Differential Revision: https://reviews.freebsd.org/D20724
- Make USE_GIT(HUB|LAB) behave more responsibly with DISTNAME.
- Fix a small bug in the USE_GITLAB extra distfile naming.
Differential Revision: https://reviews.freebsd.org/D20140
Frow now on, USES=sdl should be used to specify dependency on SDL
libraries.
USE_SDL is still required to specify components, specifying it
without USES=sdl is still supported, but deprecated, and leads to
a warning. USE_SDL=yes support was removed, and now leads to error,
USE_SDL=sdl should be used instead (all ports which still used
USE_SDL=yes were fixed). sdl.mk was simplified and modernized along
the way.
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=235561
Approved by: portmgr (mat)
Exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D19075
Although nice in theory, all 19 ports that were using it had an "if FLAVOR"
block in them anyway and it broke support for various tools, such as rmport,
Freshports (possibly) and pkg notes.
This reverts r484598
Discussed with: tcberner
After a discussion on the mailing list on moving manpages to
${PREFIX}/share/man for consistency with base where it is
installed in usr/share/man, it appeared the same should happen
to GNU info files which were installed under share in base and
not in ports.
Now texinfo is not in base on any of the supported version of FreeBSD
it is possible to proceed to this move and it is easier to do than
the manpage change.
Other benefit than consistency are less patching: all build tools but
cmake are expecting info files to be under share/info and cmake (patched here)
was having an exception for BSD so the patch makes FreeBSD case less
specific for them
Bump revision of all impacted ports
PR: 232907
exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D17816
If a port has multiple flavors and one needs to be deprecated,
one can now write
qt4_DEPRECATED= Qt4 has been EOL since december 2015
qt4_EXPIRATION_DATE= 2019-03-15
to let users know that changes are coming.
Approved by: portmgr (rene)
Differential Revision: https://reviews.freebsd.org/D17740
Change USE_GL to become USES=gl. You still need to specify USE_GL as well,
to specify which gl components you need, such as egl glesv2 glut glu glw gl.
Only specifying USE_GL is supported for now, to ease in transition. It is
however deprecated, and will be removed eventually.
Specifying USES=gl without USE_GL is an error.
USE_GL=yes is also deprecated, but supported for now. It implies USE_GL=glu.
Fix fallout from this change.
PR: 230692
Approved by: portmgr (antoine)
exp-run by: antoine
Reviewed by: mat
Differential Revision: https://reviews.freebsd.org/D16774
Upstream used to distribute protocol headers as separate packages, but has
decided to merge those to a common package, named xorgproto. This update
tracks that change.
* Add a new port, x11/xorgproto, with are protocol headers for xorg.
* Hook the new protocol port to the build and to infrastructure in
bsd.xorg.mk.
* Update all ports with a dependency on any of the old *proto packages to
instead depend on xorgproto. Bump portrevision.
* Delete the old *proto packages, update MOVED.
PR: 230023
Submitted by: zeising
Approved by: portmgr (antoine)
exp-run by: antoine
- To support amd64, map amd64 to x86_64 when generating the --host argument
to configure in bsd.port.mk and when generating --target arguments in port
Makefiles.
- Add entries to the plists for i386 and amd64. amd64 generally includes both
amd64-specific entries as well as i386 entries.
- Don't include the builtin float.h for i386 and amd64.
Reviewed by: bapt
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D16250
objdump is being removed from HEAD, make sure everything still works
when this happens.
PR: 229049
Reported by: emaste
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D15904
Otherwise, when used with BATCH defined so as to not be bothered by
config screen and all, it will almost silently reverse obsolete patches
and make you wonder why something is now broken.
Reviewed by: sbruno
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D15804
From now on, ports that depend on Qt4 will have to set
USES= qt:4
USE_QT= foo bar
ports depending on Qt5 will use
USES= qt:5
USE_QT= foo bar
PR: 229225
Exp-run by: antoine
Reviewed by: mat
Approved by: portmgr (antoine)
Differential Revision: →https://reviews.freebsd.org/D15540
When cross-building a package via a CROSS_SYSROOT, set OSVERSION,
_OSRELEASE, and OSREL to the target OS version. OSVERSION is derived
from the <sys/param.h> header in the sysroot. _OSRELEASE cannot be
easily derived from a sysroot as it is a property of a kernel, so
instead generate a "fake" _OSRELEASE from the OSVERSION, but use a
"-CROSS" branch name that will hopefully fail in any places that make
assumptions about branch names.
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D15812
"ldconfig -m <path>" so the order of ldconfig search directories after
package installation is the same as after a reboot. The original command
simply appends the path to the list of directories while the ldconfig rc.d
script uses "sort -u".
Bump lang/gcc* which are known to install libraries with exactly the same
name so the library loaded at runtime depends on the order of the search
directories.
PR: 228046
Approved by: portmgr (antoine)
This is leaking LIBDIR information (which is defined in base share/mk/*) to
the build environement with a value which is not really suitable for ports
(/usr/lib) which may have an impact on some build system forcing the maintainer
to override the value.
Revealed during the update of liblz4
PR: 228059
Submitted by: bapt
Exp-run by: antoine
- When cross-building packages, set ARCH to the target arch instead of
the arch of the build host. This fixes bsd.ssp.mk on MIPS which was
trying to enable SSP on MIPS cross-built packages because the host
ARCH was amd64. A new HOST_ARCH variable is added to set the
--build triple for configure scripts, but I believe most other uses of
ARCH in ports are really about the target, not the build host so this
is the more correct general direction.
- Some updates to base/binutils and base/gcc to use ARCH as the target
architecture.
- Drop the extra arguments to GCC to set include and library paths and
only set --sysroot.
- Move the --sysroot flags into CC, CXX, CPP (which is now set to XCPP)
and LD instead of passing it in CFLAGS, etc. The base/gcc build uses
ends up using the CFLAGS when building native binaries for the build
host which fails when tripping over the --sysroot. I think this might
have accidentally worked before because the powerpc64 headers in
/usr/include/machine were "close enough" to the amd64 headers, but with
32-bit MIPS this failed hard.
- Add the GCC MIPS patch from devel/powerpc64-gcc to base/gcc to add
MIPS support to base/gcc.
- Add a MIPS plist for base/binutils.
- Set helper variables for the base/gcc plist to tag architecture-specific
headers (e.g. for intrinsincs) and use these to tag powerpc and MIPS
specific headers.
- Drop the include-fixed headers from base/gcc.
- Strip /usr/local/include from the default list of include paths for
base/gcc.
- Use libc++'s include path for C++ for base/gcc.
Reviewed by: bapt
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D15267
Some ports do not honour $LD or -fuse-ld=bfd in $CFLAGS, but do invoke
ld via $PATH. Automatically set BINARY_ALIAS+=ld=${LD} when LLD_UNSAFE
is active to use ld.bfd for these ports.
Approved by: portmgr (antoine)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D14876
It is documented that the first FLAVOR is the default. Due to some use
of DEFAULT_VERSIONS and USES, the default FLAVOR may be determined
dynamically. Poudriere in particular expects the default to be first
and does the wrong thing for emacs ports currently [1]. This resolves
that and avoids other tools making the same mistake.
PR: 225659 comment #14
Approved by: portmgr (implicit)
This will avoid renamed/removed variables being orphaned, and allows for
exporting variables in ports_env that are not wanted to be exported in
sub-makes via _EXPORTED_VARS.
Approved by: portmgr (implicit)
There's only about 10 ports that actually use this, so rather than
spamming a dozen fstat(2) calls for every port during INDEX reduce
it to 1 for now.
Also avoid the fstat(2) if the target already exists.
Approved by: portmgr (implicit)
This is a follow up to r461057 and fixes base/binutils and base/gcc in my
testing.
PR: 224217
Submitted by: nwhitehorn (partially, I made additional changes)
Reviewed by: bapt
- Convert USE_EMACS to USES=emacs
- Remove editors/emacs-nox11 (refer to nox flavors of editors/emacs and
editors/emacs-devel)
- Permit default Emacs flavor to be specified in make.conf
- Rename japanese/migemo-emacs23 to japanese/migemo-emacs
- Update and simplify audio/emms and fix build on FreeBSD 10 [1]
- Update databases/bbdd and fix build on FreeBSD 10 [1]
- Update editors/emacs-devel
- Ensure Makefile shell commands that change directory are executed in a
subshell
- Silence some portlint warnings
[1] By not depending on base texinfo
PR: 225404
Reviewed by: antoine
Approved by: portmgr (mat) ashish (maintainer)
Differential Revision: https://reviews.freebsd.org/D13506
This checks whether rubygem based ports have all of their dependencies
in Gemfile(s) satisfied by what's currently installed. Sample output:
====> Running Q/A tests (stage-qa)
Warning: Dependencies defined in /usr/ports/www/gitlab/work/stage/usr/local/www/gitlab/Gemfile are not satisfied
These ports could (!) be broken at runtime. Be aware: some projects
defines multiple Gemfiles and not all are used at runtime. For example
www/gitlab has two Gemfiles, but only one is used for testing and warnings
about it can be ignored.
Approved by: portmgr (mat), lifanov
Differential Revision: https://reviews.freebsd.org/D11865
variables deprecation revision
WITHOUT_NLS 2013-12-13 r336337
WITH_/WITHOUT_ 2014-02-24 r345870
NOPORT(DOC|EXAMPLE)S 2014-04-19 r351587
WITH_BDB_VER 2016-05-02 r414444
OVERRIDE_LINUX_BASE_PORT 2016-09-05 r421387
WITH_OPENSSL_(BASE|PORT) 2016-06-16 r416965
While there, add an ERROR variable that works like DEV_ERROR, but for
user facing errors, and move NOPORTDOCS,
NOPORTEXAMPLES and WITHOUT_NLS to it.
Cleanup bsd.sanity.mk a bit.
Fix fallout.
PR: 224613
Submitted by: mat
Exp-run by: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D13490
The helpers were being evaluated before the default FLAVOR was set. The
helpers worked fine if the FLAVOR was specified by the user but not if
it was left to the default value. Resolve this by moving the helpers
right after the default FLAVOR is set.
PR: 224879
exp-run by: antoine
Approved by: portmgr (implicit)
MFH: 2018Q1
Differential Revision: https://reviews.freebsd.org/D13756
This otherwise prevents properly setting FLAVOR to the default internally
since it is in a separate namespace in bmake that is read-only.
Approved by: portmgr (implicit)
MFH: 2018Q1
The code I removed was wrong but it still achieved the proper effect of
removing FLAVOR from .MAKEOVERRIDES. This is still needed and now is
done properly without truncating away all of the other valuable variables.
Pointyhat to: bdrewery
Approved by: portmgr (implicit)
MFH: 2018Q1
There is no such variable as ${MAKEOVERRIDES}, only ${.MAKEOVERRIDES}, so this
code was simply truncating .MAKEOVERRIDES entirely which could cause performance
and other odd issues with OSREL and make recursion.
We don't want to leak FLAVOR to child sub-makes but that can be fixed later;
this code was not doing what it intended.
Approved by: portmgr (implicit)
MFH: 2018Q1
- Pass MAKEFLAGS down into do-depends properly.
- Remove redundant dependencies, run-depends and lib-depends, from
targets that already depend on earlier targets that depend on
the needed targets.
Reported by: emaste
With hat: portmgr
To help with flavored ports, helpers are available. In these, replace <*>
with the flavor name.
*_PKGNAMEPREFIX *_PKGNAMESUFFIX *_PLIST *_DESCR will overwrite the variable.
*_CONFLICTS *_CONFLICTS_BUILD *_CONFLICTS_INSTALL *_PKG_DEPENDS
*_EXTRACT_DEPENDS *_PATCH_DEPENDS *_FETCH_DEPENDS *_BUILD_DEPENDS
*_LIB_DEPENDS *_RUN_DEPENDS *_TEST_DEPENDS will append to the variable.
Reviewed by: portmgr
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D12483
- Enable FLAVORS.
- Make make describe flavors aware.
- Add a qa check for unique package names amongst flavors.
- Make MOVEDlint understand flavors.
- Add a bit of sanity check to make sure FLAVORS stay lowercase.
- Various fixes.
Reviewed by: portmgr
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D12577
They must be all uppercase, so that they do not conflict with flavors
that are lowercase.
Reviewed by: bapt
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D12810
The COPYTREE_BIN and COPYTREE_SHARE macros use constructs like
sh -c 'command' -- arg0 arg1
and assume that $0 will expand to arg0 and $1 will expand to arg1.
Our current sh implements it that way. However, POSIX specifies that $0 will
expand to -- and $1 will expand to arg0, since the command string is an
operand and not an option-argument. Bug #220587 requests making sh
POSIX-compliant in this regard.
If the argument after the command string does not start with '-', the
current sh behaves as required by POSIX. Therefore, adjust the macros so
this is always the case.
PR: 222870
Approved by: portmgr (antoine)
The flag has partial support across the tree, and the same effect
can be obtained by using ".undef WITH_DEBUG".
Reviewed by: mat, rene
Approved by: portmgr (rene)
Differential Revision: https://reviews.freebsd.org/D12548
When defined it will create symlinks of some given binaries in a directory which
will be prepended to the PATH.
The syntax is the following:
BINARY_ALIAS= target1=source1 target2=source2
For example to have a "swig" binary in the path which will be pointing at
swig3.0 and a "sed" pointing at GNU sed: gsed
BINARY_ALIAS= swig=swig3.0 sed=gsed
Reviewed by: swills, adamw, mat
Approved by: swills (portmgr)
Differential Revision: https://reviews.freebsd.org/D12603
Having this enabled breaks Poudriere's ability to build py2 and py3 ports
together which FLAVORS aims to resolve. Once we have actual python
FLAVORS support ready to commit we can then enable this feature again.
With hat: portmgr
**Do not start migrating any ports, a hook will prevent it**
This has been a long awaiting feature, most of the work has been done by
bapt, bdrewery and antoine, I am just the one actually doing the commit.
All this informations, and more to come are in the first link to our wiki
in the bottom block. A roadmap is in the second link.
To define a different flavors in a port, before any include, set:
FLAVORS= flavor1 flavor2 [...]
The first flavor in the list will be the default.
You can then check for flavors after includ'ing bsd.port.options.mk with:
.if ${FLAVOR} == flavor2
[some stuff]
.endif
To build flavor2, simply run:
make FLAVOR=flavor2
To depend on a specific flavor, write @<flavor> at the end of the depend
string, like:
RUN_DEPENDS= something:origin@foo
Submitted by: bapt, bdrewery, antoine
Reviewed by: portmgr
More infos: https://wiki.freebsd.org/Ports/FlavorsMigration
Todo List: https://wiki.freebsd.org/Ports/FlavorsAndSubPackages
With hat: portmgr
Differential Revision: https://reviews.freebsd.org/D10327
Failed builds can occur when PORTSDIR is a symbolic link, or with
make -C /usr/ports/category/port/
PR: 221296
Reported by: yasu@utahime.org, rum1cro@yandex.ru
Reviewed by: bdrewery, sjg
Approved by: portmgr (bdrewery)
Differential Revision: https://reviews.freebsd.org/D11934
By default the compiler will find /usr/bin/ld for the linker. If a port
sets LLD_UNSAFE and /usr/bin/ld is ld.lld, then add -fuse-ld=bfd to
force the use of the binutils BFD linker (from the base system, if
available, or by setting USE_BINUTILS).
This change is based on an earlier, similar patch from bapt, with the
addition of the -fuse-ld flag.
PR: 214864
Reviewed by: bapt
Approved by: portmgr (bapt)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D12064
This checks whether rubygem ports have all of their dependencies
in gemspec satisfied by what's currently installed. Sample output:
====> Running Q/A tests (stage-qa)
Error: RubyGem dependency archive-tar-minitar = 0.5.2 is not satisfied.
*** Error code 1
Stop.
make: stopped in /usr/home/lifanov/src/svn/freebsd/ports/head/archivers/rubygem-fpm
These ports would be broken at runtime.
Big thanks to:
swills - discussion
mat - reviews
antoine - exp runs
sunpoet - fixing several dozens of ports :)
PR: 220605
Reviewed by: mat, sunpoet
Approved by: portmgr (mat)
Differential Revision: https://reviews.freebsd.org/D11841
If NO_ARCH is set then check that no FreeBSD elf(5) files are in $STAGEDIR.
If an elf(5) file is bundles as part of the package, but is not meant to be
run directly (i.e. the elf(5) file is a payload, and not compiled) then
those files can be added to NO_ARCH_IGNORE to avoid the check from failing,
Changes to ports:
- Ports that have NO_ARCH set, but actually compile files have had NO_ARCH
removed.
- Ports that have elf(5) payloads have had those files added to
NO_ARCH_IGNORE.
- R-cran ports that do not set USES=cran:compiles have NO_ARCH set,
PR: 218976
Reviewed by: antoine, mat
Approved by: portmgr
libdata/pkgconfig.
Fix ports that where installing the file in the wrong place.
PR: 218067
Submitted by: mat
Exp-run by: antoine
Reviewed by: rene, antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D10129
* libGL, libEGL, libglesv2, libglapi, and gbm have been moved into mesa-libs,
graphics/dri has been renamed to mesa-dri, and USE_GL has been adjusted
* mesa-libs has a new WAYLAND option that enables platform support in libEGL
* mesa-dri now depends on graphics/s2tc for compressed texture support [1]
* re-remove obsolete dependency on makedepends [2]
* correct sed fix backported from 17.1 [3]
PR: 218799 (exp-run), 212762 [1], 218552 [2], 218562 [3]
Submitted by: dbn [1], jbeich [2,3]
Reported by: afiskon@devzen.ru [1]
Reviewed by: kwm, johalun0@gmail.com
Approved by: portmgr, swills (mentor)
Differential Revision: https://reviews.freebsd.org/D10448
Now each files generated are explicit targets depending on the files
This would allow to simply loop over a list of packages for subpackages to
create them.
Remove the code for transition from pkg_install to pkg packages
The latest symlink is now a specific target only defined when needed
Reviewed by: swills
Approved by: portmgr (swills)
Differential Revision: https://reviews.freebsd.org/D10323
There are two cases:
- The upstream versionning is compatible with our versionning, or using
DISTVERSION's magic leads to a compatible PORTVERSION, use
DISTVERSION. If it is possible to use DISTVERSIONPREFIX and
DISTVERSIONSUFFIX to make it compatible, use them.
- The upstream versionning is not compatible with our versionning, and
DISTVERSION's magic does not lead to a correct PORTVERSION, then set
PORTVERSION to the equivalent of our versionning, and set DISTNAME.
It is possible to use a third variable where you store upstream's
version and use it to compute PORTVERSION and/or DISTNAME, like the
dns/bind9* ports do.
Sponsored by: Absolight
It is not needed at all.
While here remove:
- the stub pre-everything:: declaration, let the framework define it if needed
- remove the stub describe target with NO_DESCRIBE is set. It is useless
- remove options-message it was only used by gnome and dropped a long time ago
- remove pre-distclean it was never used
Approved by: portmgr (mat)
Differential Revision: https://reviews.freebsd.org/D10326
In order to have subpackages we need in the end do-package to depend on
a target per package that would be created per subpackages
For this we need to decouple the content of do-package so it becomes
a target that only creates the packages.
As a first step use natural make(1) mechanism for a target: if checks first
for the existence of a file and it it does not exists that execute the content
of the target, in that case it creates the PKGREPOSITORY
Bonus it simplifies a bit the code.
While here to avoid testing multiple time for the PACKAGES directory set a
variable after we tested it the first time
PR: 216877
Approved by: portmgr (mat)
Reviewed by: mat
exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D9466
SHAREMODE defaults to 444, and gives us endless grief because one
cannot modify a file that is not writable.
So use _SHAREMODE that is 644, so that we can avoid all those CHMOD +w
in so many Makefiles.
Exp-run: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D7623