Commit Graph

1332 Commits

Author SHA1 Message Date
espie
2a43e0ad2a optimize newwantlib:
- if _DEPRUNLIB is empty, there's no need for any computation since the
result will be empty.

- zap the loop on _LIB4* for port-wantlib-args, as run-dir-depends already
grabs them.

- expose wantlib_args and corresponding targets for pkg_create to take
advantage of.

- add a dirty way for developers to waive the fake vs. ports check (PLEASE
use with EXTRA CAUTION).
2011-06-24 14:34:15 +00:00
espie
78782b3f3f turns out WKRDIR is not quite as constant as I wished...
found out by naddy@
2011-06-23 22:03:15 +00:00
espie
e428771bff decent error message 2011-06-23 21:49:18 +00:00
espie
fb83b9e131 oops 2011-06-21 17:11:45 +00:00
espie
ad884b7af4 save the wantlibs into files before comparison and give a more useful
error message. This was always intended, I wanted to make things work
before making them beautiful.
2011-06-21 17:04:32 +00:00
espie
3fde18c238 zap old legacy compat with old depends with lots of leading ::: 2011-06-15 16:31:11 +00:00
espie
a307462266 fix some limitations of _print-package-args
* cut it into separate targets for readability and better testing
* filter libraries more efficiently
* use internal variable for resolve-lib

create two targets for solving wantlib: one (_fake-wantlib-args) which uses
the information under the fake directory and installed packages, and another
(_port-wantlib-args) which walks packing-lists. The second one can be used
to collect meta-info even when nothing is installed, and thus provide better
package-signature accuracy, or help with lib-depends-check.
The first one uses what's actually in place when a package is built.
For now, we're paranoid and use both when building a package, erroring out
if they don't match, even though _port-wantlib-args is somewhat slower.
2011-06-15 16:29:48 +00:00
naddy
297ddb4ef7 add --disable-silent-rules for CONFIGURE_STYLE=gnu; ok kili@ 2011-06-02 15:54:10 +00:00
ajacoutot
06abdaec00 Punctuation in the xz WARNING. 2011-06-01 16:04:12 +00:00
espie
e5e8d25a93 initial support of xz, to be polished.
most important part is nagging the user that this WILL not build on
some architectures and be very inconvenient on some others.
2011-06-01 12:04:06 +00:00
espie
6fc3e924f5 dpb -f will need FETCH_MANUALL to tell people to fetch those 2011-05-16 23:40:24 +00:00
kili
9862026031 Fix missing quote around $$pkg.
ok espie@
2011-04-23 08:25:50 +00:00
espie
bdca4a9a30 prefer the V- version for non-MULTI_PACKAGES vars.
fixes E on libf2c-old on i386.
2011-04-16 12:21:44 +00:00
espie
ab5cd9d6f3 redo the IGNORE dance in a smarter way:
derive IGNORE-sub from IGNORE, and then test IGNORE-sub

Define complete value for IGNORE very late, _MULTI_PACKAGES trimming only
requires subpackage-specific info.

fix bug in describe, correctly differentiate  between empty and !defined
ONLY_FOR_ARCHS.
2011-04-16 10:31:20 +00:00
jasper
eaf9dad616 remove USE_MOTIF bits
ok aja@ sthen@
2011-04-10 17:55:41 +00:00
espie
c37a0a8a83 define IGNORE${SUBPACKAGE} for each SUBPACKAGE.
Prevents dpb from building subpackages that are NOT_FOR_ARCHS or
ONLY_FOR_ARCHS, as tested by quite a few porters.
2011-04-03 07:19:05 +00:00
fgsch
f33f72e660 add repackage to the recursive targets.
with input and ok espie@
2011-03-28 00:16:13 +00:00
espie
c7b6b23044 tweak logic slightly to avoid duplicate error messages which make no sense 2011-03-22 19:56:51 +00:00
sthen
fc8ddee2f7 adjust the BUILD_DEPENDS for USE_GROFF to require 1.21; ok espie@ 2011-03-21 09:38:53 +00:00
espie
e544151d8e allow things to proceed after flavor_fragment in SUBDIR handling.
Also puts the FULLPKGPATH in extra_msg to figure out where bad dependencies
come from
2011-03-20 19:28:07 +00:00
ajacoutot
c604c9ac83 Make clean=plist consistent with the other clean targets, do not error
out if the plistdb directory does not exist.

