Commit Graph

30 Commits

Author SHA1 Message Date
Ade Lovett
3b3128196e Update to the autotools new world order.
Tested by:	numerous package build runs
Approved by:	portmgr
Thanks to:	des, kris, linimon, pav
2007-07-28 06:33:59 +00:00
Pav Lucistnik
1ada4e152a Add missing target ordering when make -j1 is used (this should be a NOP)
Noticed by:	gibbs
Submitted by:	kris
Tested by:	bento amd64 exprun
2007-06-16 19:03:50 +00:00
Mark Linimon
0383def79b I do not appreciate the attempt to play politics with the reassignment of
maintainership of these two files.  I insist that further commits be run
through portmgr@ first.

Hat:		portmgr
2007-03-27 01:23:57 +00:00
Jean-Yves Lefort
e25341484f Take maintainership.
Approved by:	maintainer timeout (16 days)
2007-03-27 00:34:04 +00:00
Pav Lucistnik
65e107ab69 [1] Introduce COPYTREE_BIN and COPYTREE_SHARE macros
[2] Fix ECHO_CMD/ECHO_MSG usage in bsd.port.mk
[3] Move bsd.efl.mk to ports/Mk
[4] Change LIBTOOLFILES default to ${CONFIGURE_SCRIPT}
[5] Whitespace sweep
[6] Add WWWDIR variable with default value of ${PREFIX}/www/${PORTNAME}

PR:		ports/100996 [1], ports/100556 [2], ports/100497 [3],
		ports/104009 and ports/104018 [5], ports/105529 [6]
Submitted by:	stass [1] [3], gabor [2], pav [4], edwin [5], laszlof [6]
Approved by:	ade [4]
2007-03-24 14:02:06 +00:00
Ade Lovett
076c63ddd5 Whitespace fix
PR:		104010
Submitted by:	edwin
2006-12-04 01:07:25 +00:00
Mark Linimon
e2d64eefa6 * Change all bogus uses of BROKEN to IGNORE. Note: the BROKEN_WITH_*
forms are retained for compatibility but deprecated [1]

* Add sha256 to CHECKSUM_ALGORITHMS [2]

* Remove some whitespace [2]

* Add USE_SCONS and bsd.scons.mk for the Python-based SCons build system [3]

* Fix USE_LDCONFIG with non-default PREFIX [4]

* Add USE_WX and friends, and bsd.wx.mk, for common code for WxWidgets
  support [5]

* Add 'make missing' to show missing dependencies [6]

* Fix DESKTOP_ENTRIES processing on 4.x [7]

PR:	92445 [1], 98206 [2], 98731 [3], 99370 [4], 89398 [5],
	93601 [6], 98891 [7]

Submitted by:	linimon [1], edwin [2], alex at foxybanana dot com [3],
		gerald [4], flz [4], alepulver [5], alex at fafula dot com [6],
		shaun [7]
2006-07-05 02:18:09 +00:00
Ade Lovett
707f16d6ae Conversion to a single libtool environment.
* devel/libtool13 is no more (requiem mors pacem)
* devel/libtool15 now installs as ${LOCALBASE}/bin/libtool etc.
  (ie: no versioning on the binaries and scripts)
* USE_AUTOTOOLS= libtool:XX:inc has been deprecated
  Where possible, ports should simply set GNU_CONFIGURE=yes and use  the pre-packaged version of libtool that comes as part of the  source distribution
* all the legacy hacks to libtool that we have been saddled with over  the years have been removed. (eg: .la files are now installed)    This brings us in line not only with Linux distributions, but also pkgsrc.
* libtool now understands, and correctly handles, "nonstandard" compilers
  such as g++34, gcc295, etc. etc.

This could not have happened without the truly outstanding work from kris,
not only putting up with me, but also running countless builds, both on
dosirak and pointyhat.  I am truly indebted to him.

Sponsored by:	Theakston Old Peculier, Marlboro Red, Cafe de Colombia
Approved by:	portmgr (kris)
2006-02-23 10:43:34 +00:00
Kirill Ponomarev
01c588a635 - Fix 'all-depends-list' target in cases if dependencies list is
very long and if some dependencies can't be added into the list.
  [1]

- Fix FAM support.  Make gamin the default FAM system. [2]

- Introduce new 'quicksearch' target to show only port, path and
  info section of the matching ports. [3]

- Introduce new category - rubygems. [4]

