1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-24 00:45:52 +00:00
Commit Graph

196 Commits

Author SHA1 Message Date
Marcus von Appen
a382bbffeb - Rename PYTHON_FEATURES to USE_PYTHON to comply to USE_PERL5 and to avoid a
conflict in behaviour with the read-only COMPILER_FEATURES knob
- Fix the deprecated USE_PYTHON_BUILD and USE_PYTHON_RUN behaviour, which
  usually should be mutually exclusive, but some ports include both knobs

Phabric:		D581
Recommended by:	danfe@, makc@
Reviewed by:	danfe, wg, antoine
Approved by:	portmgr
With hat:		python@
2014-08-14 17:04:30 +00:00
Sunpoet Po-Chuan Hsieh
2cf170bf70 - Fix typo 2014-08-10 05:39:49 +00:00
Marcus von Appen
900db324a3 Convert the Python framework bits to USES=python.
Please use USES=python instead of USE_PYTHON.

  USE_PYTHON=yes becomes USES=python
  USE_PYTHON=2.7+ becomes USES=python:2.7+
  USE_PYTHON_BUILD=3.3 becomes USES=python:3.3,build
  ...

A new PYTHON_FEATURES variable was added, which enables certain features for a
port and replaces some knobs at the same time;

  PYTHON_FEATURES=distutils replaces USE_PYDISTUTILS
  PYTHON_FEATURES=autoplist replaces PYDISTUTILS_AUTOPLIST
  PYTHON_FEATURES=py3kplist replaces PYTHON_PY3K_PLIST_HACK
  PYTHON_FEATURES=noegginfo replaces PYDISTUTILS_NOEGGINFO
  PYTHON_FEATURES=concurrent replaces PYTHON_CONCURRENT_INSTALL
  PYTHON_FEATURES=pythonprefix replaces USE_PYTHON_PREFIX

Some knobs have been deprecated and are to be removed in the near future:

  PYTHON_MASTER_SITES - use MASTER_SITE_PYTHON instead
  PYTHON_PKGNAMESUFFIX - use PYTHON_PKGNAMEPREFIX instead
  PYDISTUTILS_INSTALLNOSINGLE - deprecated without replacement

Some knobs have been removed completely:

  PYTHON_MASTER_SITE_SUBDIR
  PYTHON_DISTNAME
  PYTHON_WRKSRC

Several variables specific to the Python framework are no longer passed to the
build environment to avoid polluting dependency builds.

  PYTHON_VERSION is not passed to .MAKEFLAGS anymore
  PYTHON_DEFAULT_VERSION,
  PYTHON_DEFAULT_PORTVERSION and
  PYTHONBASE are not passed to the make environment anymore

The conversion required a couple of ports to be updated to fit the changes and
new requirements. Those included "bsd.python.mk" directly or contained checks
in places, for which the USES framework would fail to provide correct values.

Python modules directly using the upstream Python package (such as py-tkinter
or py-sqlite3) were updated to avoid using the now unnecessary and remmoved
knobs from "bsd.python.mk".

Phabric:	D399
exp-run:	167368 192357
PR:		167368 192357
Reviewed by:	antoine, wg
Exp-run award:	antoine
With hat:	python@
Approved by:	portmgr
2014-08-09 15:44:27 +00:00
Baptiste Daroussin
4a57b32379 Now that all LIB_DEPENDS has been switched to modern version, remove support
for ancient version.

Phabric:	D415
Reviewed by:	swills
2014-07-16 05:55:14 +00:00
Marcus von Appen
9ec0761d6a Support for installations based on the easy_install setup.py target has
been removed from the Ports framework for Python software. The
PYEASYINSTALL_* knobs and support for USE_PYDISTUTILS=easy_install have
been removed.

Phabric:	D299
With hat:	python@
2014-07-08 16:14:33 +00:00
Mathieu Arnold
86d9168ce7 Add a bit about USE_PERL5=fixpacklist here.
Poked by:	miwi
Sponsored by:	Absolight
2014-06-29 10:28:28 +00:00
Baptiste Daroussin
15128d1d38 Remove the IGNOREFILES feature: it was an unsafe feature allowing to use files
fetched from untrusted sources directly into the ports tree