ok jasper@ espie@
2011-01-16 20:36:49 +00:00
espie
ac029da04c pass an extra -q to pkg_info -r... that way, we can have "the human version"
be more verbose...
2011-01-10 12:59:36 +00:00
espie
df8ae14936 allow BUILD_DEPENDS = somepath>=version:patch
THIS REQUIRES A pkg_info WITH THE -r OPTION, e.g., current !
2011-01-09 13:07:53 +00:00
espie
f90f6db6eb totally forgot about PATCHFILES 2011-01-04 21:54:36 +00:00
espie
d876093129 old forgotten PKG_SPEC commit 2010-12-20 16:39:53 +00:00
espie
746282fe00 pass PORTSDIR to pkg_create so that it can check more things 2010-12-20 13:05:40 +00:00
espie
ef56915d0c - pass PORTSDIR for libtool, since people seem to want to stuff their
ports tree in weird places.
- show CHECKSUM_FILES if DPB=fetch or better.
2010-12-14 11:37:38 +00:00
espie
884b53366c dpb does not need EPOCH + REVISION 2010-12-07 11:26:37 +00:00
ajacoutot
336c24d6ba Add a default HOMEPAGE for cpan ports when none is specified.
All work including upcoming huge bump done by Mikolaj Kucharski, thanks!

ok jasper@
2010-12-03 11:43:05 +00:00
espie
abf72e33c3 SHARED_ONLY is Yes or No 2010-11-26 20:24:36 +00:00
espie
2c0a53e285 show the old-style depend.
fix :configure depends for versions.
move PKGSPEC to !dpb dump-vars
2010-11-25 18:06:37 +00:00
espie
21be510d2b fix quoting (spotted by jeremy@), make old style depends an error 2010-11-23 18:34:20 +00:00
espie
1c9acc51a6 tweak where stem-* is computed, to be documented and used later 2010-11-20 19:57:59 +00:00
espie
811d94d9d6 new depends 2010-11-20 19:56:47 +00:00
espie
e4c6484205 small tweaks:
compute _CHECK_DEPENDS earlier
 set extra_msg to have flavor_fragment show something better than empty
directories
2010-11-16 19:26:18 +00:00
espie
6c85f407d1 missed _print-plist-with-extra-depends, noticed by jasper@ 2010-11-16 09:39:45 +00:00
espie
86a41b10d0 most abreviated format for depends. there's a consensus that it's good,
and it works.
2010-11-16 09:16:26 +00:00
espie
b1497e737a revamp the way dependencies work
- strip extra : at start of depends (old LIB_DEPENDS are gone, right)
- rely on the fact, :extra is only patch|configure|build for any depends.
- use _parse_pkgspec to do things intelligently.
- _set_stem2default to handle STEM-*.

- switch internal stuff to new style.

This is backwards compatible. But this does require -current dpb, -current
sqlports, and -current pkg_add to work !
2010-11-14 11:17:36 +00:00
espie
199b16a59a all old LIB_DEPENDS=libspec:pkg:path should be gone, so the warning becomes
an error.
2010-11-11 19:03:25 +00:00
espie
e7a2eb26ed "fake" extra @depend lines for LIB_DEPENDS in port-lib-depends-check, so
that they show up even if there's no WANTLIB for them yet
2010-11-11 12:38:51 +00:00
espie
c2993506c5 oops. noticed by sthen@/jasper@ 2010-11-09 23:55:28 +00:00
espie
38061a5145 trap does not exit, avoid unlocking twice, even though it's harmless 2010-11-09 11:18:47 +00:00
espie
a4f88880eb - add check-register, that basically does print-plist
- switch motif to WANTLIB
- start warning about old style LIB_DEPENDS. It's time !
2010-11-07 00:03:38 +00:00
sthen
89545fa5be Let pkg/README-subpackage work, before this we looked for README--subpackage.
ok espie@
2010-10-28 22:39:44 +00:00
jasper
974d938556 - remove "suspicious empty line" emacs whines about 2010-10-28 21:09:52 +00:00
espie
feefd4a81a give readmes to SHAREOWN/SHAREGRP 2010-10-28 14:26:36 +00:00
espie
ff7b318b8c turns out dpb doesn't need this in the end... 2010-10-28 11:14:23 +00:00
espie
367244bbf1 pass FULLPKGNAME to SUBST_VAR (impossible to do readmes otherwise) 2010-10-27 17:38:18 +00:00
espie
d9d6c3c0f1 tweak readme: say that we're installing something
put that into mtree (to be done in src as well)
install in LOCALBASE, independently from PREFIX (newer pkg_adds are happy
with @cwd outside of PREFIX)
2010-10-27 14:34:33 +00:00
espie
feaf413f65 scaffolding for /etc/rc.d, okay robert@ 2010-10-27 14:29:01 +00:00
espie
c794585beb also register pre/do module hooks as targets. 2010-10-26 17:04:20 +00:00
ajacoutot
8dd881a111 Add a MODFOO_pre-configure hook so that MODULES can add some steps at
pre-configure time even when a pre-configure target already exists.

