Commit graph

354 commits

Author SHA1 Message Date
Rene Ladan
1bb96a2f96 Add --strip-debug to STRIP_CMD to avoid removing kernel symbols from the
installed kernel module.  This would otherwise break comms/uarduno on amd64
when converting this port to USES=kmod.

PR:		189621 (in private followup)
Submitted by:	Bob Frazier <bobf@mrp3.com>
MFH:		2014Q2
2014-06-22 21:01:11 +00:00
Tijl Coosemans
3e4a806167 Add 4 new sed commands to USES=libtool. The first two apply some of the
changes that Debian made to their libtool.  The first command applies to
libtool versions 1.4 and up.  The second command is somewhat more elaborate
but essentially it uses the sed hold space to move an "elif...fi" block
down.  It applies to 2.x.  Together these reduce overlinking to unpatched
.la files (from ports that don't have USES=libtool yet but also .la files
in the work directory).

The third and fourth command fix relinking.  During staging libtool may
relink libA when it links to another library in the work directory libB.
The reason is that libA created during build phase has its runpath set to
the location of libB in the work directory.  This allows running an
executable that links to libA from within the work directory.  The relink
removes this extra runpath.

When libtool relinks libA it replaces "libB.la" on the linker command line
with "-L${STAGEDIR}${PREFIX}/lib -lB" with the intention to link to libB in
the stage directory but this -L flag isn't necessarily the first so another
libB may be linked instead.  The two sed commands make relink the same as a
normal link.  This means libtool will relink with libraries from the work
directory using a path similar to "../srcB/.libs/libB.so" without -L flags.
This applies to libtool 1.4 and up.  Earlier versions don't seem to relink
libraries.
(This fixes ports like devel/apr1 so they link with freshly built libraries
instead of installed libraries.)

Fix all ports with missing libraries.

Additionally:
archivers/rpm4: USES=patchfix.
databases/gdbm: INSTALL_TARGET=install-strip.
devel/gnome-vfs: remove patch that doesn't change anything.
devel/ois: INSTALL_TARGET=install-strip and use standard USE_AUTOTOOLS.
devel/zziplib: INSTALL_TARGET=install-strip, MAKE_CMD.
multimedia/mjpegtools: remove USE_AUTOTOOLS, use modern compiler on i386
   instead of disabling optimisations.
net/libnetdude: disable static plugins.

PR:		190941
Exp-run:	antoine
Approved by:	portmgr (antoine)
2014-06-22 10:44:29 +00:00
Baptiste Daroussin
a8e29575e4 New USES=drupal
It accepts 6 or 7 as a mandatory argument (version of drupal)
It accept nothing (aka drupal main port) or a mutually exclusive "theme"/"module"
2014-06-18 12:16:43 +00:00
Baptiste Daroussin
742f751bd9 Switch to tabspace: 8 2014-06-18 07:17:13 +00:00
Antoine Brodin
fcb5fc3711 Fix packaging of lang/tolua++ with pkg_install
With hat:	portmgr
2014-06-17 19:44:28 +00:00
Baptiste Daroussin
b37132f13b Also support fmake 2014-06-17 15:42:45 +00:00
Mathieu Arnold
427e48f5de Introduce Uses/gssapi.mk to help handle dependencies on Kerberos in a
consistent way.

Submitted by:	hrs
With hat:	portmgr
Sponsored by:	Absolight
2014-06-17 15:00:21 +00:00
Beat Gaetzi
0557b9315d - Update Firefox to 30.0
- Update Firefox ESR to 24.6.0
- Update libxul to 24.6.0
- Update NSS to 3.16.1
- Update NSPR to 4.10.6
- Update Thunderbird to 24.6.0
- Convert USE_BZIP2 to USES
- Backport ff31 fix against crashing DEBUG build on newegg.com [1]
- Add a note in UPDATING to not build audio/soundtouch with
  INTEGER_SAMPLES [2]
- Use arc4random_buf(3) to generate UUIDs (version 4)
- Fix debugger detection used by Telemetry and the slow script dialog
- Add STAGE support [3]

PR:		ports/189991 [1]
PR:		ports/189217 [2]
PR:		ports/189488 [2]
Submitted by:	bapt [3]
Sumbitted by:	Jan Beich
Security:	http://www.vuxml.org/freebsd/888a0262-f0d9-11e3-ba0c-b4b52fce4ce8.html
2014-06-11 03:42:55 +00:00
Mathieu Arnold
61de712f46 Remove all the bootstrap files (.bs) from the plists.
Starting with perl 5.20, they're not installed any more if empty,
and on FreeBSD, they're (always ?) empty.

PR:		190681
Submitted by:	mat
Exp-Run by:	antoine
Sponsored by:	Absolight
2014-06-10 12:14:12 +00:00
Sunpoet Po-Chuan Hsieh
0449f732c3 - Ensure up-to-date p5-Module-Build and p5-Module-Build-Tiny to avoid build
failure if installed ones do not satisfy version requirement of ports
2014-06-09 07:10:24 +00:00
Sunpoet Po-Chuan Hsieh
63bf70a31c - Cleanup COMMENT 2014-06-09 06:25:31 +00:00
Mathieu Arnold
886c83c618 Apply a band-aid on Perl ports plists for perl 5.20.
This is not the right fix, but with this, we can move forward.

