summaryrefslogtreecommitdiffstats
path: root/Tools
Commit message (Collapse)AuthorAgeFilesLines
* - New option `-e' - threat warnings as errors;sobomax2002-01-141-8/+19
| | | | - kill unused variable.
* Add license and cvs tag.sobomax2002-01-131-0/+15
|
* Add chkdepschain.py - a tool to address one of the most annoying when it comessobomax2002-01-131-0/+294
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | down to user support flaws in the FreeBSD ports system. The flaw in question is related to the fact that dependencies are often "chained", which allows to simplify maintenance of ports with large number of implied dependencies (a la Evolution, Nautilus, you-name-it). Dependency chaining it's not a problem by itself, but the fact that when building or installing a port the system doesn't check chain integrity - it's only checks that dependencies explicitly specified in port's Makefile are satisfied, which opens wide window for various hard-trackable problems when one or more links in the middle of the chain missed. The idea behind the tool is quite simple - it should be executed right after main dependency checking procedure, two times for each build - check build-time chain before building the port (pre-pre-extract) and check run-time chain before installing the port (pre-pre-install). When executed, the tool checks integrity of the specified chain (build-time, run-time or both) and reports all errors, both fatal (dependency isn't installed) and non-fatal (dependency is installed, but different version). I've wrote this tool mostly to simplify maintenance of the GNOME ports, but it doesn't contain anything GNOME-specific, so that it could be used in the other parts of tree as well. As an example I've added GNOME_VALIDATE_DEPS_CHAIN knob into bsd.gnome.mk (off by default), which enables automatic chain validation for all ports that USE_GNOMELIBS. This is a bit hackish, because I've used pre-extract and pre-install targets - what we probably need is a generic way to plug various custom tasks specified in bsd.xxx.mk (where xxx is kde, gnome, python, etc.) into various parts of the build process (something like {pre,post}-pre-foo, {pre,post}-post-foo springs into my mind). The code is quite raw, so that I would appreciate any bug reports, patches, suggestions, constructive critiquie and so on.
* Ignore patchfiles ending with `.orig' and `.rej'.sobomax2002-01-041-1/+7
|
* - Use `::' as a combination of symbols to replace `/' in patchfile name;sobomax2002-01-031-18/+22
| | | | | - don't reset size of corresponding patchfile to zero if no differencies were found between original and modified file.
* Don't trap SIGINFO.sobomax2001-12-191-2/+2
| | | | Submitted by: ben
* Add checkcats.py - a script that verifyes that master categories in all portssobomax2001-12-112-1/+51
| | | | are correct and reports any problems.
* Make the tool working even if there is a symlink in a given path to a port'ssobomax2001-12-051-1/+28
| | | | | | | | file. For example I'm usually keeping all working directories in /tmp using WRKDIRPREFIX, while for the quick access to a port's files creating a symlink to this directory in skeleton's dir (i.e. ports/foo/bar/src --> /tmp/usr/ports/foo/bar/work/bar-0.0) and with this patch the tool correctly works when I'm specifying `src/foo.c' as an argument.
* Actually use the user's group name, not their username, for the *GRPnbm2001-11-181-1/+1
| | | | | variables passed to the ports system. For example, use 'wheel' instead of 'root' for root.
* Add another check for duplicate installations of same port. Onlyasami2001-10-141-3/+5
| | | | search for logs in toplevel directory. A couple of cosmetic changes.
* Use 'id -un' and 'id -gn' for user and group information, not 'logname'.nbm2001-08-173-7/+80
| | | | | | | Add mkppackage, which will create a "fake"-style package, but not really. It doesn't try fake PREFIX and such to the build (it's not really possible anyway yet), but it uses pkg_create's '-s' option to pretend the package generated was installed in ${PREFIX}.
* Actually fix the breakage introduced in rev 1.2.sobomax2001-07-311-2/+0
|
* Fix breakage introduced in previous commit.sobomax2001-07-311-1/+1
|
* Fix a bug that in some rare cases may lead to a patch not being properlysobomax2001-07-311-0/+2
| | | | generated.
* Trap signal 31 as well (typo).sobomax2001-07-301-2/+2
| | | | Submitted by: "Alexey V. Neyman" <alex.neyman@auriga.ru>
* Unbroke when /usr/ports is symlink.sobomax2001-07-301-2/+2
| | | | Submitted by: ben
* Fix problems in previous commit:sobomax2001-05-171-5/+5
| | | | | - We don't really want to catch SIGCHLD; - actually enable new `-f' option.
* - Add an option to disable interactive confirmation;sobomax2001-05-171-1/+18
| | | | | | - catch up possible signals to remove temporary files. Submitted by: dirk, sobomax
* Stopgap bugfix to avoid the case where a user invokes -t and ends up withwill2001-05-011-3/+4
| | | | | | | | | | | a work/ dir in the repository placed there by addport without permission. Also restore the rcsids from the predecessors of this script by removing their $'s. If I had more time, I'd just revamp parts of this script. Submitted by: greid Apologies to: greid && cvs@
* Be more specific in trying to exclude man pages - look for 'man/man',nbm2001-04-021-1/+1
| | | | not just 'man'. This makes the 'manage_*' from Zope work.
* Steal the 'hmake' variable building from mkpinstall. This wasn'tnbm2001-04-021-4/+6
| | | | properly fixing the username in the *OWN variables passed to make(1).
* Add patchtool - a tool to automate generation/updating of patchfiles. Thissobomax2001-03-192-0/+775
| | | | | | tool has something in common with update-patches shell script, but has more features and is more intelligent. See README.patchtool or source code for details.
* Look into arch-specific distinfo's as well.sobomax2001-03-191-2/+2
| | | | Prompted by: Vadim Ostranitsyn <vadim@alpha.tsu.ru>
* Make plist work again with new-found use of line continuation ingreen2001-03-131-9/+16
| | | | mtree files.
* Uncomment and update OSREL and OSVERSION in preparation for 4.3R.asami2001-03-123-6/+6
|
* Tweak to catch missing directories from the Makefiles in the varioussteve2001-03-081-1/+5
| | | | | | categories which were failing to be mapped from directory to port name because 'make index' can't know to run 'make describe' in directories it doesn't know exist.
* mkbindist is in scripts/ now, with ${branch}/mkbindist.conf specifyingasami2001-02-284-100/+12
| | | | necessary per-branch options.
* Do not hardcode /tmp as a temp directory base, try $TMPDIR, $TMP androam2001-02-222-4/+41
| | | | | | | the system temp dir as given by paths.h (paths.ph) in this order. Approved by: nbm Perl-fu by: des, Tony Finch <dot@dotat.at>
* (1) Update values of OSREL/OSVERSION to match reality.asami2001-02-213-15/+15
| | | | | | | | | (2) (portbuild) Change no-output timeout from 1800 to 3600. Some ports seem to actually take more than 30 minutes inside a command. (3) (portbuild) Add -p flag to tar when extracting bindist. (4) (makeindex) Remove the -j flag to make index, the argument was 1 anyway.
* Some minor additions so that we act a bit more like NetBSD's url2pkg; wenbm2001-02-021-1/+7
| | | | | | | now autogenerate MASTER_SITES if we're given an URL. Also check the PKGMAINTAINER environment variable. Submitted by: Tomasz Luchowski <zuntum@eik.pl>
* A few new features:asami2001-01-211-14/+22
| | | | | | | | | | | | | | | | | | | | (1) The script now assumes make(1) knows how to handle long dependency chains properly. quickports is a list of ports that take a long time to build by thesmelves (not ports that have long dependency chains). The script adds several extra dependency levels to the generate Makefile for those ports to make their dependency chains longer. (2) Use -R flag to cvs. Comment out the cvsup part. (3) Preserve error messages for ports that didn't build the first time around but did build on the retry. (4) Record the package's timestamps in the log directory by doing an "ls -asFlrt" in the packages/All directory. (5) Add a little sleep after two background jobs so outputs won't be garbled.
* Fix off-by-one error that was causing an infinite loop in some verywill2001-01-161-1/+1
| | | | | | | weird cases. AAARGGH!!! Discovered by: will, sobomax, alex Fix by: Dima Dorfman <dima@unixfreak.org>
* Use the -p option with diff. Add a FreeBSD tag. Don't try totrevor2001-01-121-24/+7
| | | | | | | | | guess WRKSRC or PATCHDIR. Don't munge "." characters in filenames. This requires support in bsd.port.mk, a patch for which is in PR 24292. Submitted by: Christian Weisgerber <naddy@mips.inka.de>
* Fix two bugs: pass $passenv to make *always*; remember that the initialwill2001-01-071-3/+3
| | | | | | join() in the autofill algorithm doesn't need a space. Bugged by: alex
* Make plist (the Ruby script) a tad more useful: build in mtree supportgreen2001-01-061-26/+54
| | | | | | which holds final veto power over what @dirrm lines go into the plist. This is a bit less evil than all the regexps previously used to manually remove those directories.
* As a quick fix, use /tmp instead of the currently hardcoded /usr/tmp.nbm2001-01-032-2/+2
|
* Add (a currently very bare) mkpbuild, and (the more useful) mkpinstall.nbm2001-01-022-0/+136
| | | | | | | | | | | | | | | | | | mkpbuild just builds a port with WRKDIRPREFIX and PREFIX set to a directory in /tmp, and with the owner and group variables set to the user. A placeholder - in future, it'll have build error/log parsing. mkpinstall's claim to fame is to do the same, except with "make install" instead of "make build", and it then parses the mtree file, and compares that and the current directory tree and the files, and auto-generates a plist. They're not pretty, but they finish the mkptools set basic functionality: automatic skeleton generation with mkpskel, on-extraction requirements guessing, and plist generation. Future direction might be parsing build and install failures, checking for '/usr/local' abuse, more requirements guessing, and stuff like that.
* Fix breakage when someone uses -t option: pass DISTDIR environment variablewill2001-01-011-7/+9
| | | | | | | | | | | to the extra testing's make procs. Fix _stupid_ mistake where -n option had no effect on hindering ``cvs add'' and CVSROOT/modules updating. Cosmetics; remove extra space in generated commit log message and fix the usage section's style in regards to options that take arguments. Add missing -g option's mention. Submitted by: assar (DISTDIR, CVSROOT/modules updating routine bugs)
* Several changes. First, depend on another environment variable ratherwill2001-01-011-12/+14
| | | | | | | | than CVSROOT (now ADDPCVSROOT) to avoid conflicts for people who normally set CVSROOT to something besides freefall (like myself). Second, allow autofill to work for non-PR additions by checking for a -l argument of -1. Third, remove the bogus $portname check in autofill that screws up if you are adding something with a PKGNAMEPREFIX (i.e. p5-).
* Here's my holiday present to the ports team: new -l option allows you towill2000-12-311-19/+95
| | | | | | | | | | | | let portlint fill out your commit log message. It takes data from your port's Makefile and pkg-comment to generate this, then displays the resulting file and gives a chance to fix any problems. Also, change -c option to move the file to the temp directory. Since -c and -l option conflict, -l will take precedence. Move -c option down to where directories are parsed. Reviewed by: Jeremy Shaffner <jeremy@external.org>
* Add new option: -c file : Pass a file containing the log message for thewill2000-12-301-3/+23
| | | | | | | new port. Slight hack used to obtain absolute path for the file. I'll probably change that to make it copy the file to the tmpdir instead. For now, this provides a stepping stone to use to begin automating commit log messages - with, of course, a chance to edit the file again.
* Add -g option to disable committing to CVSROOT/modules, useful if someonewill2000-12-191-2/+5
| | | | | | | | is going to commit a large number of ports and doesn't want to bloat the repo any more than necessary. Later on I'll add support to modulesupdate to do multiple modules at the same time. I should check that script in CVS, but nobody's repocopied non-ports-specific tools to src yet to my knowledge so I can't do that.
* master is back to bento.asami2000-12-181-1/+2
| | | | | Add definition of scratchdir=/x/tmp for scratch directory to use when temporarily creating load files.
* Combine the scripts for building the bundist tarballs. The per-branchasami2000-12-181-0/+70
| | | | specifics are in mkbindist.conf under ${portbuilddir}/${branch}.
* Functional modification: Make -n only apply to cvs commit, NOT *all*will2000-12-081-3/+3
| | | | | | | cvs ops. Many committers found it difficult to debug while using addport with the -n argument. I'm inclined to agree with the sentiment. Submitted by: sada, deischen, others
* Use YYYYMMDDHH for log files so we can have two builds on the sameasami2000-11-071-1/+8
| | | | day. Remove lock file if package build aborts.
* (1) New flag, -ftp, indicates packages are to be copied over to theasami2000-11-071-17/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ftp site (specified in portbuild.conf). (It used to be implied by -norestr.) (2) Remove x11-toolkits/Motif-dummy from list of dummy ports, since open-motif is now the default. Also gone is the MOTIF_OPEN variable. (3) Run the tar -czf of the ports tree and generation of CHECKSUM.MD5 in the background. (4) Print the amount of time it took for the entire process, as well as phase 1 and phase 2 of the compilations. (It is done by date -r, so it will only work modulo 24 hours. Hopefully the build will never go over 24 hours again.) (5) Make symlink of the form [ae].${branch}.YYYYMMDD -> [ae].${branch}.YYYYMMDDHH so we can have the simple "date" form as well as the new "date+hour" directories for logs. (6) Remove temporary make status files from /tmp that are over 60 minutes since the last modification. It was filling up the root filesystem. (7) Print out an "ls -lrt" of packages/All into logs/ls-lrt. This is going to be used to evaluate make's job dispatch policies.
* Add standard 2-clause BSD license to protect my (and mharo's) copyright.will2000-11-041-0/+24
|
* s|pkg/PLIST|pkg-plist|gsobomax2000-10-211-3/+3
|
* Add update-patches, a script to generate updated versions of thetrevor2000-10-192-1/+139
| | | | | | patches in a port. Obtained from: OpenBSD
OpenPOWER on IntegriCloud