- Fix stale dependencies while installing qmail slaveport and
  another port that depends on qmail. [5]

- Add commentary for describes target in bsd.port.mk. [6]

- Fix warning issued during make index on archs !368. [7]

- Add USE_DOS2UNIX variable.  If set to "YES", remove the ^M from
  all files under ${WRKSRC}. If set to a string, remove in all files
  under ${WRKSRC} with one of these names the ^Ms. [8]

- Add new variables PERL_RUN_DEPENDS and PERL_BUILD_DEPENDS by
  checking the existance of the Perl modules with the "perl -e 'use
  module;'" command. [9]

- Fix bsd.port.mk variable quoting issues.  No quoting is necessary
  anymore either in the Makefile or on the command line.  Affected
  variables include:

  BROKEN
  FORBIDDEN
  IGNORE
  MANUAL_PACKAGE_BUILD
  NO_CDROM
  NO_PACKAGE
  RESTRICTED

  [10]

- Add NOFETCHFILES variable.  If set, don't download these files
  from the ${MASTER_SITES} or ${MASTER_SITE_BACKUP} (but do from
  ${MASTER_SITE_OVERRIDE}). [11]

- Improve 'search' target output. [12]

- Add a new virtual category for Amateur Radio - hamradio. [13]

- Cleanup some old/unused pathes in bsd.port.mk. [14]

- Add @dirrmtry for plists which does the same as:
  "@unexec rmdir %D/foo 2>/dev/null || true" [15]

- Remove virtual category - offix. [16]

- Use portsnap instead of cvsup or cvs on "make update" in
  /usr/ports. [17]

- Move location of bsd.autotools.mk within bsd.port.mk [18]

- Add bsd.linux-rpm.mk, fix INSTALLS_SHLIB for Linux ports [19]

- Use new USE_RC_SUBR format for FreeBSD version >= 700007 [20]

- Replace the string "FreeBSD" by "The FreeBSD Project" in the
  security warning [21]

- Add bsd.local.mk for local modification to ports framework. [22]

- Replace rcNG spelling by rc.d [23]

- Remove superfluous USE_REINPLACE. [24]

Special thanks to:      linimon for spending hours with all these patches
                        clement for fixes
                        kris for help with pointyhat
PR:     ports/86310 [1], ports/89498 [2], ports/83530 [3],
        ports/83789 [4], ports/84053 [5], ports/86281 [6],
        ports/87214 [7], ports/87234 [8], ports/87318 [9],
        ports/87396 [10], ports/87605 [11], ports/87840 [12],
        ports/88230 [13], ports/88493 [14], ports/88711 [15],
        ports/88751 [16], ports/89281 [17], ports/89999 [18],
        ports/90031 [19], ports/90150 [20], ports/90668 [21],
        ports/91433 [23], ports/88754 [24]
Submitted by:   mi [1], marcus [2], Lars Engels <lars.engels@0x20.net> [3],
                pav [4, 16, 20, 24], garga [5], cperciva [6], vd [7],
                edwin [8, 9, 11, 15, 21],
                fenner [10], Arseny Nasokin <tarc.po.cs.msu.su@tarc.po.cs.msu.su> [12],
                Carl Makin <carl@stagecraft.cx> [13], arved [14],
                NIIMI Satoshi <sa2c@sa2c.net> [17], thierry [18],
                jylefort [19], linimon [22], dougb [23]
2006-01-21 17:37:14 +00:00
Ade Lovett
64d283b01f As threatened, remove the compatibility shims for autotools, everything
should now be using USE_AUTOTOOLS.
2006-01-05 21:05:30 +00:00
Ade Lovett
ad4a295b89 Fix a couple [1][2] of typos in the autotools warning message.
PR:		89754 [1]
Submitted by:	Vasil Dimov <vd@datamax.bg> [1], barner [2]
2005-11-30 18:21:38 +00:00
Ade Lovett
6a53d41a22 Add a pre-everything:: target that will print out appropriate warnings
if a port is still using the old autotools Makefile constructs.

For example:

    *** AUTOTOOLS WARNING for x11/electricsheep
    This port is using old autotools constructs which wil be
    disappearing on 1st January 2006

    In most cases, this warning can be fixed by removing
    all the old constructs and replacing them with:
      USE_AUTOTOOLS=  libtool:13

The first line should be easily parseable by portbuild and tinderbox
clusters to flag such ports.