With hat:	perl@, portmgr
Sponsored by:	Absolight
2014-06-02 08:48:13 +00:00
Antoine Brodin
e86bd07065 Add 9.4 to the list of valid pgsql versions
With hat:	portmgr
2014-05-29 08:09:24 +00:00
Mathieu Arnold
ca7f62bffc Add perl 5.20.0.
Changes:	http://search.cpan.org/dist/perl-5.20.0/pod/perldelta.pod
Sponsored by:	Absolight
2014-05-27 12:19:24 +00:00
Baptiste Daroussin
1f527e7fbb scons expect lots of variables to be set as arguments 2014-05-27 12:13:05 +00:00
Baptiste Daroussin
599ded0e50 Fix version comparison 2014-05-27 10:55:39 +00:00
Baptiste Daroussin
ff732faf5b Commit forgotten bits to support lua 5.1 2014-05-26 16:02:07 +00:00
Baptiste Daroussin
045f2c267e A typo can hide another typo
Submitted by:	kwm
2014-05-26 13:15:11 +00:00
Baptiste Daroussin
6b95894f58 Fix typos
Submitted by:	sunpoet
2014-05-26 13:10:11 +00:00
Baptiste Daroussin
4f347620f2 Move part of bsd.mono.mk into USES=mono
Drop code for nant support which is not used at all in the ports tree
Add dependency handling on lang/mono
Pass maintainership to mono@
2014-05-26 11:41:33 +00:00
Mathieu Arnold
2be2a7308c SITE_PERL is relative to LOCALBASE, switch to PREFIX for the post-stage fixups.
PR:		ports/189694
Submitted by:	Paul J Murphy
Sponsored by:	Absolight
2014-05-25 20:58:14 +00:00
Mathieu Arnold
2686164bfb - Add a USE_PERL5=fixpacklist to account for ports creating one when not using
USE_PERL5=configure or USE_PERL5=modbuildtiny.
- Change perl5.mk to use a specific target and not abuse post-stage.

Reviewed by:	bapt
With Hat:	portmgr
Sponsored by:	Absolight
2014-05-25 11:37:28 +00:00
Alex Kozlov
98052ca1a2 - Use /usr/bin/unzip for zip files extraction (part 1)
PR:	ports/188419
Exp-run:	bdrewery
Approved by:	portmgr (bapt)
2014-05-22 09:51:35 +00:00
Baptiste Daroussin
caa378d7ef Rename pathfix-pre-patch target into pathfix to be consistent 2014-05-22 06:42:20 +00:00
Dag-Erling Smørgrav
46a53638d3 Add support for inserting CPE URIs as package annotations.
To enable this for a particular port, add "cpe" to the USES list and
optionally define CPE_VENDOR, CPE_PRODUCT etc. if the defaults are not
correct (they should be in most cases).

Approved by:	portmgr (bdrewery)
2014-05-17 18:09:14 +00:00
Baptiste Daroussin
a4aa94d4c6 Add a USES to handle objective C (chosing compiler adding the right dependency on the runtime library) 2014-05-08 13:32:12 +00:00
Beat Gaetzi
d71f60b2f1 - Update SeaMonkey to 2.26
- Update libxul to 24.5.0
- Switch to USES=tar:bzip2
- Fix SeaMonkey version detection in Uses/gecko.mk

Submitted by:	Jan Beich
Security:	http://www.vuxml.org/freebsd/985d4d6c-cfbd-11e3-a003-b4b52fce4ce8.html
Approved by:	portmgr (bdrewery, security update to non-staged port)
2014-05-06 19:13:09 +00:00
Baptiste Daroussin
05bbadc591 Finish USES=pgsql
Add WANT_PGSQL=client support
Do not test WANT_PGSQL if it is not defined
Fix a couple of typos makeing it unusable
add WANT_PGSQL=lib (default it nothing is specified)
only depends on library if no WANT_PGSQL is set or lib is explicitly
added to WANT_PGSQL
2014-05-05 12:39:54 +00:00
Baptiste Daroussin
4a4ec28d37 Convert all :U to :tu and :L to :tl
Since FreeBSD 8.4 and FreeBSD 9.1 make(1) do support :tu and :tl as a
replacement for :U and :L (which has been marked as deprecated)

bmake which is the default on FreeBSD 10+ only support by default
:tu/:tl a hack has been added at the time to support :U and :L to ease
migration. This hack is now not necessary anymore

Note that this makes the ports tree incompatible with make(1) from
FreeBSD 8.3 or earlier

With hat:	portmgr
2014-05-05 09:45:36 +00:00
Beat Gaetzi
b6e8f8d98d - Update Firefox to 29.0
- Update Firefox ESR to 24.5.0
- Update Thunderbird to 24.5.0
- Update NSS to 3.16
- Use port dependency for soundtouch library
- Require recent graphite2 version explicitly [1]
- Require gst-libav version that doesn't crash on seeking [2]
  and doesn't error out on plugin load [3]
- Remove gstreamer note in pkg-message for www/firefox, [3] may still
  happen with www/firefox-esr but only until it tracks esr31 (ca 2014-09-01)
- Fix USE_XPI in mail/thunderbird-i18n [4]

Security:	http://www.vuxml.org/freebsd/985d4d6c-cfbd-11e3-a003-b4b52fce4ce8.html
PR:		ports/187939 [1]
PR:		ports/188133 [2]
PR:		ports/181964 [3]
PR:		ports/188984 [4]
Submitted by:	Toomas Aas <toomas.aas@raad.tartu.ee> [1]
Submitted by:	Jakub Lach <jakub_lach@mailplus.pl> [2]
Submitted by:	Jan Beich [3] and this update!
Submitted by:	Toni Ballesta <mustelator@yahoo.es> [4]
Approved by:	portmgr (bdrewery, security update to non-staged port)
2014-04-29 20:35:24 +00:00
Tijl Coosemans
aad09bc5e2 When linking a library libA with a library libB using libtool, if libB.la
exists, libtool will add all libraries libB.la refers to (dependency_libs
field) to the linker command line and store them in the dependency_libs
field of libA.la.  So everything that subsequently links with libA will also
link to these extra libraries.  This causes too much overlinking.

