Commit Graph

3055 Commits

Author SHA1 Message Date
espie
2a68fab763 thinko 2011-12-01 11:11:23 +00:00
dcoppa
f1ac9597b6 Reserve a seat for the redis user 2011-11-29 15:50:24 +00:00
naddy
4742472cb6 alpha uses gcc4 now, and so does hppa64 2011-11-29 15:11:18 +00:00
sthen
6a53633581 devel/quirks is important, enforce adding it to the plists in check-plist
as done with pkglocatedb. Adding it here suggested by naddy@ (I was originally
going to add it to all the plists).
2011-11-28 12:59:50 +00:00
jasper
5c15af4428 - move to bin and adjust paths where needed, manpages will follown soon 2011-11-28 10:30:22 +00:00
sthen
e7fe871f2c replace "!defined(MASTER_SITE_OVERRIDE)" check for MASTER_SITES[0..9] with the
new ${MASTER_SITE_OVERRIDE:L} == "no" construct, problem reported by naddy@.
2011-11-27 21:04:34 +00:00
espie
48b9bf74ff bug fix, don't forget to finish_scanning when reading from source ! 2011-11-27 17:37:47 +00:00
espie
34c5369453 unconfuse naming 2011-11-27 17:31:54 +00:00
espie
03d1bfec7f generate a tempfile, THEN move to saved_libs if things are okay 2011-11-27 17:21:44 +00:00
espie
51892d0631 explicitly ask for stdin 2011-11-27 16:52:04 +00:00
espie
0dd6bc04b7 document current changes 2011-11-27 16:50:34 +00:00
espie
adfd6c2aaf flag error with -i and no source 2011-11-27 16:50:19 +00:00
espie
5c28768a5a more sensible option combinations. 2011-11-27 16:40:58 +00:00
espie
e0c5221e97 add a bit of debug code that logs everything that's going on... 2011-11-27 16:15:52 +00:00
jasper
d435bb4bc0 whitespace nit 2011-11-27 14:59:21 +00:00
espie
bc6cc54b9b move binary scanner into its own module 2011-11-27 14:49:42 +00:00
jasper
5a5c2e9e14 add a manpage
ok espie@
2011-11-27 13:52:10 +00:00
espie
961be0f72e add a "quiet" option that doesn't say anything about extra libraries unless
there's also missing wantlibs.
2011-11-27 13:39:11 +00:00
espie
f57d8eb001 run objdump in batches, for a *huge* speed-up 2011-11-27 13:29:38 +00:00
jasper
953ca5dbf2 move to bin/ and ajust CPANTEST path
ok espie@
2011-11-27 13:29:35 +00:00
espie
061934ab66 prepare the non ldd parser to handle multiple files 2011-11-27 13:10:36 +00:00
espie
d1e36fa052 finish moving parts to the Runner object 2011-11-27 12:42:40 +00:00
espie
7a7321a0bb rename a few things 2011-11-27 12:29:10 +00:00
espie
d80fe79869 explain source to runner 2011-11-27 12:24:06 +00:00
espie
63f57fae21 abstract running objdump/ldd a bit more into its own class 2011-11-27 12:09:17 +00:00
espie
07aa1b9ba6 move objdump runs to state in order to be able to run it once 2011-11-27 11:50:26 +00:00
espie
cd9c477eff tweak to allow for several files in a single run 2011-11-27 11:37:58 +00:00
espie
5b1516ea0b unify ldd/objdump runs somewhat
tweak FileSource to return its directory separately from the filename,
so that running objdump does a chdir
adjust filename to be a relative path.
2011-11-27 11:29:33 +00:00
espie
a3733c98dd for :patch ports, show-prepare-results should also include the list of
installed dependent ports, so we have no choice but ask, which is fairly
easy to do.
2011-11-26 13:52:52 +00:00
espie
199c383918 slightly nicer display, especially in the presence of a progress meter
on long lists of WANTLIBs.
2011-11-26 12:02:54 +00:00
espie
7b925859cf stop getting bad timings from erroneous builds. 2011-11-26 11:46:15 +00:00
espie
ed8b3e60fa a few more notes 2011-11-25 15:05:56 +00:00
espie
03b76c3a13 - tweak "prepare" stage to give more accurate default/dependency result directly
code should still work with older pkg_info, but you need uptodate pkg_info
for best messages, e.g.,:
===> kdelibs-3.5.10p14 depends on: gettext->=0.10.38 -> gettext-0.18.1p0
===> kdelibs-3.5.10p14 depends on: metaauto-* -> metaauto-1.0
===> kdelibs-3.5.10p14 depends on: autoconf-2.61 -> autoconf-2.61p3
===> kdelibs-3.5.10p14 depends on: gmake-* -> gmake-3.82

