Commit Graph

294 Commits

Author SHA1 Message Date
Jürgen Buchmüller d8eca52226 00-distfiles.sh: add code to purge wrong checksum
If a distfile changed its checksum (SHA256) without at the same time
also changing its version, the distfile cache needs to be purged.

This is done by verifying only for already existing distfiles that the
specified checksum matches. If it does not, the file and its entry in
/host/sourcers/by_sha256 are purged using the inode number of the file.

The second loop then as usual fetches the distfiles and verifies their
checksum against the list entry.

+ drbd-utils fix checksum and also build + cross build
2015-11-03 19:27:07 +01:00
Juan RP 3e1154266f xbps-src: support "alternatives" from xbps-0.48. 2015-10-30 12:39:59 +01:00
Juan RP bd165ccdf6 wrappers: rename cc to cross-cc to clarify it's used only in cross mode. 2015-10-25 11:03:16 +01:00
Alessio Sergi 55768ad59d xbps-src: distfiles: allow uncompressed distfiles
Do not extract them, just copy to $extractdir.
The allowed suffixes are: .patch, .diff, .txt.
2015-10-23 20:09:31 +02:00
Juan RP b7d05057f9 xbps-src: create a cc/g++ wrapper to drop -I/usr/include -L/usr/lib in cross.
I'm tired of wasting extra time to fix software to remove standard include/lib dirs.
2015-10-23 11:56:30 +02:00
Enno Boland 66cdb281f1 hooks/pre-configure: don't overwrite PKG_CONFIG_* vars in the wrapper.
This may have side effects do other packages but it was needed to fix
gnome-online-accounts for cross build. goa ships a subproject that uses
this vars to link against it. This commit changes the pkg-config that it
preserves values in PKG_CONFIG_* if set.
2015-10-13 15:01:32 +02:00
Christian Neukirchen e3f0ce021e pre-pkg/06-shlib-provides.sh: revamp soname registration.
We now register all versioned sonames, and unversioned sonames only
when in libdir.  (E.g. libdb and tcl use version numbers in the
library name, and have unversioned sonames.)