This commit modifies Mk/Uses/libtool.mk so it empties the dependency_libs
field in .la libraries during staging.  However, because .la libraries have
very limited use when dependency_libs is empty it makes sense to completely
remove them during staging.

So with this commit USES=libtool is modified to remove .la libraries and a
new form (USES=libtool:keepla) is introduced in case they need to be kept
(dependency_libs is still emptied).

PORTREVISION is bumped on all ports with USES=libtool that install .la
libraries.  Most ports are also changed to add :keepla because .la
libraries have to be kept around as long as there are dependent ports with
.la libraries that refer to them in their dependency_libs field.  In most
cases :keepla can be removed again as soon as all dependent ports that
install .la libraries have some form of USES=libtool added to their
Makefile.

PR:		ports/188759
Exp-run:	bdrewery
Approved by:	portmgr (bdrewery)
2014-04-23 13:25:16 +00:00
Brooks Davis
ad2f70940d Allow an alternative install prefix to be specified with
CMAKE_INSTALL_PREFIX.  This is similar to GNU_CONFIGURE_PREFIX and is
useful for ports that would conflict if installed directly in PREFIX.
2014-04-11 21:45:55 +00:00
Pawel Pekala
cc754660a3 Reset default qmake flags so that they don't taint our
globally set CFLAGS, CXXFLAGS

PR:		ports/188287
Submitted by:	myself
Approved by:	kde (makc)
2014-04-09 19:00:49 +00:00
Kubilay Kocak
bcd640815d Mk/pathfix.mk: Support more pkgconfig libdir matches
Add support for matching additional pkgconfig libdir entries
that were found in Python's Makefile.pre.in.

It can also be used by other ports [1] by setting PATHFIX_MAKEFILEIN to the
appropriate filename in ${WRKSRC}.

If this file grows support for other pathfix'es beyond Makefile's and
autoconf sources, it may be worth renaming PATHFIX_MAKEFILEIN in future
to suit the broader scope.

[1] Examples: devel/ptlib, graphics/zathura (thanks antoine)

Reviewed by:	antoine
Approved by:	antoine (exp-run)
MFH:		2014Q2
2014-04-09 12:45:54 +00:00
Baptiste Daroussin
53bf9f230c Fix dependency on thunderbird 2014-04-09 12:37:53 +00:00
Baptiste Daroussin
412cfda552 Add USES=geck to handle dependencies on the gecko engine via:
libxul, seamonkey and/or firefox
default being libxul
2014-04-09 10:28:23 +00:00
Baptiste Daroussin
c4abcef202 Drop support for non staged perl ports 2014-04-09 09:53:09 +00:00
Baptiste Daroussin
e149a86133 Add compiler:gcc-c++11-lib to instrument gcc linking with libc++ on system where default stl is libc++ 2014-04-08 15:16:39 +00:00
Rene Ladan
283b661902 Tell the configure scripts to use ${PERL} for PERL_PATH, this fixes
e.g. devel/libbonobo

Approved by:	portmgr (bapt)
2014-04-04 11:29:07 +00:00
Baptiste Daroussin
9b2e4e8528 When USES=perl5 is localed (what ever run or build depend) define a cache variable so autoconf always pick up the version from localbase
This eliminate a lot of perl related Q/A warnings
2014-03-30 14:58:51 +00:00
Antoine Brodin
6ab5e9e897 Fix a typo
Submitted by:	rene
With hat:	portmgr
2014-03-30 10:50:26 +00:00
Mathieu Arnold
b6007efa61 Add tar:tbz.
Suggested by:	danfe
Sponsored by:	Absolight
2014-03-17 13:13:01 +00:00
Gerald Pfeifer
5b4f2ad658 Move MAINTAINER lines to the end of the initial comment block and
make things a bit more consistent.

Approved by:	portmgr (bapt)
2014-03-15 10:31:54 +00:00
Sunpoet Po-Chuan Hsieh
74e93dfa15 - Check test: 2014-03-13 15:08:21 +00:00
Sunpoet Po-Chuan Hsieh
d2c4f34737 - Add regression-test: for all USES=perl5 ports
Approved by:	mat (portmgr)
Tested by:	sunpoet (myself, almost 2 years)
2014-03-12 18:49:03 +00:00
Sunpoet Po-Chuan Hsieh
e4a6a5ed41 - Add USES=tar:lzma for .tar.lzma case
Approved by:	bapt (portmgr)
2014-03-12 17:59:02 +00:00
Baptiste Daroussin
9e94573f8f Now that default gcc is 4.7 switch back to USE_GCC=yes where appropriate 2014-03-12 17:45:48 +00:00
Baptiste Daroussin
d17874dc5d Two new USES added to finish handling distfiles formats a consistent way:
USES=tar[:[xz|bzip2|Z|tgz]] handles distributions files in format:
- plain tar
- tar.xz
- tar.bz2
- tar.Z
- tgz

USES=lha handles distributions files info LHA format
2014-03-12 09:17:06 +00:00
John Marino
af58a9f955 Uses/ada.mk: Add support for soon-to-be-older Ada compiler
Currently the Ada framework uses a single compiler based on gcc47.
Soon this compiler will be updated to the gcc49 base, but not all Ada
ports are currently happy about this.

This update to ada.mk induces the ARGS of "47" which causes the port to
use the newly-created lang/gcc47-aux port which is currently a clone
of lang/gcc-aux.  When the latter is updated, the Ada Framework will
use it except for those ports that feature "USES+= ada:47"
2014-03-09 21:25:46 +00:00
Antoine Brodin
3ea8134a8b Make it possible to override EXTRACT_SUFX when using zip, some distfiles
(emulators/ods2reader for instance) have a .ZIP extension
2014-03-08 17:21:31 +00:00
Baptiste Daroussin
bebb0247f7 Allow multiple EXTRACT_DEPENDS
Reported by:	mat
2014-03-07 15:25:41 +00:00
Baptiste Daroussin
9fc416d031 Add USES=zip and USES=zip:infozip
To handle the zip archives from distfiles

