Commit Graph

369 Commits

Author SHA1 Message Date
maxice8 9251941c99 hooks/pre-pkg: prohibit /usr/doc, mention /usr/share/doc 2018-12-20 16:33:35 -02:00
maxice8 3f5059ae50
hooks/post-install: fix find for executable files, use GNU -executable 2018-12-13 10:14:44 -02:00
maxice8 80c5550ce4
hooks/post-install: fix message and indentation on pkglint-devel-paths. 2018-12-12 23:08:56 -02:00
maxice8 de31bf8d1f hooks/post-install: Add hook to warn when paths for -devel packages
should be added.

This hooks checks installed files of all packages that do not end
in -devel and warn when certain paths are found that should be in
the -devel package like:

- /usr/include
- /usr/lib/*.so
- /usr/lib/*.a
- /usr/[lib|share]/[pkg-config|cmake]
- /usr/share/vala
- /usr/share/gir-1.0
2018-12-12 23:07:05 -02:00
maxice8 7bd2eaea34 hooks/pre-pkg: deal with packages that install to /etc but should use
/usr/lib

some packages install stuff to places like /etc/udev/rules.d and
/etc/modprobe.d.

That is wrong, they should use their equivalents in /usr/lib.
2018-12-10 20:16:25 -02:00
maxice8 d1a14f90be hooks/pre-pkg: deal with packages using /etc/bash_completion.d
Detect when it is used and suggest
/usr/share/bash-completion/completions instead.
2018-12-07 12:30:20 +01:00
Cameron Nemo 61065bcb1f hooks/pre-pkg: safely pass arguments to printf 2018-11-18 20:30:04 +01:00
Rasmus Thomsen a8f008f21c hook/do-extract: support extracting .crate files 2018-11-02 08:59:03 -03:00
maxice8 c6c249348d hooks/do-extract: support extracting .gem files with gem unpack. 2018-10-27 09:25:31 -03:00
Toyam Cox 1edc8846ca xbps-src: Migrate from build_style for 32bit pkgs
This allows dxpb to have a simpler test for whether or not a 32bit
package will be built.
2018-10-04 10:28:27 +02:00
Helmut Pozimski ee4e6ad061 02-script-wrapper.sh: add wx-config-gtk3 for the generic_wrapper 2018-09-10 14:43:09 +02:00
Enno Boland 50e86ef640 common/libexec/build.sh: register all packages at once to prevent inconistent staging 2018-09-07 11:19:55 +02:00
maxice8 59b5fdf36f
04-create-xbps-metadata-scripts.sh: automatically add triggers for
appstream-cache

[ci skip]
2018-08-27 18:26:11 -03:00
maxice8 88f96346d4
hooks/post-install/04-create-xbps-medata-scripts.sh: automatically
handle gtk-pixbuf-loaders
2018-08-23 17:16:47 -03:00
newbluemoon 05fb5e4ad7 common/hooks/pre-configure: fix python3 wrapper [skip ci] (#1005) 2018-08-21 19:33:52 +02:00
maxice8 5c28f42b50
04-create-xbps-medatada-scripts.sh: fix indentation. 2018-08-20 22:25:11 -03:00
Michael Gehring 7186589618 common/hooks/pre-pkg/04-generate-runtime-deps.sh: remove unused variable 2018-08-20 12:03:31 -03:00
maxice8 2a37c4734c
hooks/post-install/04-create-xbps-medata-scripts.sh: automatically
handle gtk{,3}-immodules
2018-08-19 06:01:47 -03:00
Alessio Sergi 0c06da09e4 Revert "common/hooks: add hook to check python dependencies"
This reverts commit 3b1f5272b9.
2018-06-05 16:17:27 +02:00
Enno Boland 3b1f5272b9 common/hooks: add hook to check python dependencies 2018-06-05 09:22:30 +02:00
Duncaen 94ed33657b Revert "common/: add support for changelog field."
This reverts commit 8599efd9fd.
2018-05-04 16:46:46 +02:00
maxice8 8599efd9fd common/: add support for changelog field.
This commits allows ./xbps-src show to show the changelog field and for
changelog to be included with the -c/--changelog option via xbps-create.

Closes: #14102 [via git-merge-pr]
2018-05-03 22:58:27 -04:00
Enno Boland 3d8549991b
common/hooks: fix support for application/x-pie-executable 2018-04-16 21:37:48 +02:00
Leah Neukirchen d30a239d41 common/hooks: support application/x-pie-executable (from file 5.33). 2018-04-16 14:37:49 +02:00
Jürgen Buchmüller f274d7728c
04-generate-runtime-deps.sh: introduce skiprdeps
Yet another variable to permit skipping of runtime dependency checks
for a list of files, specifying their absolute path in the $DESTDIR,
allows us to handle known bad detections due to e.g. binaries or
shared libraries not meant to be run or loaded in the host.

This will be used to fix the android-studio template to skip
a number of files which would create a bogus dependency on libc.so.

Signed-off-by: Jürgen Buchmüller <pullmoll@t-online.de>
2018-04-10 17:54:13 +02:00
Michael Gehring b9e321456b xbps-src: make -dbg packages depend on the pkgver they are generated from
Closes: #12161 [via git-merge-pr]
2018-03-05 19:50:05 -08:00
Jürgen Buchmüller c1fd6c389e hooks/do-fetch/00-distfiles.sh: contents checksum
Add support for contents checksums. This is meant to be used for tarballs
like the ones coming from https://*.googlesource.com/ which on every download
change their outer checksum due to being packaged with different date/time
stamps or similar.

If such a distfile still contains the same files as the author of a template
found, then the checksum of its contents can be specified by prepending a
commercial at (@) to the corresponding checksum="..." line.

Depending on the format of the distfile its entire contents will then be
piped into sha256sum and the resulting digest is verified against what
follows after the @.
2018-03-02 23:28:36 +01:00
Jürgen Buchmüller 7c53259f00 create-xbps-metadata-scripts: indent with tabs 2018-01-15 14:32:42 +01:00
James Barnett 90b5c612ae Add hook and trigger to handle hwdb.d files
Adds a hook to check if /usr/lib/udev/hwdb.d is being modified. If so,
triggers 'udevadm hwdb --root=. --update'.

Closes: #9858 [via git-merge-pr]
2018-01-15 14:31:12 +01:00
newbluemoon e8842e10d7 wxWidgets: fix cross compilation
xbps-src: add wx-config to 02-script-wrapper.sh
2017-12-16 01:48:46 +01:00
Andrea Brancaleoni cb72dfc4cd wine: nopie_files 2017-11-29 19:28:02 +01:00
Enno Boland c72e969742 add hook-directories for check phase 2017-11-18 14:32:37 +01:00
Michael Gehring 85b7e8335a hooks/post-extract/00-patches.sh: ignore files without patch/diff suffix 2017-09-26 11:02:37 +00:00
Enno Boland 571e42ffce 03-rewrite-python-shebang.sh: don't rewrite versioned python scripts (#6155)
fixes #6151.
2017-04-17 08:49:06 +02:00
Alessio Sergi 29c37543cf xbps-src: introduce python_version 2016-11-17 17:42:54 +01:00
Alessio Sergi 8cb79d7a30 python-setuptools: update to 28.8.0 2016-11-10 10:06:26 +01:00
Alessio Sergi d77d6cde40 xbps-src: limit the search to the /usr/lib/pythonX.Y directory 2016-10-27 15:22:54 +02:00
Alessio Sergi b6bc28251b hooks/rewrite-python-shebang: s/pycompile_version/pyver/ 2016-10-24 10:18:49 +02:00
Alessio Sergi 5a231f8c13 hooks/rewrite-python-shebang: bin-only scripts support 2016-10-24 08:09:54 +02:00
Alessio Sergi 4e6576e7a4 xbps-src: add support for python3 pkgs
- python_module build style now builds modules for python2/3 by default
- new python2_module and python3_module build styles for building
  python2-only and python3-only packages respectively
- no more python_versions
- no need to define pycompile_version for Python modules anymore
  (still needed for non-Python modules though)
- Python version and paths are now guessed automatically and a set of
  useful variables can now be used in templates
- #!/usr/bin/python2 and #!/usr/bin/python3 are now the default shebangs
- /usr/bin/foo2 and /usr/bin/foo3 are now the default names for bin
  scripts (for use with alternatives)
2016-10-16 16:59:31 +02:00
Jürgen Buchmüller 9fbeba39f1 compiler wrapper: add ccache or distcc prefix (#4575)
Closes #4574
2016-08-08 08:37:06 +02:00
Christian Neukirchen fb830a2a37 hooks/post-install/06-strip-and-debug-pkgs.sh: bail out on non-PIE binaries in PIE builds.
Not tested extensively, in doubt needs twerking.
2016-05-17 14:58:33 +02:00
Enno Boland 3db4efd013 hooks/pre-configure: do not set configure_script outside of build_style.
fixes #4201.
2016-05-16 20:38:09 +02:00
Juan RP d2bac19750 xbps-src: re-introduce etc/virtual.
The `etc/virtual` file declares the default package to be built for
virtual dependencies declared as "virtual?foo" in $depends.

Before this change, the run-time dependency was added as is to the final
binary package but no pkg providing this virtual pkg was built.

With this file we declare the *default* pkg to be built.

NOTE: "virtual?foo" is only applicable to *run* time dependencies, i.e
only those declared in $depends.
2016-04-27 20:16:59 +02:00
Juan RP 054a73caf2 hooks/rewrite-python-shebang: simplify and check for unset $off correctly. 2016-04-17 17:13:06 +02:00
Enno Boland c07e381f94 hooks/pre-pkg: fix "integer expression expected" error. 2016-04-01 08:08:52 +02:00
Enno Boland 05b15f6f4f common/hooks: look for pycompile_version to identify python version.
Also prepary python 3.5
2016-03-27 15:14:02 +02:00
Enno Boland 6606995831 common/hooks: fix python shebang rewrite for multi-versioned packages 2016-03-27 12:25:27 +02:00
Enno Boland 4714ce6dcd hooks/post-install: fix python shebang rewriting. 2016-03-25 19:13:06 +01:00
Enno Boland eb2621ca46 hooks/post-install/07-rewrite-python-shebang.sh: use IFS and -r for read.
cc @chneukirchen
2016-03-22 09:03:11 +01:00
Enno Boland 830ca26644 hooks/post-install: add hook to rewrite unversioned python shebangs. 2016-03-21 20:48:12 +01:00
Jürgen Buchmüller c459dade15 gcc: add support for SOURCE_DATE_EPOCH environment
+ Create symlinks from gcc/patches/libcpp-source_date_epoch.patch to cross-*/files/
+ Make all the _apply_patch() functions the same
2016-03-08 13:49:52 +01:00
Christian Neukirchen a3a0303673 common/hooks/pre-pkg/05-prepare-32bit.sh: create needed subdirectories for lib32symlinks. 2016-03-07 18:42:34 +01:00
Jürgen Buchmüller 8d7c58ef9e cleanup-timestamp-macros: catch more mime-types 2016-03-07 16:10:55 +01:00
Jürgen Buchmüller 8ce51e70cf timestamp-macros: fix creation and add cleanup
As described in #3765
2016-03-07 09:46:34 +01:00
Enno Boland b5e49c48e7 common: replace XBPS_COMMIT_TIMESTAMP by SOURCE_DATE_EPOCH
This way we are compatible to the Debians proposal. See [1].

