Commit Graph

79 Commits

Author SHA1 Message Date
espie
a7f7af295a more error checking.
reported by Simon Kuhle
2005-11-06 09:34:20 +00:00
espie
eae1e7329e move DIFF_ARGS around 2005-11-05 11:38:46 +00:00
sturm
76a0bc8eef create LOCKDIR if it doesn't already exist
ok espie@
2005-11-01 10:54:42 +00:00
bernd
097bf89941 Add a quick (-q) option for the impatient people. But look out! If you
use the -q option, out-of-date looks for changed package names but not
for changed package signatures!

If you want to see ALL of you outdated packages, don't use -q.

"go ahead, commit" espie@
2005-11-01 10:11:40 +00:00
espie
f5f73908d5 more reports 2005-10-29 12:27:31 +00:00
espie
76fc40b70e fix 2005-10-29 12:14:26 +00:00
espie
3e5d6bac8a better error message for slackers who can't read perl. 2005-10-29 12:12:39 +00:00
espie
ce319b8661 Add -r option so that tool can be used to do more. 2005-10-22 18:05:34 +00:00
espie
8e7f909b8d Use the caching mechanism set up in bsd.port.mk to speed it up x3. 2005-10-10 22:25:06 +00:00
bernd
67538a1775 - only compute signatures if the package name doesn't change
- some error checking
- print differences between package signatures

ok espie@
2005-10-10 22:08:27 +00:00
espie
c4ced942c9 protect against cases where @ARGV == 0, which can happen very seldom... 2005-10-10 19:43:33 +00:00
espie
031729bf37 make sure to get ALL libs, that is, several lines in case we need pkg_info
to get the right libraries.
2005-10-10 19:04:06 +00:00
espie
01c2d27f64 let resolve-lib return a useful error code 2005-10-09 13:27:39 +00:00
espie
43ed8edb9c tweak the way library dependencies are resolved to speed them up.
Now, resolve-lib can take a big list of libraries with full paths,
and it can solve a big list of spec at once.
Basically, we move most of the parsing of spec paths into resolve-lib.

Since print-package-signature does build a full list of libs, let's solve
it all at once, instead of invoking a costly perl script repeatedly.

Add some caching possibilities for out-of-date. Specifically:
- store libraries for each package under the directory _PORT_LIBS_CACHE
- use the dependency cache _DEPENDS_FILE to avoid recreating dependency
chains, add a new file _DEPENDS_CACHE that will accumulate all dependencies,
and extract these with a simple script extract-dependencies.

Use echo to build libraries lists instead of ls, that's a bit simpler...

Some more clean-up will happen: it's probably simpler to parse libspecs
at once, extract the libraries needed and go fetch the corresponding libraries
just once.
2005-10-09 12:01:22 +00:00
espie
6ed42bc212 some clean-up + progress meter.
okay bernd@
2005-10-01 16:36:03 +00:00
bernd
f4a024d5a8 Rewrite in perl. It compares package signatures instead of package names.
This needs a lot of testing, so please test!

Suggestions and ideas from sturm@ and espie@.

ok espie@
2005-10-01 13:17:54 +00:00
sturm
041ba74bae fix cleanup code
noticed by pval@
2005-03-03 21:08:03 +00:00
sturm
b0bb1cbbbb - remove lockfiles when a host dies or dpb is killed (the ports don't do
it in these cases)
- remove an unused variable
- clean up warning messages
2005-01-30 12:37:32 +00:00
sturm
182d8ff4d8 tear down the ssh master session only after killing all node sessions
this solves the problem of ports being marked "built" after the node
building it was lost
2005-01-30 10:07:36 +00:00
espie
8e15a36e97 fix a stupid bug where some expr don't match, use extended expressions
to simplify things.
2005-01-08 00:05:16 +00:00
sturm
6e890a965a in parse_dependency_file() make sure, we really read port specs and
not some gibberish like error messages or so
2004-12-26 07:48:46 +00:00
kurt
1ca9d5c443 make update-patches deal with spaces in paths (ok espie@ sturm@) 2004-12-02 19:50:17 +00:00
sturm
0148b33be9 improved SMP handling
- automatically detect number of cpus per host
- differentiate between hosts and nodes
  => each cpu is its own node
  => ports are build on nodes now
  => multiple host entries are no longer necessary for smp machines