Closes #2699.
2015-10-06 20:17:28 +02:00
Christian Neukirchen 085f6452ad pre-pkg/06-shlib-provides.sh: shlib-provide all versioned libraries
Previously we provided all libraries in /usr/lib{,32}.
Now we provide all libraries with a versioned SONAME anywhere.
2015-10-05 14:46:32 +02:00
Juan RP bcdacb66a0 xbps-src: replace basename(1) with ${var##*/}.
Reduce number of fork+exec due to using a subshell to execute basename(1).
2015-09-11 07:55:40 +02:00
Juan RP 955d7ce232 hooks/do-pkg/gen-pkg: don't set unnecessary args to xbps-create(1). 2015-09-10 20:07:13 +02:00
Jürgen Buchmüller 00c18e3e88 distfiles mirror: try $curfile first (renamed) 2015-09-04 17:13:31 +02:00
Juan RP 983d68a31e xbps-src: support multiple pkg compression formats via etc/conf.
XBPS_PKG_COMPTYPE can be set via etc/conf to set your preferred compression
format; defaults to xz, like xbps-create(1).

The "none" setting is only available since 0.48 (unreleased).
2015-09-03 12:44:08 +02:00
Jürgen Buchmüller 793a156a0f Implement XBPS_DISTFILES_MIRROR (second try)
The idea is to remove some burden from the original download
locations for distfiles by specifying one or more mirror locations.

+ Works with http:// or ftp:// mirrors for all $XBPS_CHROOT_CMD variants
+ Works with file:// mirrors together with uchroot and proot
2015-08-31 15:48:22 +02:00
Enno Boland a22b793e90 common/hooks: show msg for patching before applying the patch.
failing patches can easier be identified that way.
2015-08-02 10:54:59 +02:00
beefcurtains 3c424a73f6 xbps-src: quote $wrksrc
Allows spaces in the directory name
2015-07-29 11:11:04 +00:00
Juan RP e03593db73 xbps-src: remove vestiges of the systemd-services hook. 2015-07-11 11:30:09 +02:00
jbu d6fb3784dd 00-distfiles: fix hard link existence test 2015-07-06 21:34:52 +02:00
jbu b30cbd9870 xbps-src: implement a by_sha256 hash cache 2015-07-04 11:18:46 +02:00
Christian Neukirchen eaa6ab4b81 pre-configure/02-script-wrapper.sh: use generic_wrapper2 for nspr-config. 2015-06-24 14:08:56 +02:00
Andrea Brancaleoni 972a87ba9f hooks/post-install/04-create-xbps-metadata-scripts.sh: add binfmts trigger support 2015-06-22 13:49:11 +02:00
Christian Neukirchen 93853b06e5 pre-configure/02-script-wrapper.sh: taglib-config needs generic_wrapper2. 2015-06-10 13:51:38 +02:00
Juan RP 7fec5d6aac hooks/script-wrapper: fix generic_wrapper3: just replace prefix/libdir. 2015-06-08 08:01:59 +02:00
beefcurtains af3eea3a2c network-ups-tools: enable snmp module 2015-06-04 05:27:14 +00:00
Juan RP 2fad5b3d5d xbps-src/hooks/pkglint: error out if DESTDIR/usr/sbin exists. 2015-06-03 14:13:31 +02:00
Juan RP 35bef58c7b hooks/strip: do not strip files at /usr/lib/debug. 2015-05-23 09:52:19 +02:00
Juan RP 58749959da xbps-src: create a nspr-config wrapper to unbreak mozjs24 cross and others. 2015-05-20 07:30:52 +02:00
Juan RP 1e340ceb79 hooks: activate override-config by default. 2015-05-18 09:33:39 +02:00
Juan RP ee7d319c73 hooks/musl-override-config: activate this for musl targets. 2015-05-12 22:58:24 +02:00
Juan RP 0ca0c67819 hooks/pre-configure: one hook to override config.{sub.guess} for musl is enough. 2015-05-12 22:53:33 +02:00
Juan RP a56b465f1e hooks/xbps-metadata: only add systemd-service trigger if the buildopt is set. 2015-04-30 11:15:02 +02:00
Juan RP cd8a29cb62 hooks/strip: make sure to use strip(1) and not our wrapper. 2015-04-28 09:47:39 +02:00
jbu 87a5f1ecba xbps-src: Use @Gottox way to read path names 2015-04-27 14:15:18 +02:00
jbu 5b066f3564 xbps-src: fix handling of path names containing spaces 2015-04-27 10:22:18 +02:00
Juan RP f4019408ca hooks/remote-empty-dirs: switch back to my version that really works.
I'm not sure how the guy that submitted the PR tested it, but IT
DOES NOT WORK AS HE EXPECTED.
2015-04-26 09:46:02 +02:00
jbu ffefcc41a5 xbps-src: Don't print rmdir output 2015-04-25 13:30:11 +02:00
jbu 3a665efea1 xbps-src: Fix read loop for empty dirs; closes #1409 2015-04-25 13:26:18 +02:00
Juan RP 0be33d385a xbps-src: move wrappers to common/wrappers. 2015-04-21 10:48:30 +02:00
Juan RP 62a643d5c7 xbps-src: create a dummy ldconfig wrapper.
This fixes build/installation of some pkgs that exec ldconfig gratuitously
(ntfs-3g fails with musl due to this).
2015-04-21 10:29:58 +02:00
Juan RP 1f2eb30af2 hooks/script-wrapper: add pcre-config wrapper. 2015-04-13 14:14:23 +02:00
Juan RP 2080de1414 hooks/pkglint: check that all files in conf_files really exist. 2015-04-05 18:41:01 +02:00
Christian Neukirchen 964c0e2b4e hooks/pre-configure/install-wrapper: also drop -o/-g, they break in xbps-uunshare environments. 2015-04-04 19:50:40 +02:00
Juan RP 2164eddc33 hooks/create-metadata-scripts: fix INSTALL.msg for subpkgs.
The file should be renamed to <destdir>/INSTALL.msg not something else.

Close #1248
2015-04-01 15:08:28 +02:00
Christian Neukirchen e02a68f524 hooks/pre-configure/02-script-wrapper.sh: add wrapper for install(1) to prevent stripping. 2015-04-01 14:11:20 +02:00
Christian Neukirchen 8f1abb9242 hooks/pre-configure/01-aarch64-override-config.sh: new hook. 2015-03-30 18:33:43 +02:00
Juan RP 64bbc33ca2 hooks/script-wrapper: create libetpan-config wrapper. 2015-03-30 08:33:00 +02:00
Juan RP 607d2aee5b hooks/shlib-provides: only process .so* files. 2015-03-26 04:13:03 +01:00
Juan RP b181f41497 hooks/script-wrapper: fix mysql_config and others. 2015-03-11 12:14:00 +01:00
Christian Neukirchen 3f43576971 06-strip-and-debug-pkgs.sh: detect PIE binaries. 2015-03-07 20:59:51 +01:00
Juan RP a786acf4d2 hooks/distfiles: do not respect perms/owner when extracting via tar.
With user namespaces and uid/gid == 0, tar will try to respect them
and will fail with EINVAL.
2015-03-05 20:27:28 +01:00
Juan RP 7f5496db7f hooks/script-wrapper: fix ncurses5{,w}-config wrappers for alsa-utils. 2015-02-27 10:10:16 +01:00
Juan RP 336612fc24 hooks/script-wrapper: fix generic_wrapper2 --cflags. 2015-02-24 10:00:33 +01:00
Juan RP 7339b81b43 xbps-triggers: system-accounts: introduce <account>_pgroup to set primary group.
While here also change default home directory to /dev/null if unset.
2015-02-23 22:09:20 +01:00
Juan RP 8bf5cb819a hooks/remove-la: remove all *.la even if those are symlinks. 2015-02-23 11:33:43 +01:00
Juan RP cb90b79acc hooks/script-wrapper: create a xapian-config wrapper. 2015-02-22 08:39:09 +01:00
Juan RP a44cd245bc hooks/create-xbps-scripts: print what triggers are being added. 2015-02-21 13:03:51 +01:00
Juan RP fa512a5109 hooks/script-wrapper: use generic_wrapper3 for libpng-config.
Fixes dillo cross compilation.
2015-02-11 15:11:15 +01:00
Juan RP 964bf772ba hooks/register-pkg: register 32bit pkgs in cross mode too.
You can now build 32bit pkgs in cross compilation mode (-a i686).
2015-02-08 18:13:24 +01:00
Juan RP ef9056ec30 hooks: move pkglint to the pre-pkg phase to make this work again. 2015-02-08 11:21:47 +01:00
Juan RP 84b56a438f hooks/shlib-provides: fix inverted condition. 2015-02-07 10:04:03 +01:00
Juan RP 75cbc878a9 hooks/shlib-provides: if pkg sets shlib_provides do not skip it. 2015-02-07 09:53:21 +01:00
Juan RP 5725a2e0ae xbps-src: introduce "noshlibprovides" to skip shlib-provides detection. 2015-02-05 11:37:10 +01:00
Juan RP 5c95087605 hooks/gen-pkg: do not autogenerate dbg pkg if this exists already.
This will be required by an upcoming change to linuxX.X by @chneukirchen
to build a -dbg pkg; and we cannot generate it automatically for now.

This avoids a double pkg creation noticed by @chneukirchen.
2015-02-05 11:30:32 +01:00
Juan RP 56e4c861bd hooks/create-xbps-metadata-scripts: fix mktemp assignation.
When set -o ERR is set the exit case wasn't executed. From the bash
manual page:

"The ERR trap is not executed if the
failed command is part of the command list immediately following
a while or until keyword, part of the test in an if statement,
part of a command executed in a && or || list except the command
following the final && or ||, any command in a pipeline but the
last, or if the command's return value is being inverted using
!.  These are the same conditions obeyed by the errexit (-e)
option."
2015-02-01 09:09:38 +01:00
Juan RP 6c395cb76e xbps-src: create a new hook that collects shlib-provides.
This is necessary to be able to collect shlib-provides for 32bit pkgs,
which are autogenerated.

The strip-and-debug-pkgs hook now just does what its name mentions:
 strip binaries and create -dbg pkgs.
2015-01-30 12:20:00 +01:00
Juan RP d104a99fa0 hooks/prepare-32bit: introduce lib32symlinks.
- This creates a symlink of a file stored in usr/lib32 to usr/lib.
- This expects basename of files stored in usr/lib32.
- This is required by an upcoming change to the glibc pkg.
2015-01-28 16:29:45 +01:00
Juan RP 38c9ebf6df hooks/prepare-32bit: do not create 32bit pkgs for perl/python/ruby modules. 2015-01-19 10:49:56 +01:00
Juan RP c111653c6b hooks/script-wrapper: create libassuan-config wrapper. 2015-01-18 17:05:08 +01:00
Juan RP 8be6b7b103 hooks/script-wrapper: revert 0e42bf442e.
it's unnecessary and breaks cross compilation of gnome-ssh-askpass.
2015-01-14 14:28:19 +01:00
Juan RP aed0f3ee0e xbps-src: fix hooks that are expected to be used in subpkgs. 2015-01-14 14:23:10 +01:00
Juan RP 0e42bf442e hooks/script-wrapper: multiple run protection. 2015-01-14 11:31:52 +01:00
Juan RP 3735ead3dc hooks/prepare-32bit: subst /usr/lib to /usr/lib32 in lib32files. 2015-01-13 15:51:01 +01:00
Juan RP 86df9de56b hooks/script-wrapper: create a fox-config wrapper. 2015-01-12 09:18:53 +01:00
Juan RP c29cfb8eac hooks/musl-override: also override config.sub if build_style is unset. 2014-12-28 09:09:31 +01:00
Juan RP fc052bad5b hooks: remove common/hooks/post-install/04-create-xbps-vpkg-files.sh.
It's unnecessary with xbps>=0.42.
2014-12-22 11:19:52 +01:00
Juan RP 10454449cd hooks/script-wrapper: fix python-wrapper and update PATH. 2014-12-19 11:01:15 +01:00
Juan RP 9b3c55b8a3 hooks/script-wrapper: use XBPS_WRAPPERDIR. 2014-12-19 10:54:48 +01:00
Christian Neukirchen 09c1d7d1da do-extract/00-distfiles.sh: unzip -o to overwrite without asking. 2014-12-12 10:32:12 +01:00
Juan RP 6e13dcbaff xbps-src: introduce XBPS_STATEDIR to store state files, logs and others.
XBPS_STATEDIR is created in XBPS_BUILDDIR/.xbps-${sourcepkg}-${version}
and contains logs and state files for all phases, as well as wrappers.

We can now inspect the output from all hooks.
2014-12-11 11:02:22 +01:00
Juan RP cc6b3134b8 hooks/pkglint: use xbps-query -Rs to check for shlib-requires in repos. 2014-12-10 09:32:28 +01:00
Juan RP 3540a97b45 hooks/script-wrapper: create proper x{ml2,slt}-config cross wrappers. 2014-11-19 07:31:30 +01:00
Juan RP e8358f26b1 hooks/script-wrapper: also create a ncursesw5-config cross wrapper. 2014-11-16 19:59:50 +01:00
Juan RP 8ade12549f xbps-src: rename disable_debug to nodebug, to follow our naming convention. 2014-11-16 11:52:36 +01:00
Juan RP c85d5db336 hooks/script-wrapper: create a fltk-config cross wrapper. 2014-11-16 08:48:38 +01:00
Alessio Sergi d0b4ad9dfa hooks/post-install/remove-python-bytecode-files: quote arguments properly
This fixes the error 'find: paths must precede expression'.
2014-11-15 16:05:06 +01:00
Juan RP 8d033f5724 xbps-src: new hook to remove misc files (used for musl currently). 2014-11-10 12:16:31 +01:00
Juan RP 457fd7aefb xbps-src: respect XBPS_DEBUG_PKGS for bootstrap pkgs too. 2014-11-05 17:29:58 +01:00
Enno Boland 59cc3e0d45 replace nonfree=yes with repository=nonfree.
This way it is possible to set up package specific repositories for
i.e. specific devices.
2014-11-05 14:15:25 +01:00
Juan RP 568c2a032b hooks: strip: move to post-install to generate shlib-provides for all pkgs.
That was the missing piece to generate proper dependencies in 32bit
packages with subpkgs that depended in other subpkgs.

For example kmod: libkmod and libkmod-devel. libkmod-devel was being processed
before libkmod, and due to missing shlib-provides a dependency to the 64bit
package was generated.
2014-10-28 09:06:16 +01:00
Juan RP 033c4ed0f5 xbps-src: remove WIP repo delta support.
- it never worked correctly
- it's WIP and looks like it will be stalled forever
- won't be necessary anymore with xbps-0.42
2014-10-14 19:19:07 +02:00
Juan RP 1cee26a59f xbps-src: hooks: reorganize some hooks.
The strip-and-debug-pkgs/generate-runtime-deps hooks have been moved
to the pre-pkg stage, and are run before prepare-32bit; this way dependencies
are collected correctly in all cases.
2014-10-14 19:19:07 +02:00
Juan RP def9cee898 hooks/script-wrapper: create libmikmod-config wrapper. 2014-10-12 09:16:02 +02:00
Juan RP 86ba1ea9c5 hooks/strip: before stripping make sure files have write bit set.
... otherwise strip(1) errors out. Perl installs shlibs without write
bit set and results in EPERM errors.

Perl could be fixed instead, but meanwhile this works.
2014-10-12 08:56:32 +02:00
Juan RP dbfb3a2b81 hooks/strip-and-debug: do not override file perms.
... otherwise additional perms are lost, always resulting in non setuid bins.
2014-10-12 07:23:06 +02:00
Juan RP b2976da1c8 xbps-src: use "disable_debug" to disable -dbg subpkg creation. 2014-10-11 09:57:27 +02:00
Enno Boland 5395d9b0a2 common/hooks: add reverts field to packages 2014-09-30 00:03:33 +02:00
Juan RP c48d5ce913 hooks/script-wrapper: fix generated cups-config wrapper.
This was changing cups_serverbin to the cross toolchain sysroot
and caused cups-filters to install bins to this path.
2014-09-28 07:47:14 +02:00
Juan RP c920736289 xbps-src: hooks/strip: ignore debug files; set proper perms to files. 2014-09-27 07:19:42 +02:00
Juan RP 6ab69ef143 xbps-src: hooks/script-wrapper: create a pkg-config symlink to the real wrapper.
...otherwise the envvars for cross compilation won't be set and
lots of packages are broken.
2014-09-27 04:57:20 +02:00
Juan RP 0a1ee2966a xbps-src: hooks/script-wrapper: generate the wrappers just once. 2014-09-27 03:58:09 +02:00
Juan RP 535117078c xbps-src: create a <cross-target>-pkg-config wrapper when cross compiling.
This wrapper sets the env vars required for proper cross compiling, rather
than always setting them.
2014-09-25 14:38:16 +02:00