[1] https://gcc.gnu.org/ml/gcc-patches/2015-06/msg02210.html
2016-03-01 18:27:49 +01:00
Enno Boland 3c04642877 environment/build: overwrite __DATE__, __TIME__, and __TIMESTAMP__ macros.
This commit overwrites timestamps that depend on timestamps with the
commit date of a package.
2016-03-01 15:33:09 +01:00
Enno Boland 3b8c53d702 hooks/pre-pkg: do not dereference symbolic links while rewriting mtimes. 2016-02-23 08:25:29 +01:00
Enno Boland c83a4d96c4 hooks/pre-pkg: mtime rewriting is default on now. 2016-02-23 08:05:43 +01:00
Enno Boland 16050ad3f2 hooks/pre-pkg: fixed mtime support for packages.
overwrites the mtime of all files in a package with the commit-date
of the package.
2016-02-19 16:21:56 +01:00
Christian Neukirchen 150c0b11b3 hooks/pre-configure/00-gnu-configure-asneeded.sh: don't error on $configure_script with spaces. 2016-02-05 12:10:46 +01:00
Juan RP aafe90e3c4 xbps-src/hooks: create a giblib-config wrapper for cross.
Required by scrot and probably others (#3464).
2016-01-26 07:46:00 +01:00
Enno Boland d8f7d1a8d6 common/hooks/pre-configure: fix script wrapper pkgconfig paths. 2016-01-21 00:07:05 +01:00
Juan RP c23daff127 xbps-src: handle .7z distfiles via 7z. 2016-01-11 11:02:44 +01:00
Juan RP c373ae50d4 xbps-src: get rid of 'broken_as_needed'; not used anymore. 2015-11-28 09:24:01 +01:00
mid-kid f68bfd6575 common/hooks: Fix hooks when build_style=meta 2015-11-26 22:27:55 +01:00
Enno Boland 82b736b616 common: expand_destdir rewrite 2015-11-18 11:19:09 +01:00
Enno Boland 18e288fd2c common: remove unneccessary 'source's; move extglob.sh to install 2015-11-18 10:21:33 +01:00
Enno Boland ef24b7b7cc common: move expand_destdir to environment/pkg; change lint check. 2015-11-18 10:21:33 +01:00
Enno Boland 67757b5708 hooks/do-pkg/00-gen-pkg.sh: enable globbing for conf_files. 2015-11-18 10:21:33 +01:00
Enno Boland f19bca3bce hooks/do-pkg: clean up 00-gen-pkg.sh 2015-11-18 10:21:33 +01:00
Jürgen Buchmüller 05c7da7955 Merge pull request #2908 from pullmoll/fetch
00-distfiles.sh: avoid unnecessary second loop
2015-11-15 02:54:55 +01:00
Juan RP 33e3afecf9 xbps-src: do not allow empty PKGDESTDIR unless build_style!=meta. 2015-11-13 13:05:36 +01:00
Juan RP 62de168b40 xbps-src: fix xbps-create(1) --tags option. 2015-11-10 11:33:19 +01:00
Jürgen Buchmüller d7b1a31cf0 00-distfiles.sh: avoid unnecessary second loop
We're already done after the first loop, if all distfiles
were found and their checksums verified ok.
2015-11-05 22:05:25 +01:00
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