- adds target: show-prepare-results that yields the list of installed packages
deduced by prepare

- kill undocumented CLEAN_PLIST_OUTPUT
- remove old internals
- ensure IS_INTERACTIVE and REGRESS_IS_INTERACTIVE are always defined
- fix a bug in FETCH_MANUALLY and BATCH interaction
2011-11-25 13:58:13 +00:00
espie
636426623c grmf, managed to reintroduce two PKG_DBLOCK 2011-11-24 19:24:54 +00:00
espie
ff9908d97d bug-fix, behavior for dependency check with "_DEPENDS_TARGET=package" is
disturbingly complicated (as reported by aja@, naddy@, and others. Sorry,
was looking at the wrong code, so I didn't see the bug)
2011-11-24 18:12:28 +00:00
espie
752bf17c1c zap/protect some stuff.
keep FTP_KEEP_ALIVE for now, until we sort it out.
2011-11-24 17:49:58 +00:00
ajacoutot
36de304a5c build->bin 2011-11-24 14:26:16 +00:00
espie
60bc66c627 use PREPARE_CHECK_ONLY to weed out bugs in dpb.
also, missed passing dontclean to one instance of add_normal_tasks, oops
2011-11-22 16:48:01 +00:00
espie
4b801b7017 shorter lock line: user doesn't really care that multiple pkgpaths ran into
the same lock, rather that it's a lock, and what the lockname is.
2011-11-22 16:46:44 +00:00
espie
fdc7a9c9fd subtle effect of equivalence: sometimes, we do not get back the subdir
we asked for.

This can be a problem, as rescan relies on it to reenter the path in the
various queues.

So, when we build the equivalence hash, give special treatment to extra
paths that match the actual subdirs list.

Problem reported by naddy@, who sees sporadic errors linked to NFS lag,
which mean that paths sometimes get flagged as errors, then later the error
vanishes automatically when the package appears...

well, this makes darn sure the correct pkgpath does not vanish.
2011-11-22 16:44:53 +00:00
jasper
a102f0ce98 whitespaces 2011-11-21 17:13:32 +00:00
espie
2522fc337e minor tweaks 2011-11-21 16:43:52 +00:00
espie
825f591fa4 BASESYSCONFDIR points to /etc (global user settings), and SYSCONFDIR
is derived from it.
old march discussion, prodded by fgs@ about it.
2011-11-21 16:42:52 +00:00
espie
73ca52b733 simplify. why do I put sentences in parenthesis ? ETOOMANYNESTLEVELS 2011-11-21 15:02:14 +00:00
espie
1905aa1a77 adjust to some recent changes and improvements
give hints as to where to get relevant info.
be more forceful about WRKOBJDIR on local disk.
2011-11-21 14:58:29 +00:00
espie
d40a7da2f0 also make the connection to pkgpath(7) more obvious 2011-11-21 12:39:39 +00:00
espie
0ed05101b4 nicer less confusing messages 2011-11-21 12:26:05 +00:00
espie
f5458c8a3e better check for PREPARE_CHECK_ONLY: assume we're second_pass already in
the check_install case.
That way, we get the full error report.
2011-11-21 12:20:53 +00:00
espie
eba34186b3 Speed up prepare stage: simplify the old loop, remove old cruft.
In the case where we want an install, run one single pkg_info instead of two.
If this fails during the second pass, we will run it again to figure out
whether the install or the default is wrong, but this is an error condition,
so this need not slow down the general case.

Add PREPARE_CHECK_ONLY knob, to be used by dpb: dpb already installs what
it needs, so for install dependencies to be missing during the "prepare"
stage is an error in dpb's logic...
2011-11-21 12:16:42 +00:00
espie
be80680935 point to pkgpath.7 2011-11-21 12:03:05 +00:00
espie
55ef3a8806 dpb refuses multiple subpackages in a pkgpath, there's no reason for
pkgpath.mk to do otherwise.
2011-11-20 15:38:08 +00:00
sthen
2893ab28a2 add a commented-out ACCEPT_JRL_LICENSE, useful for bulk builders 2011-11-19 20:22:08 +00:00
espie
2f85417164 document partly how dependency internals work 2011-11-19 16:35:46 +00:00
espie
dce00fcc63 more dire warning about abusing internal _* shit. 2011-11-19 15:07:31 +00:00
espie
65096ef4f0 document fragments related to dependency parsing 2011-11-19 14:59:27 +00:00
espie
8663ec5dfb set conventions, document locking internals 2011-11-19 14:35:56 +00:00
espie
7873819719 more flesh 2011-11-19 14:17:59 +00:00
espie
478a792605 first pass at documenting stuff for very curious people, more to come 2011-11-19 13:37:41 +00:00
espie
3aa1b0516a unzap the ECHO_MSG 2011-11-19 11:43:05 +00:00
espie
2334188bc1 oh, hum... use TMPDIR instead of hardcoding it. 2011-11-19 11:36:53 +00:00
espie
cb960e35d0 mv _cache_fragment to pkgpath.mk
create a new category of recursive targets that can use this fragment,
and use them, e.g., print-package-signature from top-level should benefit
a lot.
2011-11-19 11:33:39 +00:00
espie
4c9d60034c do the no_mips64 dance here, no need to duplicate it in lots of Makefiles 2011-11-18 11:01:47 +00:00
espie
599f0be88c also don't emit the same string twice. 2011-11-17 23:14:43 +00:00
sthen
5749b5be10 rename MODGCC{3,4}_ARCHES to MODGCC{3,4}_ARCHS, suggested by naddy,
phessler and jasper agree
2011-11-17 18:03:43 +00:00
espie
e8b4473500 setting PKGPATH in pkgpath.mk is not enough, pass it thru the environment
as appropriate.

(typical make package would call getpkgpath 15 times instead of 1!)
2011-11-17 17:53:22 +00:00
sthen
cf870b6b54 .poison MODGCC4_ARCHS, just to be different this module uses MODGCC4_ARCHES 2011-11-17 14:32:24 +00:00
espie
75f7695cea quick&dirty manpage 2011-11-16 23:11:29 +00:00
espie
c295da80f5 fix option handling 2011-11-16 23:05:28 +00:00
sthen
3796502e06 a couple more, mostly from amit kulkarni 2011-11-16 23:00:41 +00:00
espie
1d5b371ed7 a second FULLPATH=Yes needed 2011-11-16 22:59:42 +00:00
espie
ed36f69a32 fix for recent infrastructure changes
also fix for FULLPATH !
2011-11-16 22:57:54 +00:00
espie
12e4da425d move 2011-11-16 22:57:03 +00:00
sthen
f18e4d4cba Add a sample file with a number of settings which many porters are
using in mk.conf, especially a bunch of .poison lines for common typos,
including suggestions from aja, espie, naddy and others. Can be used
with .include in mk.conf.

oks from at least william@ phessler@ and several users like it too.
2011-11-16 18:45:28 +00:00
espie
1dcb17d4da try to avoid SUDO while cleaning up the cache.
this avoids prompting for password during make extract.
problem noticed by rpointel@
2011-11-16 14:40:59 +00:00
espie
3b4f419753 add comments to a few thing
be more precise into recreating $d, using bizarre shell patterns
2011-11-16 10:57:23 +00:00
jasper
9f406a8adc - remove bogus XXX 2011-11-16 10:56:57 +00:00
espie
e1d6af2f53 simplify external call a bit 2011-11-16 10:37:35 +00:00
espie
07da0fb496 flatten the DEPENDS_CACHE structure, at the expense of one extra sed.
avoids problems with ownership of various directories, as seen by naddy@
2011-11-16 10:30:47 +00:00
espie
450f2ff1ca rephrase to remove unneeded needed variable. 2011-11-15 20:41:41 +00:00
espie
645b599225 same code 2011-11-15 20:32:35 +00:00
espie
2517b318eb speed-up dependency checking a bit:
- resolve-lib -needed, less perl invocations (gains a lot)
- show-run-depends, less fancy than run-dir-depends, a bit faster...
- don't create cache for internal targets (external stuff already did it)

define _PERLSCRIPT in pkgpath.mk since getpkgpath should use it...
2011-11-15 20:08:36 +00:00
espie
06e9fb91d4 new option: -needed, to speed lib-depends-args. 2011-11-15 20:02:38 +00:00
sebastia
b448bf3fb0 Reserve uid 685 for misc/rocrail, a digial model railroad daemon
OK phessler@
2011-11-14 22:31:44 +00:00
jasper
f3ebafe1ff Output an error message if we're supposed to link with a non-existent library,
instead of puking perl errors.

ok espie@
2011-11-14 22:14:38 +00:00
jasper
3dcf344837 Make output slightly more similar like gnu libtool in various
modes. Simplify Exec->command() a bit too while here as suggested by espie@

ok espie@
2011-11-14 22:12:08 +00:00
espie
7021d5e8f9 rework the dependency code to be slightly simpler.
systematically use a cache while scanning for libraries.
This speeds up MULTI_PACKAGES a bit...
2011-11-14 22:02:15 +00:00
espie
8890044380 weights in the -I option as well 2011-11-14 21:59:45 +00:00
espie
2f6111d127 explain to the engine how to install stuff when it's ready (no error
checks though).