Reviewed by:	mat, antoine
2014-03-07 15:25:02 +00:00
Baptiste Daroussin
06b21dbe65 this is makeself, not gmake.mk :) 2014-03-07 14:46:57 +00:00
Baptiste Daroussin
1efa84b8f3 Create a makeself uses to handle makeself archives 2014-03-07 14:36:03 +00:00
Tijl Coosemans
d38461c76f Further restrict the dragonfly RE so it only matches freebsd* as the first
word on a line.

PR:		ports/187208
2014-03-03 14:10:31 +00:00
Tijl Coosemans
477efa96a0 In libtool.mk, let the regexp for DragonFly BSD support match both
"freebsd*)" and "freebsd* ", and add "dragonfly*" only if it isn't there
already.

Approved by:	bapt
2014-03-02 13:14:07 +00:00
Tijl Coosemans
85fb32d611 - Some ports ship with libtool 1.5.x + "anygcc" patch. This modified
version calls "gcc" in two places.  Replace that with $CC.
- r346193 added -B${LOCALBASE}/bin in Uses/fortran.mk, just like
  compiler.mk, but libtool doesn't recognise this flag and discards it.
  Patch ltmain.sh so it passes the flag to the linker unmodified.
  This only works on libtool 2.x for now, but that's good enough to fix
  the PRs below and a linker error in math/octave on FreeBSD/i386 8.x.
  (When those ports set USES=libtool.)

PR:		ports/186946, ports/187000
Approved by:	bapt
2014-02-27 09:51:45 +00:00
Gerald Pfeifer
8b19ee567b Instead of hardcoding the version of GCC to provide Fortran support,
leverage ${GCC_DEFAULT} from ${PORTSDIR}/Mk/bsd.default-versions.mk.
2014-02-26 22:42:58 +00:00
Tijl Coosemans
ff43cef275 Add -B${LOCALBASE}/bin to LDFLAGS just like compiler.mk does. This fixes
linking problems when base system cc/c++ is used to link object files
generated by gfortran.  This affects FreeBSD/i386 8.x and all versions of
FreeBSD/ia64.

PR:		ports/186946
2014-02-26 11:44:49 +00:00
Gerald Pfeifer
4a3b55d21d Revert bogus parts of revision 345909. 2014-02-25 00:36:48 +00:00
Gerald Pfeifer
260d6903c0 Reword the documentation at the top of this file.
Sort the FPC_DEFAULT and GCC_DEFAULT entries.
2014-02-25 00:32:09 +00:00
Bryan Drewery
d41ff8cc32 Revert r345514 for now, it causes libraries to be built without .so 2014-02-21 21:43:20 +00:00
John Marino
b9737ee14f Mk/Uses/libtool.mk: Add DragonFly support to USES+= libtool
Approved by:	portmgr (bapt)
2014-02-21 17:23:53 +00:00
Baptiste Daroussin
d22a36edff libtool 1.4.2a was defining the shared extension as shrext_cmds, rename it shared_ext
like in newer libtool so the rest of USES=iconv magic just works
2014-02-21 16:47:29 +00:00
Pietro Cerutti
a3ccc1320a - Add 'tcl' and 'tk' support in SHEBANG_LANG
By default, /usr/bin/tclsh and /usr/bin/wish will be substituted with ${TCLSH}
and ${WISH}, respectively. This only works when USES contains 'tcl' or 'tk'.

Approved by:	portmgr (bapt)
2014-02-17 16:38:14 +00:00
Tijl Coosemans
564a799c71 Convert all USE_FORTRAN=yes to "USES=fortran, USE_GCC=yes". In most cases
USE_GCC=yes has been omitted though.

Remove USE_FORTRAN handling from bsd.port.mk and bsd.gcc.mk.

Minor cleanups in some ports like USE_GMAKE, NOPORTDOCS,...

Exp-run:	bdrewery
Approved by:	portmgr (bdrewery)
2014-02-16 17:15:31 +00:00
Dag-Erling Smørgrav
0d15e5b853 Add java_CMD. Although Java programs don't use shebangs, it is sometimes
useful to have a centrally located list of interpreters for other purposes.

Approved by:	portmgr (mat)
2014-02-15 09:20:53 +00:00
Tijl Coosemans
6217ea5176 - Also set link_all_deplibs_(CXX|F77|FC)=no.
- In libtool 1.3 set deplibs_check_method=pass_all like it is in later
  versions.  This avoids checking every library with file(1) to see if
  it's really a library and avoids some incorrect uses of expr(1)
  ("expr $var" instead of "expr -- $var" where $var can start with -l).
  The parsing of file(1) output is also tested during configure on
  /usr/lib/libc.so.* which doesn't exist so configure printed a big (but
  harmless) warning.

Approved by:	bapt
2014-02-14 22:29:05 +00:00
Mathieu Arnold
286e8eceee Like it was announced six months ago, remove Perl 5.12.
Sponsored by:	Absolight
2014-02-14 15:41:50 +00:00
Marcus von Appen
d839fbe3f9 - Properly prefix or suffix symlinks, which do not point to a file within the
stagedir environment, but to some file using a ${PREFIX}-based path