I'll be doing a few more sweeps of the ports tree to pick up on any
such ports over the coming weeks, before turning off the old system
and marking the port BROKEN in such cases.
2005-11-19 22:04:25 +00:00
Ade Lovett
c2d62ca97a Switch to <target>:: convention for both patch-autotools and run-autotools,
to allow for easier overriding of these targets by port Makefiles, if
they need to.
2005-11-19 06:02:20 +00:00
Ade Lovett
7248fd146f Rework the run-autotools target into a series of sub-targets, the
order of which can now be overriden.

PR:		86309 (slightly reworked)
Submitted by:	thierry
2005-11-18 23:21:49 +00:00
Ade Lovett
8f92d87d66 Feh. Revert previous commit. Apparently 4.x make(1) doesn't
understanding .warning.
2005-11-15 06:58:03 +00:00
Ade Lovett
6a96cb96ca Now that the mass-conversion is done, print out a helpful message
(via .warning) for pending ports etc. that use the Old World Order
for autotools.

This will turn into a BROKEN message, along with removal of the old
shims, on January 1st 2006, or after 5.5-RELEASE, whichever comes first.
2005-11-15 06:54:39 +00:00
Joe Marcus Clarke
328194eb2d Instead of checking to see if USE_AUTOTOOLS_COMPAT is defined, ensure that
it is empty.  USE_AUTOTOOLS_COMPAT will always be defined, but we don't
want to assume that we're using autotools compatibility unless its value
is non-null.  Previously, the defined check would cause ports using the new
USE_AUTOTOOLS scheme to fail.

Approved by:	ade
2005-07-02 05:02:24 +00:00
Ade Lovett
39738ddbc5 Install the new version of bsd.autotools.mk with support for the
USE_AUTOTOOLS stanza.  Full backwards compatibility with the current
USE/WANT variables has been maintained via a number of shims which
are set to expire on January 1st, 2006.

Please do *not* start using USE_AUTOTOOLS in port Makefiles until
after 6.0-RELEASE has gone out the door.  Once that has happened,
I will implement a tree-wide conversion process before 5.5-RELEASE,
at which points ports will be free to use the new mechanisms.

This change has been extensively locally tested with various large
consumers of autotools building with no ill-effects notice.  However,
there may well be edge cases that need to be taken care of.  After
discussion with various members of portmgr, it was agreed that this
commit could go ahead without an -exp run, but that does not, in
my mind, constitute full approval.  The responsibility for any breakages
caused by this commit are mine, and mine alone.  Please do file PRs,
or mail me directly, if breakage is noticed, and I will endeavor to
fix immediately.

PR:		82462
2005-07-01 17:04:53 +00:00
Ade Lovett
cd08d5c603 Remove old, deprecated entry points into bsd.autotools.mk that merely
flagged a port as BROKEN.  Since INDEX builds just fine, it's pretty
obvious that all ports have been converted over to the current world
order, and this has been the case through at least the lifetime of 5.x,
so it's time they went away.
2005-06-17 04:04:23 +00:00
Ade Lovett
130b8f2317 Add USE_ACLOCAL_VER= (automake-version), another entry point into
using the various GNU autotools, running "aclocal" at configuration
time, prior to any other tools.

This should allow a number of ports Makefiles to be cleaned up with
respect to their explicit calling of ${ACLOCAL}

PR:		41945 (reworked for current reality)
Submitted by:	Bruce M Simpson <bms@spc.org>
2005-06-16 21:52:56 +00:00
Ade Lovett
cbcdcfb3d4 Purge WANT_{LIBTOOL,AUTOCONF,AUTOMAKE}_RUN
The versioned autotools are now strictly for building other ports in the tree.
Likewise, the gnu- autotools are for runtime dependencies for IDEs, and others,
where unmodified cross-platform capabilities are desired.
2005-06-16 17:29:45 +00:00
Kirill Ponomarev
f296ccd76e Remove trailing spaces. 2005-01-09 10:12:07 +00:00
Ade Lovett
e32a824579 Move devel/autoconf->devel/autoconf253 and devel/automake->devel/automake15
All autotools ports are now truly versioned and do not conflict with each
other.