new -I option to do that.
change -C option to be more useful.
2011-11-14 21:57:47 +00:00
espie
5ffb1d6f17 allow check for local cores 2011-11-14 21:56:04 +00:00
espie
c5a81668f4 show parents when we recurse thru subdirs. a bit noisy, but useful when
you want to figure out why some big stuff you wanted to avoid is building
2011-11-14 19:03:41 +00:00
espie
982d021ed2 we have :QL, so make depends handling a bit saner. 2011-11-14 16:18:36 +00:00
espie
2be274b94e IFS setting can be local to the read 2011-11-14 13:12:20 +00:00
espie
ff5f349783 nit pick some very old stuff 2011-11-14 12:10:27 +00:00
espie
520b395530 a bit more micro-optimization: allow print-plist-libs-with-depends 2011-11-14 10:29:58 +00:00
espie
aba2721637 simplify lock code so that lock/unlock actually works, even if I lose
small-grained locks for fullpkgpath
also fix a stupid parenting bug...
2011-11-13 22:18:04 +00:00
espie
2ab4b2c7e7 better FETCH_MANUALLY handling:
- expose MISSING_FILES
- treat them as a special kind of IGNORE
- handle that in DPB
that way, ports that are IGNORE'd for other reasons (not correct arch)
stay ignored, and relevant ports with missing distfiles get better error
messages
2011-11-13 10:34:35 +00:00
espie
e15fa3097d oops, fix FETCH_MANUALLY bug.
Prepare for MISSING_FILES
2011-11-13 10:28:32 +00:00
espie
8f77bf5ec5 make stuff slightly more verbose all the time 2011-11-12 13:19:26 +00:00
jasper
8419514ea8 drop ftp.no.gnome.org; it's been unreachable for months now
ok aja@
2011-11-11 16:58:09 +00:00
jasper
387709c507 - drop a few dead gnu mirror and add another working one. 2011-11-11 16:36:35 +00:00
espie
185cd0210d some times, your machine will crash and leave behind empty files...
ignore empty plists
2011-11-11 11:35:32 +00:00
sthen
eb8c0e811d oops fix url 2011-11-10 14:10:59 +00:00
sthen
a6f1fb6799 I've mirrored the current MASTER_SITE_BERLIOS files, so add my mirror
to the list.
2011-11-10 14:09:08 +00:00
espie
9efee931ed smarter dump at end of build:
- try resolving RDEPENDS on tobuild, so that known dependencie are zapped.
- use equivalence info to not reprint same thing twice.
- dump tobuild AND built, since both are usually relevant in case lots of
stuff didn't build
2011-11-09 08:28:55 +00:00
espie
b0e6afe5e4 split DEPENDS into not done/done to help prepare work correctly 2011-11-08 10:26:38 +00:00
espie
cb47853a4e backout shrinkage that breaks prepare 2011-11-08 09:07:24 +00:00
espie
fb0691e921 share MULTI_PACKAGES.
simplify the default case (SUBPACKAGE=-main).
2011-11-07 16:03:19 +00:00
espie
0bf789a9ca work around brain damage 2011-11-07 15:39:50 +00:00
espie
bc958fd5b8 revert until I figure out why emacs21 is unhappy with this ? 2011-11-07 14:23:09 +00:00
espie
b016e09750 modify pkgpath to store info in a more compact way (in particular,
get rid of sawflavor, and just use the existence of the key to mark the
presence of flavors).