PR:		ports/186619
Submitted by:	mva@ (myself)
Approved by:	portmgr@ (bapt)
2014-02-11 18:37:07 +00:00
Tijl Coosemans
d373eb175c - Support libtool 1.3 which has an ltconfig script.
- Support -shrext command line option.  (Used in audio/pd.)
2014-02-09 22:00:35 +00:00
Baptiste Daroussin
11fd726a0c Add a global CMAKE_NINJA variable to set in make.conf to use ninja instead of make(1) for ports using cmake 2014-02-08 22:15:14 +00:00
Mathieu Arnold
7865eb5a5f Add a note to people still running perl 5.12 that it's going to disapear soon.
Sponsored by:	Absolight
2014-02-03 10:39:28 +00:00
Rene Ladan
106810bf8f Remove support for unstaged ports.
Approved by:	bapt
2014-01-31 18:00:55 +00:00
Mathieu Arnold
0d8977cba1 It doesn't require any args.
Sponsored by:	Absolight
2014-01-29 20:42:44 +00:00
Matthias Andree
8f55879b99 Fix typo (valide -> valid).
Approved by:	portmgr (mat)
2014-01-29 20:39:35 +00:00
Tijl Coosemans
0052e743ef - Add two new arguments to USES=iconv so ports can indicate they use GNU
iconv extensions that the base system iconv doesn't support yet:
  * wchar_t: port uses the special WCHAR_T character conversion.
  * translit: port uses //TRANSLIT or //IGNORE conversion options.
  Adding one or both of these arguments makes the port depend on
  converters/libiconv for now.
- Allow installation of converters/libiconv on FreeBSD 10+.
- Use ICONV_CONFIGURE_ARG in devel/gettext instead of defining CPPFLAGS
  and LDFLAGS to fix compilation with libiconv installed.
- Stage converters/libiconv and devel/gettext.

Approved by:	bapt (on trust)
2014-01-29 20:24:49 +00:00
Baptiste Daroussin
17bcd07e7b Fix usage with older make 2014-01-28 21:31:50 +00:00
Tijl Coosemans
64a0347268 Introduce USES=libtool to replace USE_AUTOTOOLS=libtool.
Unlike USE_AUTOTOOLS=libtool which makes a port use libtool from
devel/libtool, this just patches the copy of libtool included in the
port.  This allows adding it to all ports that use libtool including
ports that build Fortran libraries and ports that use different
compilers or binutils than the ones used to build devel/libtool.

USES=libtool also changes the library naming specification similar
to what USE_GNOME=ltverhack does.  Given the libtool version info
$current:$revision:$age and $major=$current-$age the library will be
named libname.so.$major.$age.$revision instead of libname.so.$current
and libname.so.$major becomes a symlink.  Because $major increases
less frequently than $current this reduces the number of library
version bumps which means fewer rebuilds of dependent packages.

To ease the conversion from USE_AUTOTOOLS=libtool this naming spec
can be disabled with USES=libtool:oldver but the intention is that
all libtool ports eventually use the new naming.

Another change is that only libraries that are listed on the command
line will be linked into executables.  Normally libtool would link in
the entire tree of library dependencies.  This reduces the number of
direct dependencies on a given library which means fewer packages
need to be rebuilt on a library version bump.

Approved by:	portmgr (bapt)
2014-01-28 18:25:52 +00:00
Baptiste Daroussin
7c89ef9773 Do not pass DESTDIR to build target (with a syntax compatible with both fmake and bmake)
That fixes a couple of STAGEDIR references in the install files
2014-01-27 08:14:30 +00:00
Baptiste Daroussin
5d68e6a30c Add USES=desthack
This allow to pass DESTDIR through configure --prefix to ports that are
not destdir aware

Obtained from:	OpenBSD ports tree (discussed in Malta with Marc Espie)
2014-01-27 07:29:32 +00:00
Baptiste Daroussin
564119fde5 Only defines the post-stage when needed 2014-01-27 00:02:42 +00:00
Rene Ladan
be728bc0bb - kernel modules support SSP natively, so change the description
of SSP_UNSAFE [1]
- take advantage of rmdir -p to remove nested instances of KMODDIR if
  empty.  Some ports have KMODDIR=dir1/dir2

Submitted by:	antoine [1]
Approved by:	portmgr (bapt)
2014-01-24 23:08:17 +00:00
Baptiste Daroussin
8472a0736b First simple and easy change: use mordern LIB_DEPENDS 2014-01-13 07:07:18 +00:00
Chris Rees
2bbe67e0a2 Strip postgresql code out of bsd.database.mk, and introduce USES=pgsql.
New syntax:

# Depend on postgresql-client
USES=	pgsql

# Depend on postgresql-client at least 9.2
USES=	pgsql:9.2+

#Depend on postgresql-server at least 9.0
USES=		pgsql:9.0+
WANT_PGSQL=	server

Postgresql now supports DEFAULT_VERSIONS, and please note that the
version syntax now includes dots(!); i.e. before it was 90, now 9.0

Reviewed by:	ade, silence from pgsql@
2014-01-12 21:16:06 +00:00
Mathieu Arnold
79d55b4d7c Bump perl version here too. 2014-01-11 21:37:10 +00:00
Marcus von Appen
78b8b9e4ba New USES=uniquefiles to make files or directories unique
by adding a prefix or suffix to them.

Files listed in UNIQUE_PREFIX_FILES will receive the prefix
set via UNIQUE_PREFIX. The same applies to UNIQUE_SUFFIX_FILES,
but with the chosen UNIQUE_SUFFIX. UNIQUE_PREFIX and
UNIQUE_SUFFIX are set to PKGNAMEPREFIX and PKGNAMESUFFIX by
default.
The uniquefiles USES enables ports to name files in special
ways, e.g. by outlining that the port does not support X11
(-nox11). A binary named bin/foo thus can be easily renamed
to bin/foo-featureA via

USES=                 uniquefiles
UNIQUE_SUFFIX=        -featureA
UNIQUE_SUFFIX_FILES=  bin/foo

The uniquefiles USES automatically adjusts the plist at
installation time. There is no need to consider the prefix
or suffix in the pkg-plist file itself. If the original name
of the renamed file is bin/foo, this exact name should be put
into pkg-plist.