This marks the end of "Phase 1" of the autotools updates.
2004-08-03 22:36:52 +00:00
Joe Marcus Clarke
7c0294a2c1 Add some documentation for USE_INC_LIBTOOL_VER. 2004-07-09 17:47:25 +00:00
Joe Marcus Clarke
9e5632dd66 Apply a big libtool patch to allow porters to use the libtool installed by
the libtoolX ports instead of the one included with each port.  Ports that
set USE_LIBTOOL_VER=X will now use the ports version of libtool instead of
the included version.  To restore previous behavior, use the new macro,
USE_INC_LIBTOOL_VER.  Both macros accept the same argument: a libtool version.

For example, to use the ports version of libtool-1.5, add the following to
your Makefile:

USE_LIBTOOL_VER=        15

To use the included version of libtool with extra hacks provided by
libtool-1.5, add the following to your Makefile:

USE_INC_LIBTOOL_VER=    15

With this change, ports that had to add additional libtool hacks to prevent
.la files from being installed or to fix certain threading issues can now
delete those hacks (after appropriate testing, of course).

PR:		63944
Based on work by:eik and marcus
Approved by:	ade (autotools maintainer)
Tested by:	kris on pointyhat
Bound to be hidden problems:	You bet
2004-07-09 17:43:11 +00:00
Ade Lovett
181243d03c .error -> BROKEN (against my better judgement, but hey ho)
PR:		68568
Submitted by:	eik
2004-07-01 21:13:08 +00:00
Ade Lovett
328b757bf2 Autotools cleanup. Remove autoconf257 (259), automake17 (18), and
libtool14 (13/15).

PR:		67768
Submitted by:	ade
Approved by:	4-exp bento runs (thanks, kris!)
2004-07-01 17:06:41 +00:00
Ade Lovett
01d65e04c3 Switch over to versioned devel/libltdl15 (from devel/libltdl) after
repo-copy.
2004-06-08 20:45:00 +00:00
Ade Lovett
e360452599 Over the past few weeks, we have been testing the next
incarnation of ports/Mk/bsd.autotools.mk on the road to bringing
at least some semblance of sanity back to this corner of the
ports collection.

By far and away the easiest way to see the changes will be to
view the new file once committed, but here is a summary of the
changes:

1. USE_LIBTOOL, USE_AUTOCONF, USE_AUTOHEADER, USE_AUTOMAKE have
been fully deprecated.  Ports attempting to use these variables
after the commit will error out, and most obviously break INDEX
generation, with a helpful error message.  Instead, ports must
now specifically choose the version of any of these tools that
they need with the corresponding USE_*_VER variables.  Note that
these variables understand any and all versions of autotools ports
in the tree, there is no longer a need to have specific version
numbers hardcoded in the infrastructure of bsd.autotools.mk
(as there is now).  In particular, this will immediately open up
automake18 and autoconf259 for general use and beating.

2. Similarly for WANT_LIBTOOL, WANT_AUTOCONF, and WANT_AUTOMAKE.
Again, these have been fully deprecated, and the equivalent
WANT_*_VER versions should be used.

In order to preserve existing behavior for these variables, please
note the 20040314 entry in ports/CHANGES for the appropriate
version numbers to use for any ports in the GNATS queue.

Both WANT_* and USE_* bring in the relevant tool as a build
dependency, and set up a reasonably large number of variables
pointing to the right programs to be using in the port.  The
only difference at the moment, is that USE_* will run an extra
autotools-related configuration step, whereas WANT_* merely
requests the environment.

3. The helper knob USE_LIBLTDL has been added which currently
simply adds a LIB dependency on the libltdl port.

4. Three new variables have been introduced,
WANT_{LIBTOOL,AUTOCONF,AUTOMAKE}_RUN=yes.  These variables will
do nothing by themselves (a Work-In-Progress), but if the
appropriate autotool version is defined (either through
WANT_*_VER or USE_*_VER), this will add the relevant dependency
to RUN_DEPENDS.

Steps 3 and 4 now essentially negate the need for any kind of
direct dependency within a non-autotools port Makefile on
devel/autoconf*, devel/automake*, devel/libtool*, and devel/libltdl.

PR:		66037
Reviewed by:	4-exp bento cluster
2004-06-04 17:27:29 +00:00
Ade Lovett
08b6cdcb5e Introduce bsd.autotools.mk to the world, ripped from bsd.port.mk
This is essentially a null-commit, with the one exception that
the "patch-libtool" target is now called "patch-autotools" for
consistency with "run-autotools".

Many thanks to kris for testing on the 4-exp bento cluster

Approved by:	portmgr (kris)
Verified by:	bento 4-exp
2004-04-19 01:37:12 +00:00