also remove yet more info once we used it.
2011-11-07 13:23:09 +00:00
espie
8bba5b93fa remove a bit more data 2011-11-07 13:21:46 +00:00
sthen
8c270e0b39 - update MASTER_SITE_SAVANNAH
- zap some stray whitespace while there
2011-11-07 13:13:06 +00:00
espie
3915fb3951 don't auto-vivify info. 2011-11-06 17:56:53 +00:00
espie
7238b18cc3 make sure print_parent gets the correct path 2011-11-06 16:56:23 +00:00
espie
cdb5da4876 explicitly document that -f0 will save a lot of memory 2011-11-06 15:42:39 +00:00
espie
1e4f1a9788 pass CONFIG_SITE to build step as well. should make lang/gcc build
marginally faster, and a few other odd ports that reconfigure during build
as well...
2011-11-06 12:38:29 +00:00
espie
ebe71b8762 slightly better error handling and reporting:
- log to pkgpath whenever we can
- log FETCH_MANUALLY issues as errors, so we can fix them
2011-11-06 12:23:28 +00:00
espie
50ac27a1e8 use print_parent 2011-11-06 12:22:17 +00:00
espie
63910d84bb document why it's broken. Link more parent stuff. 2011-11-06 12:21:47 +00:00
espie
3f5146bbc7 make it simpler to print parent.
zap copy_flavors which I no longer use
2011-11-06 12:21:07 +00:00
espie
0ea853e6e2 convenience function to log to correct path more easily 2011-11-06 12:20:32 +00:00
espie
32a877c74b document that locks contain parent links, and also that engine.log states
ignored reason now.
2011-11-05 18:33:52 +00:00
espie
1ccfe6a255 propagate IGNOREd status to dependent ports.
display directly into engine.log.
replace all info with a stub "ignored already".
This shrinks memory usage some more.
2011-11-05 18:27:13 +00:00
espie
561e2aa812 shrink a bit: the reason for copy_flavors use is long gone
remove the debug scaffolding that duplicates depends list
2011-11-05 18:25:36 +00:00
avsm
8442300dd1 add .tbz to the list of known EXTRACT_SUFX entries
ok espie@ brad@ dcoppa@
2011-11-02 17:16:30 +00:00
espie
f517149f57 make signatures conform to the way packages get built.
This does slow down signature computations (I will try to address that),
but it removes all false positives from dpb -R.