The dirs argument to USES=uniquefiles will cause certain
standard directories, such as DOCSDIR or EXAMPLESDIR to be
prepended with the UNIQUE_PREFIX. The change to the directories
will hapen prior to configuring or building the port, so that
the port Makefile as well as the port's build logic are aware
of the changed name.

Since the uniquefiles USES effectively manipulates the port's
installation and file layout, it will only be available for
stagedir-aware ports. Ports with NO_STAGE=yes will be unable
to use the uniquefiles USES.

Reviewed by:	portmgr@
Approved by:	portmgr@
2014-01-11 16:52:34 +00:00
Rene Ladan
949300ce57 Mention the new c++0x argument.
Approved by:	portmgr (bdrewery)
2014-01-10 22:09:07 +00:00
Baptiste Daroussin
24c26f4c57 add LUA_VER_STR to PLIST_SUB 2014-01-10 15:37:00 +00:00
Pietro Cerutti
3199a3d84e - Handle the case where both tcl and tk are part of USES
Approved by:	bapt (portmgr)
2014-01-10 13:44:54 +00:00
Baptiste Daroussin
7c45d8bc73 Do not overwrite existing dependencies 2014-01-10 13:37:35 +00:00
Baptiste Daroussin
47844de6b2 backout 2 changes that should not have been committed with r339348 2014-01-10 13:10:34 +00:00
Baptiste Daroussin
108b7594d8 Backout encoding of comments, it is triggering a pkgng bug with one of our ports 2014-01-10 13:07:05 +00:00
Baptiste Daroussin
3d88a06b3b Fix dependency addition 2014-01-10 13:04:43 +00:00
Baptiste Daroussin
69f00b9f3b Add a USES=lua (WIP) that only supports lua 5.2
Goal is to slowly port any lua software to lua 5.2 and then remove lua 5.1 along with bsd.lua.mk
Make version flexible and settable via DEFAULT_VERSIONS to prepare the futur days of lua
2014-01-10 08:25:49 +00:00
Baptiste Daroussin
7b6e9b4ecd Fix test 2014-01-09 07:10:02 +00:00
Baptiste Daroussin
b8a4248e6e Make gcc 4.6 is sufficient for c++0x 2014-01-09 06:56:42 +00:00
Baptiste Daroussin
9271597aee Allow to choose clang from base on 9.2 when looking for a C11 compiler
Add compiler:c++0x modeled over compiler:c++11-lang [1]

Requested by:	delphij [1]
2014-01-09 06:55:18 +00:00
Baptiste Daroussin
0814761f12 Add LIBOWN and LIBGRP to uidfix 2014-01-09 00:21:10 +00:00
Baptiste Daroussin
cf7ff585da Do not overwrite BUILD_DEPENDS
Reported by:	rene
2014-01-08 07:23:14 +00:00
Baptiste Daroussin
d3ffec83d4 Remove bad MAKE_ENV entry (bsd.stage.mk) does the right thing already
That avoid resetting MAKE_ENV

Reported by:	rene
2014-01-07 23:26:52 +00:00
Alberto Villa
0ea687f79f - Convert USES=ninja:verbose into NINJA_VERBOSE make.conf(5) switch.
Approved by:	portmgr (bapt)
2014-01-07 17:55:13 +00:00
Baptiste Daroussin
91e0982833 Add new uses ninja[:verbose]
This allows to use the ninja build system.
USES= cmake ninja
Will make cmake generate ninja files and use ninja.
2014-01-07 08:18:58 +00:00
Max Brazhnikov
7d5e6b666c In preparation for Qt 5 ports:
Mk/Uses/qmake.mk:
- Add support for out-of-source builds
- Add support for Qt 5 ports
- Respect WITH_DEBUG

Mk/bsd.qt.mk:
- Massive rework for Qt 5 ports
- Remove '-phonon' from global configure args, thus allow qt4-designer and
  qt4-qtconfig to be built without Phonon support [1]

devel/qmake4:
- Improve mkspecs for gcc (mainly sync with linux version) and clang

devel/qt4-corelib:
- Convert to USES=iconv
- Remove ancient patch

devel/qt4-designer:
- Remove reference to WRKSRC from installed pkgconfig files [2]
- Don't build Qt Designer plugin for Phonon from outdated Qt sources.
  Separate port for plugin will be committed later

devel/qt4-assistant-adp, devel/qt4-libqtassistantclient:
- Convert to USES=qmake

Clean up Qt4 ports:
- Update comments
- Update description; use common description
- Consistently use QT_INCDIR, QT_LIBDIR, etc.
- Use options helpers
- Convert to new LIB_DEPENDS syntax
- Update DESKTOP_ENTRIES to avoid conflicts with Qt 5 ports
- Rename/move several ports for unification with Qt 5 ports

PR:		ports/184620 [1]
Reported by:	Kevin Zheng <kevinz5000@gmail.com>

PR:		ports/181141 [2]
Reported by:	thierry

PR:		ports/185101
Exp-run by:	bdrewery

This is mostly solely avilla's work in area51, kudos to him! And a couple
commits from myself, so you know who's collecting pointyhats :)
2014-01-06 16:16:52 +00:00
Antoine Brodin
9081694510 Add new USES=fam that will replace USE_FAM=yes
The conversion is easy:
USE_FAM=yes -> USES=fam
USE_FAM=yes and WANT_FAM_SYSTEM=fam -> USES=fam:fam
USE_FAM=yes and WANT_FAM_SYSTEM=gamin -> USES=fam:gamin