CR:		D269
Reviewed by:	portmgr (antoine)
2014-06-23 09:57:27 +00:00
Marcus von Appen
a9c3f17b93 Introduce a new PYTHON_CONCURRENT_INSTALL knob to support the parallel
installation of ports for different python versions.

If set to yes, the knob indicates that the port can be installed for different
python versions at the same time. The port will use a unique prefix for
certain directories using USES=uniquefiles:dirs (see the uniquefiles.mk Uses
for details about the directories). Binaries receive an additional suffix,
based on ${PYTHON_VER}.

With hat:	python@
2014-06-07 16:13:11 +00:00
Martin Wilke
30a9cc83fd - Remove USE_GMAKE support, please use USES=gmake instead 2014-05-29 15:17:17 +00:00
Baptiste Daroussin
a1ed68057d Drop compatibility code for USE_DOS2UNIX 2014-05-26 09:29:50 +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
Baptiste Daroussin
6aacc2bda1 Document r352514 2014-04-30 17:05:43 +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
Bryan Drewery
e15449a9ef - Rename check-orphans to check-plist. Keep the old for backwards-compat.
- Bug fixes:
  makeplist/check-plist:
   - Fix showing directories owned by RUN_DEPENDS/LIB_DEPENDS [1]
   - Use proper "rmdir PATH" syntax, not "rmdir >/dev/null... PATH" which
     pkg will not recognize.
   - Never consider base /etc/mtree/BSD.usr.dist or LOCLABASE
     Templates/BSD.local.dist as needing @dirrm handling.
  check-plist:
   - Fix showing PORTDOCS/PORTEXAMPLES files when the OPTIONS are not set.
     makeplist will still suggest them.
   - Fix showing files installed through unselected OPTIONS as orphans,
     by considering "@comment file" to be ignored. [2]
   - Fix @sample, @fc, @fcfontsdir, @fontsdir support
   - Fix return status when orphans are found to be non-zero
   - Add note when PREFIX=!LOCALBASE
   - Be more clear when orphans/no orphans are found.
   - Add a whitelist mechanism for globally approved ignores.
   - Add *.bak/*.orig to orphan whitelist for now.
   - Fix false-positive with dirs installed to /, such as with
     archivers/dpkg creating /var/db/dpkg
   - Fix false-positive with @dirrm ending in /, such as with
     ports-mgmt/poudriere with a @dirrmtry share/zsh/
   - There are likely still some false-positives. I fixed as many as I could
     find. Please let me know of others.
    * One in particular that is not easily fixable is installing a file into
      a directory owned by another port where that other port is not a run-time
      dependency. So the leaf port may create all of the parent dirs and never
      clean them up. Cleaning them up is not proper unless no other package is
      depending on them. This will be addressed by pkg(8) once pkg_install is
      EOL, or sooner.
   - Consider @dirrm of directories owned by run-time dependencies, or
     /etc/mtree/* or Templates/BSD.local.dist (at LOCALBASE) as fatal errors.
     These should not be removed in the plist. @comment lines are not
     considered for this; they will not ignore an error.
        ===> Checking for directories owned by dependencies or MTREEs
        Error: Owned by dependency: @dirrmtry share/locale/af/LC_MESSAGES
        Error: Owned by dependency: @dirrmtry share/locale/af
        Error: Owned by dependency: @dirrmtry %%PERL5_MAN3%%
   - Detect files in plist that do not exist in the stagedir. Pkgng already did
     this, but now we have it unified with this check. @comment lines are
     not considered for this; they will not ignore an error.
        ===> Checking for items in pkg-plist which are not in STAGEDIR
        Error: Missing: foo
        Error: Missing: @dirrmtry bar
   - Change orphaned output due to several new errors introduced:
        ===> Checking for items in STAGEDIR missing from pkg-plist
        Error: Orphaned: foo
   - Send errors to stderr
  check_leftovers.sh:
   - Prefer longer values for PLIST_SUB.
  bsd.options.mk:
   - Fix NOPORTDOCS/WITHOUT_NLS/NOPORTEXAMPLES not unsetting their respective
     OPTIONS.
   - Mark NOPORTDOCS/NOPORTEXAMPLES deprecated and hook them into the
     OPTIONS_WARNING to tell users the new format.
- check-stagedir.sh refactoring:
  - Switch to using new PLIST_SUB_SED
  - Use ! instead of , in sed(1) regex to allow files/dirs with ','
  - Rework PORTEXAMPLES/PORTDOCS handling so it acts on PLIST_SUB_SED'd
    value and not absolutes. Also simplify the regex for these a bit to
    allow reuse.
  - No longer need DOCSDIRS/EXAMPLESDIR in env
  - Wrap long lines
  - Unset some vars in env when they are done being used to free space for
    larger sed vars
  - Cleanup redundant sed regexes
- Add a Scripts/plist_sub_sed_sort.sh to prefer longer values when substituting
  over shorter values.

- To make check-plist ignore a file *as an orphan* do one of the following:
  1. Install it
  2. post-install: ${RM} ${STAGEDIR}file
  3. Put the file behind an OPTION with a PLIST_SUB: %%OPTION%%file
  4. Add to plist as a @comment [2]:
     @comment file
     @comment @dirrmtry dir

Reviewed by:	mat (much earlier version)
Discussed with:	mat, antoine, bapt, swills (various bits)
With hat:	portmgr
PR:		ports/185561 [1]
Reported By:	Alexander Yerenkow <yerenkow@gmail.com> [1]
Tested with:	pkg and pkg_install
Reported by:	many (false-positives)

[2] This is a partial solution, we may still need a plist.ignore too. It
    doesn't make much sense to add files in main pkg-plist we don't care about,
    but maybe it does since you'll see and reconsider them being ignored
    someday. @comment is used as all the OPTION PLIST_SUB deactivations use
    @comment instead of something like @ignore.
2014-04-19 06:44:56 +00:00
Bryan Drewery
a189085d53 - Make default target "make stage" if staging supported.
This is so that 'make' followed by 'make deinstall install' will, by default,
  have a much shorter period of files missing on the system as it is without
  staging.

Discussed with:	bapt
With hat:	portmgr
2014-04-16 16:29:38 +00:00
Bryan Drewery
4070b12551 - Add a @sample plist keyword
It accepts a file (must end in .sample, this is not configurable):

    @sample file.conf.sample

  This will install file.conf.sample and copy it to file.conf. The file.conf
  will be removed if it matches file.conf.sample on deinstall.

  This replaces older patterns of:

    @unexec if cmp -s %D/etc/pkgtools.conf %D/etc/pkgtools.conf.sample; then rm -f %D/etc/pkgtools.conf; fi
    etc/pkgtools.conf.sample
    @exec [ -f %B/pkgtools.conf ] || cp %B/%f %B/pkgtools.conf

  [1] This somewhat obsoletes work in ports/157168 which added CONF_FILES,
      but we have been moving towards more logic in pkg-plist where possible
      and less magical macros. Though this thinking does clash with autoplist
      ideas. We may still want CONF_FILES, which just drops a list of
      @sample entries into the plist anyway.
- Add a Keywords/pkg_install.awk and hook it into generate-plist. This is
  for pkg_install compatibility since it does not know how to read
  Keywords/sample.yaml.
  This file gives us a strategy to implement more keywords before
  pkg_install is EOL.
  Keywords are documented here:
  bffc31420b
- This needs to be documented in PH and portlint support added still.

PR:		ports/157168 [1]
Discussed with:	bapt
Reviewed by:	bapt
Requested by:	many
With hat:	portmgr
2014-04-12 03:39:02 +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
Rene Ladan
d2ef759163 Add a note for USES=zip and USES=makeself which were recently added by bapt
Requested by:	mat
2014-03-07 19:07:40 +00:00
Max Brazhnikov
4cd1e8830e KDE/FreeBSD team is happy to present Qt 5 in ports!
Alberto Villa (avilla@) has done all the hard work to create Qt 5 ports.
Trivial update from 5.2.0-beta1 to 5.2.1 by me.

Special thanks for Adriaan de Groot <groot@kde.org> for his assistance for
Qt-5.2.0 update.

Approved by:	portmgr (bapt) (for Mk/bsd.port.mk)
2014-03-03 16:50:32 +00:00
Martin Wilke
97cab7d439 - Whitespace cleanup 2014-01-29 08:26:47 +00:00
Mathieu Arnold
b765405ad0 Add two new options helpers:
${OPT}_${TYPE}_DEPENDS_OFF=<something> will automatically add:
${TYPE_DEPENDS}+=<something> in case OPT is 'off'

${OPT}_${FLAG}_OFF=<something> will automatically add:
${FLAG}+=<something> in case OPT is 'off'

With hat:	portmgr
Sponsored by:	Absolight
2014-01-27 22:53:24 +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
Marcus von Appen
f002f3a384 - Remove lang/python as implicit build and run dependency from
bsd.python.mk

  Ports need to use a designated python interpreter, whether this
  is the default one chosen by the user (or provided by the system)
  and pulled in via USE_PYTHON[_BUILD|_RUN]=yes or an explicit version
  or version range pulled in via USE_PYTHON[_BUILD|_RUN]=X.Y does not
  matter.

  Ports should however not rely on 'python' at build or installation
  time, whenever possible to avoid problems with building packages for
  different python versions.

  This change tries to raise the barrier for misbehaving ports and eases
  package builds for different python versions.

Tested with:	exp-run (ports/184591)
Reviewed by:	wg@, koobs@
Supported by:	wg@
With hat on:	python@
2013-12-18 17:21:49 +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
Koop Mast
5d020c831f Remove ltverhack's hard depend on USE_AUTOTOOLS=libtool.
The problem with the old method is that the libtool is configured to look
first in LOCALBASE for libraries to link to. Normaly this wouldn't cause
a problem. However if a port that builds a library with new API also builds
introspection files or say gtk bindings, then libtool will look first into
LOCALBASE and find the old library version for linking the introspection
files or gtk bindings. Due to the missing new API in old library the build
will fail with unresolved symbols.
The new ltverhack will patch the ltmain.sh and/or libtool files that where
bundled with the port. This libtool is correctly configured to first look
in for the just build libraries.

If the port bundled version of ltmain.sh and/or libtool aren't in ${WRKSRC}
then ltverhack_PATCH_FILES can be overwritten with there location in ${WRKSRC}.

As a bonus when using the new ltverhack configure will honor --disable-static
again. So please check your plist after converting.

While here shorten the number of tabs in the lthacks, ltverhack and
ltasneededhack PRE_PATCH components so they are just over 80 chars long.

Exp-run by:	bdrewery@
PR:		ports/183936
Obtained from:	gnome dev repo
2013-11-19 19:54:16 +00:00
Koop Mast
109cedef51 Indent 20131031 entry like the rest of the file. 2013-11-19 19:38:45 +00:00
Rene Ladan
a505e35050 Add a description of USES=kmod 2013-10-31 11:44:12 +00:00
Dmitry Marakasov
73b7596b94 - Remove manual creation and removal of share/applications, as it's now in the mtree (remaining categories)
- Add note on mtree change to CHANGES

Approved by:	portmgr (bdrewery)
2013-10-22 14:04:01 +00:00
Sunpoet Po-Chuan Hsieh
035ec19c96 - Fix typo 2013-10-19 19:26:58 +00:00
Baptiste Daroussin
91bfd4296d New USES=compiler
Supported arguments are:
  - c++11-lang: the port needs a c++11 aware compiler what ever standard
  library it uses, implies features
  - c++11-lib: the port needs a c++11 standard library, implies features
  - c11: the ports needs a c11 aware compiler implies features
  - features: this will create a COMPILER_FEATURES variable which contains
  the list of features ${CC} do support, implies env.
  - env: the COMPILER_TYPE will be set to either gcc or clang.

  By default the uses will try to use clang33 from ports when nothing in
  base is relevant except if the user explicitly defines
  FAVORITE_COMPILER=gcc in his make.conf

Please note that testing tinderbox prior to version: 4.0.1_1 is not able to
properly figure out the dependencies implied by this USES.
2013-10-08 18:55:37 +00:00
Max Brazhnikov
364f20a0c0 - Add new USES= qmake (with staging support)
Approved by:	portmgr (bapt)
2013-10-08 16:02:21 +00:00
Bryan Drewery
07933b2444 - PATCHFILES now support an optional :-pX flag that notes which patch strip
level to use. This allows multiple patches in 1 port to use different
  PATCH_DIST_STRIP values without changing PATCH_DIST_STRIP.

  Syntax: PATCHFILES= patch[:-pX][:distgroup]

PR:		ports/168222
Submitted by:	knu
With hat:	portmgr
2013-10-05 10:20:15 +00:00
Baptiste Daroussin
d7f9cdb38e Introduce the new "scons" USES. The goal is to replace the old bsd.scons.mk
Instead of redifining the building target, let's just reuse the existing ones.
Bonus, MAKE_JOBS is now respected
2013-10-03 06:25:13 +00:00
Baptiste Daroussin
816c63b01c Add an entry about "create packages as a user" 2013-09-24 14:34:59 +00:00
Ruslan Makhmatkhanov
dc659a215b - add new USES target: zope, and convert the tree to it
- old USE_ZOPE knob support was removed from bsd.python.mk
- update CHANGES and bsd.sanity.mk accordingly
- add ZOPE options knob and use it in lang/py-mx-base

The work is done by Marcus von Appen, but any problems are mine.

Submitted by:	mva (python ML)
2013-09-23 13:42:48 +00:00
Baptiste Daroussin
cf099c77fa Add support for staging area in the ports tree
The ports tree is now staged by default. With pkgng the sequence hasn't
changed, the main difference is that creating package is now independent
from installing it. With pkg_install, the package is now created first
and make install, do install the package.

New macros:
- STAGEDIR: PATH to the directory where the port will be staged.
- NO_STAGE: Keep the old behaviour of the ports tree (aka no staging area)

Unsupported macro if NO_STAGE is not set:
- MAN* with staging man page compression and handling of hardlinks and
symlinks is automatically done in the stage. the manpages becomes then a
"normal" plist files and should be tracked in pkg-plist.
- MANCOMPRESSED the compress-man target is able to only compress when it
needed.

New target:
- stage: this installs everything into the stage directory
- makeplist: this will create a pkg-plist and print it to stdout. This is
a sample plist and it should always be _reviewed_ not directly used.

NOTE: with staging only what is in the plist will be installed, nothing more,
meaning a port staged cannot have leftovers exect directories left. It is
really important to double check the pkg-plist to make sure all the files
the maintainer want to package are in! make makeplist can help in that area.

The goal is to handle as quickly as possible a full removal of the NO_STAGE
support.

More features can be added once the full ports tree is converted to using the
staging area

Conversion notes:
- Remove NO_STAGE
- in {pre,do,post}-install
  * Before any usage of ${PREFIX}, ${ETCDIR}, ${PORTSDIR}, ${PORTEXAMPLES}
    prepend ${STAGEDIR}
  * Remove any thing that is done by @exec or +INSTALL script it will be
    done automatically when syncing packages
  * Remove any code to show PKG-MESSAGE it will be done automatically when
    syncing packages
  * Directory creation should remain in post-install (in particular because
    pkgng doesn't work like pkg_install in that area and pkgng ignores the
    @exec mkdir but directly pack the directory even if empty)
- PORTDOCS/PORTEXAMPELS
  To support PORTDOCS, PORTEXAMPLES most of the time there is no more need
  for hacks. just add the right %%PORTDOCS%% or %%PORTEXAMPLES%% in your
  plist then the given files from the stagedir will or will not sync
  according to NOPORTDOCS and NOPORTEXAMPLES.

With hat:	portmgr
Reviewed by:	bdrewery
2013-09-23 05:56:35 +00:00
Bryan Drewery
c6dc82531e - Rename public name of SSP support to WITH_SSP_PORTS as /usr/src
has issues with 'installworld' when WITH_SSP is defined. [1]
  Keep WITH_SSP support for now since it has been announced as that
  already.
- Remove redundant wording in UPDATING [2]

Suggested by:	bapt [1]
Reported by:	blakkheim on EFNet
With hat:	portmgr
2013-09-22 00:26:05 +00:00
Bryan Drewery
c93dfc2e9f SSP support has been added to ports with WITH_SSP for i386 and amd64
on FreeBSD 10, and amd64 on earlier versions.

SSP_UNSAFE is added to disable in a port if it fails to build, but
this should only be used in rare circumstances such as kernel modules.
Otherwise, the port may just be failing due to lack of respecting
LDFLAGS.

On FreeBSD 10, this uses an ldscript in /usr/lib/libc.so to pull in
libssp_nonshared.a to address issues linking on i386 [1].

On earlier FreeBSD versions the WITH_SSP knob will add -lssp_nonshared
to LDFLAGS on i386. This is not needed on amd64. However, several hundred
ports do not currently respect LDFLAGS, so this support is disabled currently
as it causes build failures if a dependency is looking for the stack_chk
symbols.

Many thanks to jlh@ for this as he had many years of patience in getting
all of the necessary pieces [1][2] in.

[1] http://svnweb.freebsd.org/base/head/lib/libc/libc.ldscript?revision=251668&view=markup

PR:		ports/138228 [2]
Submitted by:	jlh (bsd.ssp.mk based on)
Reviewed by:	bapt
With hat:	portmgr
exp-runs done:	37 over a month on 91i386,91amd64,10i386,10amd64
2013-09-20 12:54:54 +00:00
Pietro Cerutti
a14c9ac6b8 - Document the addition of tcl/tk to the USES and DEFAULT_VERSIONS framework. 2013-09-19 09:58:42 +00:00
Baptiste Daroussin
3911a83860 Remove the old perl framework, that also means all the perl code is not loaded inconditionnaly anymore
Huge thanks for az@ for his hard work on the subject!

PR:		ports/172608
Submitted by:	az
2013-09-18 08:44:21 +00:00
Andrej Zverev
0f01418344 - proper formating
Noticed by:	avg@
2013-09-07 08:07:10 +00:00
Guido Falsi
642be1b81d - Make ports use the libc provided iconv implementation on 10-CURRENT
after r254273
- Fix a bunch of ports to properly work after this
- Mark converters/libiconv as IGNORE for systems with iconv in libc

Reviewed by:	bapt
Approved by:	portmgr (bapt)
Discussed with:	bapt, bsam (who both contributed ideas and code)
2013-09-04 18:06:07 +00:00
Baptiste Daroussin
a82e6804c6 Back to the present
Reported by:	madpilot
2013-09-04 13:45:38 +00:00
Baptiste Daroussin
e04cbe160f Document the removal of USE_GNOME=pkgconfig 2013-09-02 10:52:58 +00:00
Bryan Drewery
954b650462 - Add USE_PACKAGE_DEPENDS_ONLY which will try installing dependencies
from existing packages and not fallback on building from source.

  This is useful for package building tools such as poudriere and tinderbox
  to avoid building from source and confusing the build log, if a dependency
  failed to build for some reason.

  NOTE: USE_PACKAGE_DEPENDS has not changed here. It has always
        reverted to source if the package was not present.

PR:		ports/180725
Submitted by:	crees
With hat:	portmgr
2013-08-31 13:56:08 +00:00
Baptiste Daroussin
50cfc86752 Back to the present
Reported by:	feld
2013-07-31 14:31:35 +00:00
Baptiste Daroussin
bbc08b34be Typo 2013-07-31 07:19:05 +00:00
Baptiste Daroussin
ad51948917 Document the new USE=perl5 2013-07-31 06:39:05 +00:00
Rene Ladan
66fee90926 KDE3 and QT3 expired on 2013-07-01, remove these ports.
Unfortunately, this also affects some ports using QT3 as a GUI toolkit.

Changes to infrastructure files:
- bsd.kde.mk : obsolete, remove
- bsd.qt.mk : note that a CONFLICTS_BUILD line can probably go after a while
- CHANGES : document the removals from bsd.port.mk
- KNOBS : remove KDE and QT (KDE4 and QT4 should be used instead)
- MOVED : add the removed ports

PR:		ports/180745
Submitted by:	rene
Approved by:	portmgr (bapt)
Exp-run by:	bapt
2013-07-26 19:19:20 +00:00