tested by nigel@
2011-10-25 15:08:10 +00:00
espie
3e80882e17 zap pre,do,post fetch & package.
speed up print-plist-libs a wee little bit
2011-10-24 12:34:08 +00:00
matthieu
7cdaa27aff Modernize error message. Don't tell people to use a 11 years old
ports tree. ok naddy@, espie@.
2011-10-23 22:06:01 +00:00
espie
26cf943632 missed one (Nathanael Rensen <nathanael@polymorpheus.com>) 2011-10-22 07:42:24 +00:00
espie
4512fd2e97 missed one 2011-10-21 16:52:05 +00:00
espie
d6c20248ec zap CHOWN/CHMOD, as prompted by a question from stu 2011-10-21 16:35:14 +00:00
espie
3acee66c99 add a few entries that match recent stuff.
Doesn't appear to have any negative impact on a full bulk.
2011-10-21 08:51:55 +00:00
espie
af01b50822 prepare framework to avoid pseudo-flavors from dpb unless in bootstrap
situation
2011-10-18 06:43:51 +00:00
espie
a2a17ea97a fix for pkgpaths changes 2011-10-17 10:18:16 +00:00
espie
cbf9cefc78 pull in elf toolchain along with other properties 2011-10-16 07:52:08 +00:00
espie
490e1cfa18 minor cleanup: there's no reason for these variables to be intermixed
with targets.
lib-depends-check should be defined as ignored along with the rest.
errors-handling should occur last, so that the last block of errors gets
used.
2011-10-16 07:51:27 +00:00
espie
6b8ccf58db - fix position of Makefile.inc include guard to allow arbitrary intermixing of
Makefile.inc and bsd.port.arch.mk without infinite recursion.