Approved by:	portmgr (bapt)
2014-01-04 23:36:50 +00:00
Baptiste Daroussin
b420248356 Properly add targets to the sequence they belong to, that now makes them predictable 2014-01-04 00:26:03 +00:00
Baptiste Daroussin
11e8713e2b Mark all targets defines in _SEQ and .ORDER has .PHONY which they all should be
If one day we are no adding a target actually correspond to an actual file, simply adding
the name of the target to the NOTPHONY will make it work as expected
2014-01-04 00:02:08 +00:00
Baptiste Daroussin
6905529b63 Add charsetfix-post-patch to _PATCH_SEQ 2014-01-03 23:45:50 +00:00
Baptiste Daroussin
48682c41de Add pathfix-pre-path to the _PATCH_SEQ and do not anymore make it a dependency of pre-patch
That makes applying the pathfix target predictable
2014-01-03 23:43:34 +00:00
Baptiste Daroussin
5982d9449d Patch has been applied twice before committing
Reported by:	antoine
2013-12-28 12:03:18 +00:00
David Naylor
e288e58754 Convert Mk/bsd.cran.mk to the Uses framework.
PR:		ports/184699
Reviewed by:	bapt
Approved by:	portmgr (bdrewery), wen (maintainer, timeout > 2 weeks)
2013-12-28 10:28:40 +00:00
Antoine Brodin
6bf16e7311 Add new USES=openal, which will replace USE_OPENAL
The conversion is simple:
USE_OPENAL=yes -> USES=openal
USE_OPENAL=soft -> USES=openal:soft
USE_OPENAL=al alut -> USES=openal:al,alut
and so on

Approved by:	portmgr (bapt)
2013-12-25 23:24:54 +00:00
Alexey Dokuchaev
32bb1cf264 Traditionally, most (if not all) tamperings with ${TMPPLIST} were done
silently within the ports (similar to extraction and patching phases).

Recently introduced Mk/Uses/kmod.mk does some grunt work for pkg-plist,
like @[un]exec /usr/sbin/kldxref ... stuff via ${ECHO_CMD}, which makes
build logs less neat.  Mute them and MKDIR, remove an extra whitespace,
and wrap one overly long line.

Approved by:	rene
2013-12-25 16:43:24 +00:00
Max Brazhnikov
adc20be473 - Don't remove rpath from binaries during install [1]
- Remove outdated comment

PR:		ports/176901 [1]
Submitted by:	amdmi3, avg
Exp-run by:	bdrewery
2013-12-22 14:04:37 +00:00
Tijl Coosemans
b8737c7c89 Add the directory with GCC runtime libraries to LDFLAGS. This lets Clang
find the right libgcc_s when it links object files produced by gfortran.
2013-12-20 16:33:59 +00:00
Rene Ladan
7657603be6 Spell out "nestedfct"
Approved by:	portmgr (bapt)
2013-12-15 23:45:39 +00:00
Rene Ladan
f7110a705a Mention nestedfct parameter.
Perform some language fixes while here.

Approved by:	portmgr (bapt)
2013-12-15 23:22:33 +00:00
Baptiste Daroussin
ea0afa43ec Add compiler:nestedfct which will automatically probe USE_GCC=any 2013-12-13 14:14:48 +00:00
Tijl Coosemans
7365cece2c New USES=fortran to replace USE_FORTRAN.
USE_FORTRAN=yes can be replaced with USES=fortran or USES=fortran:gcc.
USE_FORTRAN=ifort can be replaced with USES=fortran:ifort.
USE_FORTRAN=f77 is deprecated and the version of gcc it depends
on (lang/gcc34) is scheduled to be removed.

Note that USE_FORTRAN=yes also makes GCC the C/C++ compiler while
USES=fortran only sets the Fortran compiler and can be used together
with Clang as C/C++ compiler.
2013-12-13 13:22:32 +00:00
Marcus von Appen
885b528f02 New USES=twisted, to replace the old USE_TWISTED knob.
twisted can be configured with the arguments run or build to replace
the previous USE_TWISTED_RUN and USE_TWISTED_BUILD knobs. The twisted
components can be added as comma-separated arguments. If you previously
wrote
    USE_TWISTED=        yes
    USE_TWISTED=        conch names
    USE_TWISTED_RUN=    yes
you now would write
    USES=       twisted
    USES=       twisted:conch,names
    USES=       twisted:run
2013-12-08 12:04:07 +00:00
Baptiste Daroussin
a414afee4c Allow a user non belonging to whell to create a package 2013-11-29 14:57:42 +00:00
Gerald Pfeifer
545eced26f Extend description of USE=shebangfix. Improve grammar and formatting.
Approved by:	portmgr (bapt)
2013-11-28 23:57:53 +00:00
Max Brazhnikov
fb38a1f687 In preparation for Qt 5 ports:
bsd.qt.mk:
 - Deprecate QMAKEFLAGS, QMAKE_ARGS should be used instead
 - define LRELEASE/LUPDATE commands for general use
 Uses/qmake.mk:
 - USES=qmake now implies build dependency on qmake
 - Deprecate QMAKE_PRO (QMAKE_SOURCE_PATH should be used if required)
 - move QMAKE_ARGS definition to bsd.qt.mk
2013-11-21 14:15:53 +00:00
Baptiste Daroussin
fcc34a8a2b Fix a typo
Reported by:	Rainer Hurling <rhurlin@gwdg.de>
2013-11-20 21:48:30 +00:00
Baptiste Daroussin
2031b3ac69 Swap compiler.mk to use gcc 4.7 when requesting a C++11/C11 compiler and clang does not fit or the user explicitly want GCC. 2013-11-20 21:47:29 +00:00
Baptiste Daroussin
d93584fc42 Define the target in post section.
Remove the PHONY kmod-pre-install target and replace it with a real file target (well directory in this case)