2004-11-14 11:46:15 +00:00
sturm
9dca1f7475 a little cleanup in preparation for improved SMP handling
print() -> warn() where useful
2004-11-14 11:25:53 +00:00
espie
1c062c3c2e allows for updates 2004-11-10 10:15:42 +00:00
espie
e94445485e provide a simple locking command in perl. 2004-11-07 10:09:35 +00:00
sturm
bc39f7be50 new option -c for "clean builds", i.e. remove all installed packages
before building a new one; don't use this when building multiple packages
on one host
2004-10-24 14:16:38 +00:00
espie
e4b643ad88 don't create patches for Oops.rej 2004-09-21 09:27:15 +00:00
sturm
ea2b00d80a $OpenBSD$ 2004-09-20 20:17:33 +00:00
sturm
1f2b8ae4df - use sh on localhost* and don't check_host() on these
=> you have an SMP machine, use localhost0, localhost1, ...
- for remote sessions, use ssh multiplexing, this speeds up a dpb
  restart by about 1/4 - 1/3
- new option '-s', which starts building in cwd
  => use 'dpb -s' instead of 'make package'
  => mostly useful for SMP machines or if you have your cluster powered
     on all the time
- '-b' now forces creation of the dependency file, if it doesn't exist,
  it is created automatically
- check signals on returning ssh sessions to notice which ones really
  succeeded and which ones where killed
2004-09-20 18:57:53 +00:00
sturm
1f1c3ee467 wrong order when redirecting STDOUT/STDERR
ok pval
2004-08-24 20:30:07 +00:00
sturm
0c0f93c97d raise default timeout to 1 minute
requested by pval@
2004-08-23 20:46:42 +00:00
sturm
91eb345927 improve reliability:
- don't invoke intermediate shells on exec(), allowing to actually kill children
- when we are going down, only kill remaining children, not the whole pgrp
- don't use a SIGCHLD handler, but call waitpid explicitly at the right places
- exit(1) in case of an error

others:
- a little cleanup
- new option -t <timeout>

ok pval@
2004-08-23 19:54:11 +00:00
sturm
02a925a3c7 Distributed Package Build is a helper script to permit several hosts
working together in doing a bulk package build.

ok pvalchev@, espie@
2004-08-10 20:54:38 +00:00
espie
413404d080 tag updating-plist case for logging. 2004-08-06 11:31:22 +00:00
sturm
0e1d71c25e gdiff die, die, die
from Jared Yanovich
2004-06-20 19:11:08 +00:00
sturm
e622e85755 be more robust as people might install packages they no longer have
port directories for, e.g. mystuff/foo
2004-05-31 14:39:40 +00:00
xsa
d55ad4e2e1 - add $OpenBSD$ Id string
- minor cosmetics
2004-04-11 17:03:56 +00:00
naddy
8b4d126f44 Script to check for availability of newer upstream releases for perl ports.
From: Sam Smith <S@mSmith.net>
2004-04-11 16:43:48 +00:00
sturm
4a5015409c adapt to new pkg tools without breaking compatibility to old ones
noted by Andreas Kahari, ok espie@
2003-11-05 17:35:45 +00:00
espie
e039496e40 Allows out-of-date to proceed even if some port is broken. 2003-09-28 10:59:42 +00:00
espie
314595c041 nicer out-of-date script, use the embedded subdir information to find
the correct package spec, and ask the corresponding package to show its
information.
2003-08-02 11:17:37 +00:00
espie
cba1263649 synch with new ports tree 2003-08-02 10:53:52 +00:00
jolan
f2d129335f update-patches depends on GNU diff, for now. Error out and say where to
install it from if it doesn't exist on the system.

"looks cool" espie@
2003-07-30 11:10:34 +00:00
espie
6fb2f71ce6 dot is regexp magic 2002-11-28 19:20:37 +00:00
naddy
a653eafeac Protect against meta-characters in library names (e.g. "libestdc++").
Mostly from pvalchev@
2002-10-01 12:16:38 +00:00
nino
d1662486a2 Make sure we're in PATCHDIR when we verify the patches. Otherwise we'll
print out incorrect information if no patches are found in WRKDIST.

Ok espie@
2002-07-24 11:54:21 +00:00
espie
3aada711bb zap fetch progress bar. 2002-05-18 18:37:47 +00:00
espie
cc277cf81d teach portslogger to put patch/configure/build depends with the correct
package.
2002-04-24 21:35:33 +00:00
espie
f801d53cd6 do not consider static libraries if dynamic libraries are around.
This is not the linker's way of working, but this is the way dependencies
must be handled to find about update issues.

naddy@ agrees, nobody else gives a fuck.
2002-03-04 13:39:34 +00:00