- use simpler pattern to test for arch stuff, we just need the values, so
.for A B in ${MACHINE_ARCH} ${ARCH}
is enough and avoids the setting of intermediate variables.

- new PROPERTIES variable that's easy to test with e.g. if ${PROPERTIES:Mapm}
2011-10-16 07:12:35 +00:00
espie
6af9b14242 repair rescan for distfiles errors 2011-10-15 10:35:41 +00:00
espie
e16ed24351 fix -R and -c. 2011-10-11 13:56:41 +00:00
espie
1be9ae7cd5 duh, for equates to work, I need to store values. I'm an idiot. 2011-10-11 13:43:25 +00:00
espie
852e15455d let -S work again 2011-10-11 09:50:35 +00:00
espie
234027bfe0 unfuck pkgpaths.
- instead of seen/unseen, have an actual constructor. Instead, mark pkgpath
for which we wantinfo/wantbuild.
- only mark EXTRA dependencies as wantinfo. So the devel/haddock,no_deps
temporary error should be gone.
- since we have FLAVOR and SUBPACKAGE available, construct as much info as
we can during vars scanning (see handle_equivalences). This avoids about 150
path rescans during a full bulk. Also, grab the timing and logsizes from
equivalent files, so that most stuff should know show % all the time.
- tweak subdirlist to be a hash, and correctly add pkgpath_and_flavors to it.
That way, we rescan avahi pseudo flavors just once, and not four or five times.
2011-10-10 18:56:50 +00:00
espie
398f738da8 There's no actual reason to accept flavors with non-lowercase spelling,
so kill the misfeature, as agreed by mostly everyone.
2011-10-03 15:46:33 +00:00
jasper
3c6680c24e Remove some duplicate code by putting in a variable, as done elsewhere. 2011-10-03 14:21:02 +00:00
espie
f29db2a6fb ooh, don't merge depends from IGNOREd stuff for MULTI_PACKAGES.
this allows build to proceed faster on some arches by simply not
building stuff we don't need
2011-10-03 08:56:40 +00:00
espie
2697d6283f FLAVOR is obviously a list 2011-10-03 08:53:49 +00:00
espie
f9a48d816a pseudo-flavors *must* be taken off MULTI_PACKAGES, not BUILD_PACKAGES.
dpb coalesces build dependencies over MULTI_PACKAGES: if we don't substract
from MULTI_PACKAGES, this can lead to bootstrap loops.

Case in point: sysutils/gamin, whose build relies on "no_server" to be
available as a dependency for glib2/gtk+2.

(but IGNORED stuff is properly kept as MULTI_PACKAGES, since it's mostly
intended to avoid strange arch errors)
2011-10-03 08:35:36 +00:00
espie
00d241e48d oops 2011-09-30 05:35:52 +00:00
espie
6cd8498bb2 MONO_ARCHS to de-dup the tree
ok robert@, aja@
2011-09-28 13:54:20 +00:00
espie
c3afd6ab0d more default flavors cleanup:
- if there is no flavor in BUILD_PKGPATH, it's not necessarily the default,
make sure there's an empty flavor by appending a ,
- pass FLAVOR to dump-vars, so that eventually dpb can match "no flavor
specified" to "this is the default flavor", thus getting a bit smarter
(this should speed up the LISTING job by not traversing as many subdirs).
2011-09-28 10:20:19 +00:00