Approved by:	rene
2013-11-20 12:43:29 +00:00
Baptiste Daroussin
a90833bd31 Add CHOSEN_COMPILER_TYPE which can be clang or gcc
It value correspond to the type of compiler chosen by the famework depending on the options

Requested by:	rene
2013-11-20 12:41:39 +00:00
Rene Ladan
050ed194bd Fix some typos and use modern Perl variables in comments.
Approved by:	portmgr (bapt)
2013-11-20 12:30:29 +00:00
Baptiste Daroussin
8635d31369 Mark some targets .PHONY 2013-11-20 07:29:08 +00:00
Rene Ladan
f22ee10444 Fix a typo in the DOS2UNIX_GLOB case (SRCSRC -> WRKSRC)
Approved by:	portmgr (bapt)
2013-11-19 23:25:45 +00:00
Rene Ladan
5c9fab7211 Fix a typo (specifed -> specified)
Approved by:	portmgr (bapt)
2013-11-19 23:24:20 +00:00
Baptiste Daroussin
f52e2d63c8 New USES=dos2unix
It is intended to replace USE_DOS2UNIX
By default it convert all the source files
Use:
DOS2UNIX_FILES=	<a list of files>
to convert files relative to ${WRKSRC} (globs allowed)
DOS2UNIX_REGEX=	<a regex>
To convert files matching the regex (using find -R -iregex)
DOS2UNIX_GLOB= <a glob pattern>
To convert files matching the glob pattern (using find -name)
2013-11-18 12:58:11 +00:00
Baptiste Daroussin
4ee0cb5d32 Make sure clang uses ports ld on FreeBSD 8 2013-11-15 22:25:40 +00:00
Jung-uk Kim
2288e33ed8 Fix symlink when PKGBASE, WEBPLUGIN_DIR, and WEBPLUGIN_NAME are not defined.
The deeply nested expression for .for loop cannot be completely evaluated at
the time of loop expansion because PKGBASE will be assigned much later.

Approved by:	bapt
2013-11-14 18:43:25 +00:00
Baptiste Daroussin
9bd61a7a21 Remove USES=npapi, please only use webplugin 2013-11-13 08:40:28 +00:00
Rene Ladan
af3e639e7d Do not try to remove /boot/modules, it is part of BSD.root.dist [1]
While here unquote an instance of /boot/modules.
Submitted by:	antoine [1]
2013-11-12 19:44:50 +00:00
Baptiste Daroussin
8a3c39c70a Fix when PREFIX != LOCALBASE
Reported by:	avilla
2013-11-12 18:01:39 +00:00
Baptiste Daroussin
89749057d9 No need to parse twice the webplugin arguments 2013-11-12 15:24:57 +00:00
Baptiste Daroussin
4e90cf7414 Use USESDIR when possible 2013-11-12 15:13:04 +00:00
Baptiste Daroussin
08348196a9 Convert www/firefox/Makefile.webplugins into a USES
Simplify it a lot,
remove all not supported anymore web browsers,
Prepend private varible behind an underscore
Rename the gecko18, gecko19 target into a simple gecko target

If you are writing a plugin port please use this USES, and if this USES does fit your need please report it so we can improve.
2013-11-12 14:11:22 +00:00
Rene Ladan
dc28effcb6 Fix with bmake which requires KMODDDIR to be defined before use.
Submitted by:	marino
2013-11-12 11:40:54 +00:00
Baptiste Daroussin
a23ec7269c On FreeBSD 8 clang will need a newer version of binutils.
Reported by:	dbn
2013-11-12 09:25:43 +00:00
Eitan Adler
db432dee6e Make Uses/npapi.mk STAGEDIR safe.
This was tested by commenting out poudriere's leftover testing and using this file with linux-f10-flash.

Approved by:	bapt
2013-11-11 23:11:16 +00:00
Eitan Adler
e2f2e74797 Copy npapi.mk from the mplayer port and USEify it.
Ports that currently include www/linux-mplayer-plugin/Makefile.npapi should be switched to USES once this is stagified.

Approved by:	bdrewery
2013-11-11 21:41:26 +00:00
Rene Ladan
a850c2461f Change KMODDDIR to /boot/modules if it is set to /boot/kernel
This allows upgrading a kernel without breaking any installed kernel ports
because during the upgrade /boot/kernel is renamed to /boot/kernel.old ,
resulting in moved files.

While /boot/modules is the default, it might be overridden by bsd.own.mk to
/boot/kernel before kmod is included, so setting MODULES_WITH_WORLD has no
effect.
2013-11-08 09:44:24 +00:00
Baptiste Daroussin
e64227dd6e Allow base clang to be used if version is >= 3.3
This gives 2 new variables to the porters:
ALT_COMPILER_TYPE which can be empty, clang or cc depending on what ${CC} is
ALT_COMPILER_VERSION which will give the porter a 2 digit version of the alternative compiler

Requested by:	many
2013-11-07 17:35:36 +00:00
Rusmir Dusko
08e586a29b - Unbreak pure.mk, use correct .include "${PORTSDIR}/Mk/Uses/gmake.mk"
- Remove devel/pure-gen/pkg-plist

Approved by:	pawel / wg (mentors, implicit)
2013-11-07 00:20:49 +00:00
Xin LI
bc0d646198 Update to 0.57.
PR:		ports/179390
Submitted by:	nemysis
Approved by:	maintainer
2013-11-06 22:50:21 +00:00
Baptiste Daroussin
16c627dc09 Now that tinderbox knows how to properly check this, tests on OSVERSIONS are useless, just check is libreadline.so is in base
With hat:	portmgr
2013-11-05 14:26:41 +00:00
Baptiste Daroussin
7713357eb3 Remove useless OSVERSION check, now that tinderbox properly do not leak those tests from the host
With hat:	portmgr
2013-11-05 14:24:45 +00:00