ok espie@
2010-10-26 10:39:22 +00:00
ajacoutot
d7069ea573 Bye bye USE_X11.
From now on, building ports requires X11BASE.

* lots of ports missed this variable (porters always have X11 installed)
  jasper made a first pass on fixing these, but no doubt it will drift
  away soon
* users should use packages
* people building ports should know what they are doing and having
  X11BASE as a requirement is perfectly reasonnable
* we are merging config.x11.site into config.site because of a stupid
  autofoo bug ; currently when USE_X11 is set, some ports may loose the
  ability to even load config.site

tested on a bulk by landry@
ok robert@ jasper@ landry@ sthen@ naddy@ "I won't cry if it dies" espie@
2010-10-24 20:41:23 +00:00
steven
6653580a4a fix pkgpath for libgfortran 2010-10-23 15:45:59 +00:00
steven
1b4c6e5748 add libgfortran to WANTLIB here 2010-10-23 15:30:00 +00:00
steven
1a09781ad7 remove MODFORTRAN_WANTG77 2010-10-23 15:16:27 +00:00
steven
e879a75e6b introduce MODFORTRAN_COMPILER, to be set inside a port
accept g77 and gfortran for this, and make it default to g77
add necessary variables for gfortran usage
make some of the variables internal
2010-10-23 15:05:47 +00:00
jasper
f4bfbd60be - allow recursive copy of the examples, this will fix some quirky ports
ok sthen@
2010-10-23 11:58:33 +00:00
espie
635b6dc960 insist on "latest" groff so that mdoc macros get pulled in. 2010-10-22 15:51:07 +00:00
espie
7eded3e86b pass FULLSUBDIR around, to eventually allow dpb to distinguish between
empty and default stuff.
2010-10-18 08:32:21 +00:00
espie
bb8b47eb44 new read-only variable TARGETS for introspection purpose (list of targets
specific to a given port, e.g, {pre,do,post}-*
2010-10-02 10:25:21 +00:00
jasper
cfb174278e - add MODCPAN_EXAMPLES, which can be set if there are example scripts
in the distfiles. defaults to installing files from examples/. but
that can be set via MODCPAN_EXAPLES_DIST. please see port-modules(5) for
more information.

feedback and ok espie@
2010-10-01 21:55:20 +00:00
steven
60381b0e9e if we are not using gnu libtool, it's not needed in build depends 2010-09-25 13:39:02 +00:00
jasper
449709ad27 - mips64(el) switched to gcc4
ok phessler@
2010-09-24 15:25:21 +00:00
sthen
9b37ead841 add libperl to WANTLIB for shared_only perl ports, to automatically handle
ABI changes in future.

bumps for affected ports to follow.
2010-09-24 15:15:38 +00:00
jasper
0603cf2bf3 - finally works as intended now 2010-09-24 13:37:53 +00:00
espie
e4ea354ddf clean-up "normal" dir even after cleaning flavors.
note that clean=flavors can't work with WRKOBJDIR set
2010-09-24 13:13:46 +00:00
espie
95ca94c501 works better when you put the test where it belongs 2010-09-24 09:20:16 +00:00
landry
8a6d1ad0ac Switch to steven@/bernd@'s perl libtool living under infrastructure/
by default for ports that set USE_LIBTOOL=Yes. Faster, better,
stronger, and cuts bulk builds time by ~15% in my tests on amd64.
Volunteers welcomed to fix the few USE_LIBTOOL=gnu users in the tree.
Report any oddities to ports@...

'Go ahead' espie@ 'Please proceed' steven@
ok ajacoutot@ jasper@ phessler@ sthen@
2010-09-22 18:43:30 +00:00
sthen
f0af6ad5d4 output EPOCH and REVISION in dump-vars, and use it in sqlports.
ok espie@ (with a reminder to add EPOCH, my first diff just had REVISION).
2010-09-21 15:18:03 +00:00
espie
b8fc8e6548 basic support for READMEs, to be documented 2010-09-13 11:04:31 +00:00
jasper
faa180b1de have clean=all zap builddir too. req'd by antoine 2010-09-09 15:06:42 +00:00
jasper
26eaec3c48 - add clean=all, which takes care of cleaning work, flavors, packages and plist.
just a shorthand for adding the above words to a list.

ok espie@
2010-09-06 12:06:29 +00:00
sthen
0a21cddca6 let port-lib-depends-check work with an alternative PORTSDIR;
debugged with Brad, better fix after a suggestion from espie@
ok espie@
2010-08-31 19:30:43 +00:00
espie
3e43c2d160 move LOCKDIR default to pkgpath.mk since it's shared with Makefile.
fix one missed dolock.

Thanks naddy@
2010-08-20 23:11:07 +00:00
espie
36b298174d kill a few things which have now MOVED 2010-08-20 15:07:22 +00:00
espie
34fb20b43d use scripts from bin 2010-08-20 15:02:24 +00:00
espie
8aa8957de5 use scripts from their new locations 2010-08-20 14:53:18 +00:00
espie
0583896947 turn on PLIST_DB by default, as discussed with landry/aja/sthen 2010-08-07 19:41:21 +00:00
espie
43c7b1a093 use new make feature :QL for safer quoting.
helps getting past shell quoting errors, so that the infrastructure
will report actual trouble (is also simpler than :S/<...>/ for pkgspecs).

REQUIRES CURRENT MAKE TO WORK!!!
2010-07-24 10:35:38 +00:00
ajacoutot
66223a71e6 Add _AUTOMAKE_SPEC for automake 1.10. 2010-07-22 19:14:09 +00:00
steven
715dacfb85 pass COMPILER_VERSION in MAKE_ENV instead of USE_GCC3.
this removes the last instance of USE_GCC3 in ports.

from brad
2010-07-21 17:11:48 +00:00
steven
952b3ac19a drop USE_GCC4. we don't use this and the module checks COMPILER_VERSION.
from/discussed with brad
2010-07-21 16:45:21 +00:00
steven
26f69c2f4b use COMPILER_VERSION instead of USE_GCC3
from brad
2010-07-21 16:42:52 +00:00
naddy
a2c9a774ff Remove redundant variables OPSYS and OPSYS_VER.
OPSYS was always "OpenBSD", the ports tree doesn't cover other
operating systems.
OPSYS_VER was the same as OSREV.

ok espie@
2010-07-18 18:49:01 +00:00
steven
ba3f871673 new WANTLIB,LIB_DEPENDS 2010-07-18 11:10:44 +00:00
espie
0af1c9e7da fix fix 2010-07-10 15:21:15 +00:00
espie
11d3fea7e4 some recursive scenarios would break, let _ARCH_OK be undefined, catch it
later.
2010-07-10 15:17:40 +00:00
espie
25c3ed92c3 always define _ARCH_OK${SUBPACKAGE} (to 0 by default), so
that bsd.port.mk can rightfully complain about wrong subpackages.
2010-07-10 13:29:48 +00:00
espie
188c8ed5f5 new support for REVISION/EPOCH 2010-07-10 09:11:10 +00:00
espie
d170ea5206 logic of ONLY_FOR_ARCHS was slightly broken: always define individual
PACKAGE_COOKIE, so that print-plist-contents keeps working.
Only the packaging part (e.g., PACKAGE_COOKIES) should be affected.
Alter PKGNAMES while we're there, as it's only used for debugging, and
it's better that way.

(fixes pkgmklocatedb)
2010-07-09 13:11:59 +00:00
espie
d9dd312bbf synch with src 2010-07-08 20:48:39 +00:00
espie
62995c89d4 make ONLY_FOR_ARCHS and NOT_FOR_ARCHS subpackage-dependent 2010-07-06 12:38:26 +00:00
espie
da03d678c9 print-plist-contents | grablibs appears often enough: combine them as
print-plist-libs
2010-07-06 12:09:55 +00:00
espie
45a2880841 allow libspecs to come from current ports internal dependencies (even if
they're not installed yet)
2010-07-06 12:02:35 +00:00
espie
e946b4c62d explicitly document that the .spec files are just there to force reevaluation
of cookie during development
2010-07-06 11:50:57 +00:00
espie
8ea8f2a482 don't bother computing pkgname if all we want is the plist from the pkgpath 2010-07-06 11:27:38 +00:00
espie
3a7ee8c966 SUBST_CMD is not subpackage dependent, so don't. 2010-07-05 09:00:28 +00:00
espie
d6f6f17460 some libs may be only static libs. we find them correctly, but passing these
as -W makes no sense.
2010-07-05 08:58:09 +00:00
espie
63e9ac2f46 tweak the way LIB_DEPENDS and WANTLIB interact.
More precisely:
- for "older" libspec in LIB_DEPENDS, only compare them against
the libs from the LIB_DEPENDS.
- check LIB_DEPENDS against all libspecs for the package (both from WANTLIB
and LIB_DEPENDS) to turn them into LIB_DEPENDS.
- create a full list of installed libs and of 'inter-package' libraries to
solve all WANTLIB in one go.
This is actually faster than the old code, but a bit more complicated.
2010-07-04 17:26:14 +00:00