Browse Source

Merge remote-tracking branch 'upstream/master'

master
creton32 2 months ago
parent
commit
fa9303ed32
  1. 47
      CONTRIBUTING.md
  2. 27
      Manual.md
  3. 5
      common/build-helper/cmake-wxWidgets-gtk3.sh
  4. 2
      common/build-profiles/aarch64-musl.sh
  5. 2
      common/build-profiles/aarch64.sh
  6. 2
      common/build-profiles/armv6l-musl.sh
  7. 2
      common/build-profiles/armv6l.sh
  8. 2
      common/build-profiles/armv7l-musl.sh
  9. 2
      common/build-profiles/armv7l.sh
  10. 2
      common/build-profiles/i686-musl.sh
  11. 2
      common/build-profiles/i686.sh
  12. 2
      common/build-profiles/ppc-musl.sh
  13. 2
      common/build-profiles/ppc.sh
  14. 2
      common/build-profiles/ppc64-musl.sh
  15. 2
      common/build-profiles/ppc64.sh
  16. 2
      common/build-profiles/ppc64le-musl.sh
  17. 2
      common/build-profiles/ppc64le.sh
  18. 2
      common/build-profiles/ppcle-musl.sh
  19. 2
      common/build-profiles/ppcle.sh
  20. 2
      common/build-profiles/x86_64-musl.sh
  21. 2
      common/build-profiles/x86_64.sh
  22. 5
      common/build-style/cmake.sh
  23. 591
      common/build-style/void-cross.sh
  24. 30
      common/chroot-style/proot.sh
  25. 2
      common/cross-profiles/aarch64-musl.sh
  26. 2
      common/cross-profiles/aarch64.sh
  27. 2
      common/cross-profiles/armv5tel-musl.sh
  28. 2
      common/cross-profiles/armv5tel.sh
  29. 2
      common/cross-profiles/armv6l-musl.sh
  30. 2
      common/cross-profiles/armv6l.sh
  31. 2
      common/cross-profiles/armv7l-musl.sh
  32. 2
      common/cross-profiles/armv7l.sh
  33. 2
      common/cross-profiles/i686-musl.sh
  34. 2
      common/cross-profiles/i686.sh
  35. 2
      common/cross-profiles/mips-musl.sh
  36. 2
      common/cross-profiles/mipsel-musl.sh
  37. 2
      common/cross-profiles/mipselhf-musl.sh
  38. 2
      common/cross-profiles/mipshf-musl.sh
  39. 2
      common/cross-profiles/ppc-musl.sh
  40. 2
      common/cross-profiles/ppc.sh
  41. 2
      common/cross-profiles/ppc64-musl.sh
  42. 2
      common/cross-profiles/ppc64.sh
  43. 2
      common/cross-profiles/ppc64le-musl.sh
  44. 2
      common/cross-profiles/ppc64le.sh
  45. 2
      common/cross-profiles/ppcle-musl.sh
  46. 2
      common/cross-profiles/ppcle.sh
  47. 2
      common/cross-profiles/x86_64-musl.sh
  48. 2
      common/cross-profiles/x86_64.sh
  49. 13
      common/environment/build-style/void-cross.sh
  50. 12
      common/environment/configure/gnu-configure-args.sh
  51. 2
      common/environment/configure/hardening.sh
  52. 14
      common/hooks/pre-pkg/99-pkglint-subpkgs.sh
  53. 12
      common/shlibs
  54. 6
      common/travis/license.lst
  55. 3
      common/xbps-src/libexec/build.sh
  56. 2
      common/xbps-src/shutils/chroot.sh
  57. 10
      common/xbps-src/shutils/common.sh
  58. 6
      etc/defaults.conf
  59. 2
      srcpkgs/66-tools/template
  60. 2
      srcpkgs/66/template
  61. 35
      srcpkgs/DarkRadiant/patches/03_c++17_filesystem.patch
  62. 14
      srcpkgs/DarkRadiant/patches/test.patch
  63. 19
      srcpkgs/DarkRadiant/template
  64. 11
      srcpkgs/GPaste/template
  65. 4
      srcpkgs/KDSoap/template
  66. 4
      srcpkgs/Komikku/template
  67. 381
      srcpkgs/MEGAcmd/patches/megacmd-sdk36.diff
  68. 15
      srcpkgs/MEGAcmd/template
  69. 85
      srcpkgs/MEGAsdk/patches/megacmd-02-qt.patch
  70. 8
      srcpkgs/MEGAsdk/template
  71. 5
      srcpkgs/OpenCPN/template
  72. 6
      srcpkgs/R-cran-backports/template
  73. 2
      srcpkgs/R-cran-ellipsis/template
  74. 2
      srcpkgs/R-cran-farver/template
  75. 2
      srcpkgs/R-cran-lifecycle/template
  76. 6
      srcpkgs/R-cran-vctrs/template
  77. 2
      srcpkgs/R-cran-zeallot/template
  78. 1
      srcpkgs/R/template
  79. 5
      srcpkgs/SLADE/template
  80. 23
      srcpkgs/SoapyUHD/patches/uhd-4.0.0.0.patch
  81. 2
      srcpkgs/SoapyUHD/template
  82. 7
      srcpkgs/Thunar/template
  83. 28
      srcpkgs/ZMusic/patches/0001-fix-cross.patch
  84. 1
      srcpkgs/ZMusic/template
  85. 6
      srcpkgs/adwaita-qt/template
  86. 2
      srcpkgs/alsa-lib/template
  87. 2
      srcpkgs/amsynth/template
  88. 2
      srcpkgs/anydesk/template
  89. 177
      srcpkgs/arduino/patches/disable-dependency-build.patch
  90. 6
      srcpkgs/arduino/template
  91. 11
      srcpkgs/artyfx/patches/fix-lv2-1.18.patch
  92. 2
      srcpkgs/aspell-cs/template
  93. 2
      srcpkgs/aspell-de/template
  94. 2
      srcpkgs/aspell-el/template
  95. 2
      srcpkgs/aspell-en/template
  96. 2
      srcpkgs/aspell-fr/template
  97. 2
      srcpkgs/aspell-pl/template
  98. 2
      srcpkgs/aspell-ru/template
  99. 11
      srcpkgs/aspell/template
  100. 2
      srcpkgs/base-files/template

47
CONTRIBUTING.md

@ -16,6 +16,15 @@ For this guide, we assume you have basic knowledge about [git](http://git-scm.or
Please note that we do not accept any packages containing non-release versions, such as specific git- or svn-revisions anymore.
To get started, [fork](https://help.github.com/articles/fork-a-repo) the void-linux `void-packages` git repository on GitHub and clone it:
$ git clone git@github.com:<user>/void-packages.git
To keep your forked repository up to date, setup the `upstream` remote to pull in new changes:
$ git remote add upstream git://github.com/void-linux/void-packages.git
$ git pull --rebase upstream master
### Creating a new template
You can use the helper tool `xnew`, from the [xtools](https://github.com/chneukirchen/xtools) package, to create new templates:
@ -48,21 +57,11 @@ Once you have built your template file or files, the commit message should have
If you want to describe your changes in more detail, add an empty line followed by those details ([example](https://github.com/void-linux/void-packages/commit/f1c45a502086ba1952f23ace9084a870ce437bc6)).
Pull requests are automatically submitted for Continuous Integration (CI) testing to ensure packages build on various combinations of libc and architecture.
Packages that take longer than 120 minutes or need more than 14G of storage to complete their build (for example, Firefox or the Linux kernel) will fail CI and should include `[ci skip]` in the PR title or body (the comment field when the PR is being opened) to avoid wasting CI builder time.
Use your best judgment on build times based on your local building experience. If you skip CI when submitting a PR, please build and cross-build for a variety of architectures locally, with both glibc and musl, and note your local results in PR comments.
Make sure to cover 64-bit and 32-bit architectures.
Runtime testing of packages and building with the `-Q` flag or with `XBPS_CHECK_PKGS=yes` set in the environment or `etc/conf` are strongly encouraged.
New packages will not be accepted unless they have been runtime tested.
For further information, please consult the [manual](https://github.com/void-linux/void-packages/blob/master/Manual.md).
`xbump`, available in the [xtools](https://github.com/chneukirchen/xtools) package, can be used to commit a new or updated package:
$ xbump <pkgname> <git commit options>
`xbump` will use `git commit` to commit the changes with the appropriate commit message. For more fine-grained control over the commit, specific options can be passed to `git commit` by adding them after the package name.
`xbump` will use `git commit` to commit the changes with the appropriate commit message. For more fine-grained control over the commit, specific options can be passed to `git commit` by adding them after the package name.
After committing your changes, please check that the package builds successfully. From the top level directory of your local copy of the `void-packages` repository, run:
@ -72,23 +71,29 @@ Your package must build successfully for at least x86, but we recommend trying t
$ ./xbps-src -a armv7l pkg <pkgname>
For further details, see the output of `./xbps-src -h`.
Runtime testing of packages and building with the `-Q` flag or with `XBPS_CHECK_PKGS=yes` set in the environment or `etc/conf` are strongly encouraged.
New packages will not be accepted unless they have been runtime tested.
### Starting a pull request
Once you have successfully built the package, you can start a pull request.
Once you have successfully built the package, you can [create a pull request](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request).
Most pull requests should only contain a single package and dependencies which are not part of void-packages yet.
If you make updates to packages containing a soname bump, you also need to update `common/shlibs` and revbump all packages that are dependant.
There should be a commit for each package revbump, and those commits should be part of the same pull request.
When you make changes to your pull request, please *do not close and reopen your pull request*. Instead, just forcibly git push, overwriting any old commits. Closing and opening your pull requests repeatedly spams the Void maintainers.
When you make changes to your pull request, please *do not close and reopen your pull request*. Instead, just [forcibly git push](#review), overwriting any old commits. Closing and opening your pull requests repeatedly spams the Void maintainers.
#### Travis
#### Continuous Integration
Once you have started a pull request, you will get instant feedback from Travis. It will check if the templates you have changed
comply with the our guidelines. At the moment not all packages comply with the rules, so if you update a package, it may happen that Travis reports errors about places you haven't touched. Please feel free to fix those errors too.
Pull requests are automatically submitted for Continuous Integration (CI) testing to ensure packages build on various combinations of libc and architecture.
Packages that take longer than 120 minutes or need more than 14G of storage to complete their build (for example, Firefox or the Linux kernel) will fail CI and should include `[ci skip]` in the PR title or body (the comment field when the PR is being opened) to avoid wasting CI builder time.
Use your best judgment on build times based on your local building experience. If you skip CI when submitting a PR, please build and cross-build for a variety of architectures locally, with both glibc and musl, and note your local results in PR comments.
Make sure to cover 64-bit and 32-bit architectures.
Continuous Integration will also check if the templates you have changed
comply with the our guidelines. At the moment not all packages comply with the rules, so if you update a package, it may report errors about places you haven't touched. Please feel free to fix those errors too.
#### Review
@ -102,6 +107,14 @@ We recommend having only a single commit for pull request, so if you need to mak
$ git commit --amend
$ git push -f
A more powerful way of modifying commits than using `git commit --amend` is with [git-rebase](https://git-scm.com/docs/git-rebase#_interactive_mode), which allows you to join, reorder, change description of past commits and more.
Alternatively, if there are issues with your git history, you can make another branch and push it to the existing PR:
$ git checkout master -b <attempt2>
$ # do changes anew
$ git push -f <fork> <attempt2>:<branch-of-pr>
#### Closing the pull request
Once you have applied all requested changes, the reviewers will merge your request.

27
Manual.md

@ -68,6 +68,7 @@ packages for XBPS, the `Void Linux` native packaging system.
* [update-desktopdb](#triggers_update_desktopdb)
* [x11-fonts](#triggers_x11_fonts)
* [xml-catalog](#triggers_xml_catalog)
* [Void specific documentation](#documentation)
* [Notes](#notes)
* [Contributing via git](#contributing)
* [Help](#help)
@ -960,6 +961,16 @@ via `make_install_target`.
via `configure_args`, the meson command can be overridden by `meson_cmd` and the location of
the out of source build by `meson_builddir`
- `void-cross` For cross-toolchain packages used to build Void systems. You will need to
specify `cross_triplet` (corresponds to the target triplet specified in the cross profile
for the target arch), `cross_linux_arch` (the architecture name in the Linux kernel source)
and when building Go support for musl targets, also `cross_libucontext_arch` (see `libucontext`
for available ones). Optionally, `cross_gcc_skip_go` can be specified. Individual subproject
configure arguments can be specified via `cross_*_configure_args` where `*` is `binutils`,
`gcc_bootstrap` (early gcc), `gcc` (final gcc), `glibc` (or `musl`), `configure_args` is
additionally passed to both early and final `gcc`. You can also specify custom `CFLAGS`
and `LDFLAGS` for the libc as `cross_(glibc|musl)_(cflags|ldflags)`.
For packages that use the Python module build method (`setup.py` or
[PEP 517](https://www.python.org/dev/peps/pep-0517/)), you can choose one of the following:
@ -1012,6 +1023,8 @@ This aims to fix cross-builds for when the build-style is mixed: e.g. when in a
`gnu-configure` style the configure script calls `qmake` or a `Makefile` in
`gnu-makefile` style, respectively.
- `cmake-wxWidgets-gtk3` sets the `WX_CONFIG` variable which is used by FindwxWidgets.cmake
<a id="functions"></a>
### Functions
@ -2012,6 +2025,14 @@ During removal it uses `xmlcatmgr` to remove all catalogs passed to it by the
To include this trigger use the `sgml_entries` variable or/and the `xml_entries` variable,
as the trigger won't do anything unless either of them are defined.
<a id="documentation"></a>
### Void specific documentation
When you want document details of package's configuration and usage specific to Void Linux,
not covered by upstream documentation, put notes into
`srcpkgs/<pkgname>/files/README.voidlinux` and install with
`vdoc "${FILESDIR}/README.voidlinux"`.
<a id="notes"></a>
### Notes
@ -2034,15 +2055,15 @@ otherwise the `debug` packages won't have debugging symbols.
<a id="contributing"></a>
### Contributing via git
Fork the voidlinux `void-packages` git repository on github and clone it:
To get started, [fork](https://help.github.com/articles/fork-a-repo) the void-linux `void-packages` git repository on GitHub and clone it:
$ git clone git@github.com:<user>/void-packages.git
See [CONTRIBUTING.md](./CONTRIBUTING.md) for information on how to format your
commits and other tips for contributing.
Once you've made changes to your `forked` repository you can submit
a github pull request; see https://help.github.com/articles/fork-a-repo for more information.
Once you've made changes to your `forked` repository, submit
a github pull request.
To keep your forked repository always up to date, setup the `upstream` remote
to pull in new changes:

5
common/build-helper/cmake-wxWidgets-gtk3.sh

@ -0,0 +1,5 @@
if [ "$CROSS_BUILD" ]; then
export WX_CONFIG=${XBPS_WRAPPERDIR}/wx-config-gtk3
else
export WX_CONFIG=wx-config-gtk3
fi

2
common/build-profiles/aarch64-musl.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-march=armv8-a"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="aarch64-unknown-linux-musl"
XBPS_RUST_TARGET="$XBPS_TRIPLET"

2
common/build-profiles/aarch64.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-march=armv8-a"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="aarch64-unknown-linux-gnu"
XBPS_RUST_TARGET="$XBPS_TRIPLET"

2
common/build-profiles/armv6l-musl.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-march=armv6 -mfpu=vfp -mfloat-abi=hard"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="armv6l-linux-musleabihf"
XBPS_RUST_TARGET="arm-unknown-linux-musleabihf"

2
common/build-profiles/armv6l.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-march=armv6 -mfpu=vfp -mfloat-abi=hard"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="armv6l-unknown-linux-gnueabihf"
XBPS_RUST_TARGET="arm-unknown-linux-gnueabihf"

2
common/build-profiles/armv7l-musl.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard"
XBPS_TARGET_CXXFLAGS="$XBPS_CXXFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="armv7l-linux-musleabihf"
XBPS_RUST_TARGET="armv7-unknown-linux-musleabihf"

2
common/build-profiles/armv7l.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="armv7l-unknown-linux-gnueabihf"
XBPS_RUST_TARGET="armv7-unknown-linux-gnueabihf"

2
common/build-profiles/i686-musl.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mtune=i686"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="i686-pc-linux-musl"
XBPS_RUST_TARGET="i686-unknown-linux-musl"

2
common/build-profiles/i686.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mtune=i686"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="i686-pc-linux-gnu"
XBPS_RUST_TARGET="i686-unknown-linux-gnu"

2
common/build-profiles/ppc-musl.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mtune=G4"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="powerpc-linux-musl"
XBPS_RUST_TARGET="powerpc-unknown-linux-musl"

2
common/build-profiles/ppc.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mtune=G4"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="powerpc-linux-gnu"
XBPS_RUST_TARGET="powerpc-unknown-linux-gnu"

2
common/build-profiles/ppc64-musl.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mcpu=970 -mtune=power9"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="powerpc64-unknown-linux-musl"
XBPS_RUST_TARGET="$XBPS_TRIPLET"

2
common/build-profiles/ppc64.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mcpu=970 -mtune=power9"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="powerpc64-unknown-linux-gnu"
XBPS_RUST_TARGET="$XBPS_TRIPLET"

2
common/build-profiles/ppc64le-musl.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mtune=power9"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="powerpc64le-unknown-linux-musl"
XBPS_RUST_TARGET="$XBPS_TRIPLET"

2
common/build-profiles/ppc64le.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mtune=power9"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="powerpc64le-unknown-linux-gnu"
XBPS_RUST_TARGET="$XBPS_TRIPLET"

2
common/build-profiles/ppcle-musl.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mcpu=power8 -mtune=power9"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="powerpcle-linux-musl"
XBPS_RUST_TARGET="powerpcle-unknown-linux-musl"

2
common/build-profiles/ppcle.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mcpu=power8 -mtune=power9"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="powerpcle-linux-gnu"
XBPS_RUST_TARGET="powerpcle-unknown-linux-gnu"

2
common/build-profiles/x86_64-musl.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mtune=generic"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="x86_64-unknown-linux-musl"
XBPS_RUST_TARGET="${XBPS_TRIPLET}"

2
common/build-profiles/x86_64.sh

@ -1,5 +1,5 @@
XBPS_TARGET_CFLAGS="-mtune=generic"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS=""
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="x86_64-unknown-linux-gnu"
XBPS_RUST_TARGET="${XBPS_TRIPLET}"

5
common/build-style/cmake.sh

@ -33,9 +33,6 @@ _EOF
ppc*) _CMAKE_SYSTEM_PROCESSOR=ppc ;;
*) _CMAKE_SYSTEM_PROCESSOR=generic ;;
esac
if [ -x "${XBPS_CROSS_BASE}/usr/bin/wx-config-gtk3" ]; then
wx_config=wx-config-gtk3
fi
cat > cross_${XBPS_CROSS_TRIPLET}.cmake <<_EOF
SET(CMAKE_SYSTEM_NAME Linux)
SET(CMAKE_SYSTEM_VERSION 1)
@ -51,8 +48,6 @@ SET(CMAKE_FIND_ROOT_PATH "${XBPS_CROSS_BASE}/usr;${XBPS_CROSS_BASE}")
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
SET(wxWidgets_CONFIG_EXECUTABLE ${XBPS_WRAPPERDIR}/${wx_config:=wx-config})
_EOF
cmake_args+=" -DCMAKE_TOOLCHAIN_FILE=cross_${XBPS_CROSS_TRIPLET}.cmake"
fi

591
common/build-style/void-cross.sh

@ -0,0 +1,591 @@
#
# This helper is for void system crosstoolchain templates.
#
# Mandatory variables:
#
# - cross_triplet - the target triplet (e.g. aarch64-linux-gnu)
# - cross_linux_arch - the source ARCH of the kernel (e.g. arm64)
# - cross_libucontext_arch - only on musl without cross_gcc_skip_go
#
# Optional variables:
#
# - cross_gcc_skip_go - do not build gccgo support
# - cross_binutils_configure_args
# - cross_gcc_bootstrap_configure_args
# - cross_gcc_configure_args
# - cross_glibc_cflags
# - cross_glibc_ldflags
# - cross_glibc_configure_args
# - cross_musl_cflags
# - cross_musl_ldflags
# - cross_musl_configure_args
#
# configure_args is passed to both bootstrap gcc and final gcc
# if you need to pass some to one and not the other, use the
# respective cross_ variables for final gcc and bootstrap gcc
#
_void_cross_apply_patch() {
local args="$1" pname="$(basename $2)"
if [ ! -f ".${pname}_done" ]; then
patch -N $args -i $2
touch .${pname}_done
fi
}
_void_cross_build_binutils() {
[ -f ${wrksrc}/.binutils_done ] && return 0
local ver=$1
msg_normal "Building binutils for ${cross_triplet}\n"
mkdir -p ${wrksrc}/binutils_build
cd ${wrksrc}/binutils_build
../binutils-${ver}/configure \
--prefix=/usr \
--sbindir=/usr/bin \
--libdir=/usr/lib \
--libexecdir=/usr/lib \
--target=${cross_triplet} \
--with-sysroot=/usr/${cross_triplet} \
--disable-nls \
--disable-shared \
--disable-multilib \
--disable-werror \
--disable-gold \
--with-system-zlib \
--enable-deterministic-archives \
--enable-default-hash-style=gnu \
${cross_binutils_configure_args}
make configure-host
make ${makejobs}
make install DESTDIR=${wrksrc}/build_root
touch ${wrksrc}/.binutils_done
}
_void_cross_build_bootstrap_gcc() {
[ -f ${wrksrc}/.gcc_bootstrap_done ] && return 0
local ver=$1
msg_normal "Patching GCC for ${cross_triplet}\n"
cd ${wrksrc}/gcc-${ver}
for f in ${XBPS_SRCPKGDIR}/gcc/patches/*.patch; do
_void_cross_apply_patch -p0 "$f"
done
if [ -f ${wrksrc}/.musl_version ]; then
for f in ${XBPS_SRCPKGDIR}/gcc/files/*-musl.patch; do
_void_cross_apply_patch -p0 "$f"
done
fi
cd ..
msg_normal "Building bootstrap GCC for ${cross_triplet}\n"
mkdir -p gcc_bootstrap
cd gcc_bootstrap
local extra_args
if [ -f ${wrksrc}/.musl_version ]; then
extra_args+=" --with-newlib"
extra_args+=" --disable-symvers"
extra_args+=" libat_cv_have_ifunc=no"
else
extra_args+=" --without-headers"
fi
../gcc-${ver}/configure \
--prefix=/usr \
--sbindir=/usr/bin \
--libdir=/usr/lib \
--libexecdir=/usr/lib \
--target=${cross_triplet} \
--disable-nls \
--disable-multilib \
--disable-shared \
--disable-libquadmath \
--disable-decimal-float \
--disable-libgomp \
--disable-libmpx \
--disable-libmudflap \
--disable-libssp \
--disable-libitm \
--disable-libatomic \
--disable-threads \
--disable-sjlj-exceptions \
--enable-languages=c \
--with-gnu-ld \
--with-gnu-as \
${extra_args} \
${configure_args} \
${cross_gcc_bootstrap_configure_args}
make ${makejobs}
make install DESTDIR=${wrksrc}/build_root
local ptrs=$(${cross_triplet}-gcc -dM -E - < /dev/null | \
grep __SIZEOF_POINTER__)
local ws=${ptrs##* }
case ${ws} in
8) echo 64 > ${wrksrc}/.gcc_wordsize ;;
4) echo 32 > ${wrksrc}/.gcc_wordsize ;;
*) msg_error "Unknown word size: ${ws}\n" ;;
esac
touch ${wrksrc}/.gcc_bootstrap_done
}
_void_cross_build_kernel_headers() {
[ -f ${wrksrc}/.linux_headers_done ] && return 0
local ver=$1
msg_normal "Patching Linux headers for ${cross_triplet}\n"
cd ${wrksrc}/linux-${ver}
for f in ${XBPS_SRCPKGDIR}/kernel-libc-headers/patches/*.patch; do
_void_cross_apply_patch -p0 $f
done
cd ..
msg_normal "Building Linux headers for ${cross_triplet}\n"
cd linux-${ver}
make ARCH=$cross_linux_arch headers_check
make ARCH=$cross_linux_arch \
INSTALL_HDR_PATH=${wrksrc}/build_root/usr/${cross_triplet}/usr \
headers_install
touch ${wrksrc}/.linux_headers_done
}
_void_cross_build_glibc_headers() {
[ -f ${wrksrc}/.glibc_headers_done ] && return 0
local ver=$1
local tgt=$cross_triplet
msg_normal "Patching glibc for ${cross_triplet}\n"
cd ${wrksrc}/glibc-${ver}
if [ -d "${XBPS_SRCPKGDIR}/glibc/patches" ]; then
for f in ${XBPS_SRCPKGDIR}/glibc/patches/*.patch; do
_void_cross_apply_patch -p1 "$f"
done
fi
cd ..
msg_normal "Building glibc headers for ${cross_triplet}\n"
mkdir -p glibc_headers
cd glibc_headers
echo "libc_cv_forced_unwind=yes" > config.cache
echo "libc_cv_c_cleanup=yes" >> config.cache
# we don't need any custom args here, it's just headers
CC="${tgt}-gcc" CXX="${tgt}-g++" CPP="${tgt}-cpp" LD="${tgt}-ld" \
AS="${tgt}-as" NM="${tgt}-nm" CFLAGS="-pipe" CXXFLAGS="" CPPFLAGS="" \
LDFLAGS="" \
../glibc-${ver}/configure \
--prefix=/usr \
--host=${tgt} \
--with-headers=${wrksrc}/build_root/usr/${tgt}/usr/include \
--config-cache \
--enable-obsolete-rpc \
--enable-obsolete-nsl \
--enable-kernel=2.6.27 \
${cross_glibc_configure_args}
make -k install-headers cross_compiling=yes \
install_root=${wrksrc}/build_root/usr/${tgt}
touch ${wrksrc}/.glibc_headers_done
}
_void_cross_build_glibc() {
[ -f ${wrksrc}/.glibc_build_done ] && return 0
local ver=$1
local tgt=$cross_triplet
msg_normal "Building glibc for ${tgt}\n"
mkdir -p ${wrksrc}/glibc_build
cd ${wrksrc}/glibc_build
local ws=$(cat ${wrksrc}/.gcc_wordsize)
echo "slibdir=/usr/lib${ws}" > configparms
echo "libc_cv_forced_unwind=yes" > config.cache
echo "libc_cv_c_cleanup=yes" >> config.cache
CC="${tgt}-gcc" CXX="${tgt}-g++" CPP="${tgt}-cpp" LD="${tgt}-ld" \
AR="${tgt}-ar" AS="${tgt}-as" NM="${tgt}-nm" \
CFLAGS="-pipe ${cross_glibc_cflags}" \
CXXFLAGS="-pipe ${cross_glibc_cflags}" \
CPPFLAGS="${cross_glibc_cflags}" \
LDFLAGS="${cross_glibc_ldflags}" \
../glibc-${ver}/configure \
--prefix=/usr \
--libdir=/usr/lib${ws} \
--libexecdir=/usr/libexec \
--host=${tgt} \
--with-headers=${wrksrc}/build_root/usr/${tgt}/usr/include \
--config-cache \
--enable-obsolete-rpc \
--enable-obsolete-nsl \
--disable-profile \
--disable-werror \
--enable-kernel=2.6.27 \
${cross_glibc_configure_args}
make ${makejobs}
make install_root=${wrksrc}/build_root/usr/${tgt} install
touch ${wrksrc}/.glibc_build_done
}
_void_cross_build_musl() {
[ -f ${wrksrc}/.musl_build_done ] && return 0
local ver=$1
local tgt=$cross_triplet
msg_normal "Patching musl for ${tgt}\n"
cd ${wrksrc}/musl-${ver}
if [ -d "${XBPS_SRCPKGDIR}/musl/patches" ]; then
for f in ${XBPS_SRCPKGDIR}/musl/patches/*.patch; do
_void_cross_apply_patch -p0 "$f"
done
fi
cd ..
msg_normal "Building musl for ${tgt}\n"
mkdir -p musl_build
cd musl_build
CC="${tgt}-gcc" CXX="${tgt}-g++" CPP="${tgt}-cpp" LD="${tgt}-ld" \
AR="${tgt}-ar" AS="${tgt}-as" NM="${tgt}-nm" \
CFLAGS="-pipe -fPIC ${cross_musl_cflags}" \
CPPFLAGS="${cross_musl_cflags}" LDFLAGS="${cross_musl_ldflags}" \
../musl-${ver}/configure \
--prefix=/usr \
--host=${tgt} \
${cross_musl_configure_args}
make ${makejobs}
make DESTDIR=${wrksrc}/build_root/usr/${tgt} install
touch ${wrksrc}/.musl_build_done
}
_void_cross_build_libucontext() {
[ -n "$cross_gcc_skip_go" ] && return 0
[ -f ${wrksrc}/.libucontext_build_done ] && return 0
local ver=$1
msg_normal "Building libucontext for ${cross_triplet}\n"
cd ${wrksrc}/libucontext-${ver}
# a terrible hack but seems to work for now
CC="${cross_triplet}-gcc" AS="${cross_triplet}-as" AR="${cross_triplet}-ar" \
CPPFLAGS="-pipe ${cross_musl_cflags} -g0 -Os -nostdinc -isystem ${wrksrc}/build_root/usr/${cross_triplet}/usr/include" \
make ARCH=${cross_libucontext_arch} libucontext.a
cp libucontext.a ${wrksrc}/build_root/usr/${cross_triplet}/usr/lib
touch ${wrksrc}/.libucontext_build_done
}
_void_cross_build_gcc() {
[ -f ${wrksrc}/.gcc_build_done ] && return 0
local ver=$1
msg_normal "Building gcc for ${cross_triplet}\n"
mkdir -p ${wrksrc}/gcc_build
cd ${wrksrc}/gcc_build
local langs="c,c++,fortran,objc,obj-c++,ada,lto"
if [ -z "$cross_gcc_skip_go" ]; then
langs+=",go"
fi
local extra_args
if [ -f ${wrksrc}/.musl_version ]; then
extra_args+=" --enable-libssp"
# otherwise glibc hosts get confused and use the gnu impl
extra_args+=" --enable-clocale=generic"
extra_args+=" --disable-symvers"
extra_args+=" --disable-gnu-unique-object"
extra_args+=" libat_cv_have_ifunc=no"
else
extra_args+=" --disable-libssp"
extra_args+=" --enable-gnu-unique-object"
fi
# note on --disable-libquadmath:
# on some platforms the library is actually necessary for the
# fortran frontend to build, but still disable it because it
# should not be in the resulting packages; it conflicts with
# the libquadmath you can install into the cross root
#
# platforms where this is a problem should explicitly force
# libquadmath to be on via cross_gcc_configure_args, the
# do_install in this build-style automatically removes it
#
../gcc-${ver}/configure \
--prefix=/usr \
--sbindir=/usr/bin \
--libdir=/usr/lib \
--libexecdir=/usr/lib \
--target=${cross_triplet} \
--with-sysroot=/usr/${cross_triplet} \
--with-build-sysroot=${wrksrc}/build_root/usr/${cross_triplet} \
--enable-languages=${langs} \
--disable-nls \
--disable-multilib \
--disable-sjlj-exceptions \
--disable-libquadmath \
--disable-libmudflap \
--disable-libitm \
--disable-libvtv \
--disable-libsanitizer \
--disable-libstdcxx-pch \
--enable-shared \
--enable-threads=posix \
--enable-__cxa_atexit \
--enable-linker-build-id \
--enable-libada \
--enable-lto \
--enable-default-pie \
--enable-default-ssp \
--with-gnu-ld \
--with-gnu-as \
--with-linker-hash-style=gnu \
${extra_args} \
${configure_args} \
${cross_gcc_configure_args}
make ${makejobs}
touch ${wrksrc}/.gcc_build_done
}
_void_cross_check_var() {
local var="cross_${1}"
if [ -z "${!var}" ]; then
msg_error "cross_${1} not defined in template"
fi
}
_void_cross_test_ver() {
local proj=$1
local noerr=$2
local ver cver
for p in ${proj}-*; do
cver=${p#${proj}-}
if [ -z "$noerr" -a -n "$ver" ]; then
msg_error "multiple versions of ${proj} found: ${ver}, ${cver}"
fi
ver=${cver}
done
if [ -d "${proj}-${ver}" ]; then
echo ${ver} > ${wrksrc}/.${proj}_version
return
fi
if [ -z "$noerr" ]; then
msg_error "project ${proj} not available for build\n"
fi
}
do_build() {
# Verify toolchain versions
cd ${wrksrc}
local binutils_ver linux_ver gcc_ver libc_ver libucontext_ver
_void_cross_test_ver binutils
_void_cross_test_ver linux
_void_cross_test_ver gcc
binutils_ver=$(cat .binutils_version)
linux_ver=$(cat .linux_version)
gcc_ver=$(cat .gcc_version)
_void_cross_test_ver musl noerr
if [ ! -f .musl_version ]; then
_void_cross_test_ver glibc
libc_ver=$(cat .glibc_version)
else
libc_ver=$(cat .musl_version)
if [ -z "$cross_gcc_skip_go" ]; then
_void_cross_test_ver libucontext
_void_cross_check_var libucontext_arch
libucontext_ver=$(cat .libucontext_version)
fi
fi
# Verify triplet
_void_cross_check_var triplet
_void_cross_check_var linux_arch
local sysroot="/usr/${cross_triplet}"
# Prepare environment
cd ${wrksrc}
# Core directories for the build root
mkdir -p build_root/usr/{bin,lib,include,share}
mkdir -p build_root/usr/${cross_triplet}/usr/{bin,lib,include,share}
# Host root uses host wordsize
ln -sf usr/lib build_root/lib
ln -sf usr/lib build_root/lib${XBPS_TARGET_WORDSIZE}
ln -sf lib build_root/usr/lib${XBPS_TARGET_WORDSIZE}
# Prepare target sysroot
ln -sf usr/lib build_root/${sysroot}/lib
ln -sf lib build_root/${sysroot}/usr/libexec
_void_cross_build_binutils ${binutils_ver}
# Prepare environment so we can use temporary prefix
local oldpath="$PATH"
local oldldlib="$LD_LIBRARY_PATH"
export PATH="${wrksrc}/build_root/usr/bin:$PATH"
export LD_LIBRARY_PATH="${wrksrc}/build_root/usr/lib:$PATH"
_void_cross_build_bootstrap_gcc ${gcc_ver}
_void_cross_build_kernel_headers ${linux_ver}
local ws=$(cat ${wrksrc}/.gcc_wordsize)
# Now that we know the target wordsize, prepare symlinks
ln -sf usr/lib ${wrksrc}/build_root/${sysroot}/lib${ws}
ln -sf lib ${wrksrc}/build_root/${sysroot}/usr/lib${ws}
if [ -f ${wrksrc}/.musl_version ]; then
_void_cross_build_musl ${libc_ver}
_void_cross_build_libucontext ${libucontext_ver}
else
_void_cross_build_glibc_headers ${libc_ver}
_void_cross_build_glibc ${libc_ver}
fi
_void_cross_build_gcc ${gcc_ver}
# restore this stuff in case later hooks depend on it
export PATH="$oldpath"
export LD_LIBRARY_PATH="$oldldlib"
}
do_install() {
# We need to be able to access binutils in the root
local oldpath="$PATH"
local oldldlib="$LD_LIBRARY_PATH"
export PATH="${wrksrc}/build_root/usr/bin:$PATH"
export LD_LIBRARY_PATH="${wrksrc}/build_root/usr/lib:$PATH"
local sysroot="/usr/${cross_triplet}"
local ws=$(cat ${wrksrc}/.gcc_wordsize)
# Core directories for the sysroot
#
# libexec is created for sysroot but not for dest, since in sysroot
# we configure glibc with separate libexec, elsewhere it's just lib
# and we want to delete the libexec from glibc afterwards to save space
mkdir -p ${DESTDIR}/${sysroot}/usr/{bin,lib,libexec,include,share}
# Sysroot base symlinks
ln -sf usr/lib ${DESTDIR}/${sysroot}/lib
ln -sf usr/lib ${DESTDIR}/${sysroot}/lib${ws}
ln -sf lib ${DESTDIR}/${sysroot}/usr/lib${ws}
# Install Linux headers
cd ${wrksrc}/linux-$(cat ${wrksrc}/.linux_version)
make ARCH=${cross_linux_arch} \
INSTALL_HDR_PATH=${DESTDIR}/${sysroot}/usr headers_install
rm -f $(find ${DESTDIR}/${sysroot}/usr/include \
-name .install -or -name ..install.cmd)
rm -rf ${DESTDIR}/${sysroot}/usr/include/drm
# Install binutils
cd ${wrksrc}/binutils_build
make install DESTDIR=${DESTDIR}
# Install final gcc
cd ${wrksrc}/gcc_build
make install DESTDIR=${DESTDIR}
# Move libcc1.so* to the sysroot
mv ${DESTDIR}/usr/lib/libcc1.so* ${DESTDIR}/${sysroot}/usr/lib
if [ -f ${wrksrc}/.musl_version ]; then
# Install musl
cd ${wrksrc}/musl_build
make DESTDIR=${DESTDIR}/${sysroot} install
# Remove useless headers
rm -rf ${DESTDIR}/usr/lib/gcc/${cross_triplet}/*/include-fixed
# Make ld-musl.so symlinks relative
for f in ${DESTDIR}/${sysroot}/usr/lib/ld-musl-*.so.*; do
ln -sf libc.so ${f}
done
else
# Install glibc
cd ${wrksrc}/glibc_build
make install_root=${DESTDIR}/${sysroot} install install-headers
# Remove bad header
rm -f ${DESTDIR}/usr/lib/gcc/${cross__triplet}/*/include-fixed/bits/statx.h
fi
local gcc_ver=$(cat ${wrksrc}/.gcc_version)
# Symlinks for gnarl and gnat shared libraries
local majorver=${gcc_ver%.*.*}
local adalib=usr/lib/gcc/${_triplet}/${gcc_ver}/adalib
mv ${DESTDIR}/${adalib}/libgnarl-${majorver}.so \
${DESTDIR}/${sysroot}/usr/lib
mv ${DESTDIR}/${adalib}/libgnat-${majorver}.so \
${DESTDIR}/${sysroot}/usr/lib
ln -sf libgnarl-${majorver}.so ${DESTDIR}/${sysroot}/usr/lib/libgnarl.so
ln -sf libgnat-${majorver}.so ${DESTDIR}/${sysroot}/usr/lib/libgnat.so
rm -vf ${DESTDIR}/${adalib}/libgna{rl,t}.so
# Remove unnecessary libatomic which is only built for gccgo
rm -rf ${DESTDIR}/${sysroot}/usr/lib/libatomic.*
# If libquadmath was forced (needed for gfortran on some platforms)
# then remove it because it conflicts with libquadmath package
rm -rf ${DESTDIR}/${sysroot}/usr/lib/libquadmath.*
# Remove leftover symlinks
rm -f ${DESTDIR}/usr/lib${XBPS_TARGET_WORDSIZE}
rm -f ${DESTDIR}/lib*
rm -f ${DESTDIR}/*bin
# Remove unnecessary stuff
rm -rf ${DESTDIR}/${sysroot}/{sbin,etc,var,libexec}
rm -rf ${DESTDIR}/${sysroot}/usr/{sbin,share,libexec}
rm -rf ${DESTDIR}/usr/share
rm -f ${DESTDIR}/usr/lib*/libiberty.a
export PATH="$oldpath"
export LD_LIBRARY_PATH="$oldldlib"
}

30
common/chroot-style/proot.sh

@ -1,30 +0,0 @@
#!/bin/sh
#
# This chroot script uses proot (see http://proot.me)
#
readonly MASTERDIR="$1"
readonly DISTDIR="$2"
readonly HOSTDIR="$3"
readonly EXTRA_ARGS="$4"
shift 4
if ! command -v proot >/dev/null 2>&1; then
exit 1
fi
if [ -z "$MASTERDIR" -o -z "$DISTDIR" ]; then
echo "$0 MASTERDIR/DISTDIR not set"
exit 1
fi
# proot does not properly return the resultcode. Workaround this
RESULT=$(mktemp) || exit 1
PROOT_NO_SECCOMP=1 proot -r $MASTERDIR -w / -b "$RESULT:/.result" -b $DISTDIR:/void-packages \
${HOSTDIR:+-b $HOSTDIR:/host} -b /proc:/proc -b /dev:/dev \
-b /sys:/sys $EXTRA_ARGS /bin/sh -c '$@; echo $? > /.result' $0 $@
rv=$(cat "$RESULT")
rm "$RESULT"
exit $rv

2
common/cross-profiles/aarch64-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="aarch64"
XBPS_CROSS_TRIPLET="aarch64-linux-musl"
XBPS_CROSS_CFLAGS="-march=armv8-a"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="aarch64-unknown-linux-musl"

2
common/cross-profiles/aarch64.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="aarch64"
XBPS_CROSS_TRIPLET="aarch64-linux-gnu"
XBPS_CROSS_CFLAGS="-march=armv8-a"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="aarch64-unknown-linux-gnu"

2
common/cross-profiles/armv5tel-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="arm"
XBPS_CROSS_TRIPLET="arm-linux-musleabi"
XBPS_CROSS_CFLAGS="-march=armv5te -msoft-float -mfloat-abi=soft"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="arm-unknown-linux-musleabi"

2
common/cross-profiles/armv5tel.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="arm"
XBPS_CROSS_TRIPLET="arm-linux-gnueabi"
XBPS_CROSS_CFLAGS="-march=armv5te -msoft-float -mfloat-abi=soft"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="arm-unknown-linux-gnueabi"

2
common/cross-profiles/armv6l-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="arm"
XBPS_CROSS_TRIPLET="arm-linux-musleabihf"
XBPS_CROSS_CFLAGS="-march=armv6 -mfpu=vfp -mfloat-abi=hard"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="arm-unknown-linux-musleabihf"

2
common/cross-profiles/armv6l.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="arm"
XBPS_CROSS_TRIPLET="arm-linux-gnueabihf"
XBPS_CROSS_CFLAGS="-march=armv6 -mfpu=vfp -mfloat-abi=hard"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="arm-unknown-linux-gnueabihf"

2
common/cross-profiles/armv7l-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="arm"
XBPS_CROSS_TRIPLET="armv7l-linux-musleabihf"
XBPS_CROSS_CFLAGS="-march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="armv7-unknown-linux-musleabihf"

2
common/cross-profiles/armv7l.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="arm"
XBPS_CROSS_TRIPLET="armv7l-linux-gnueabihf"
XBPS_CROSS_CFLAGS="-march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="armv7-unknown-linux-gnueabihf"

2
common/cross-profiles/i686-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="i386"
XBPS_CROSS_TRIPLET="i686-linux-musl"
XBPS_CROSS_CFLAGS="-march=i686"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="i686-unknown-linux-musl"

2
common/cross-profiles/i686.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="i386"
XBPS_CROSS_TRIPLET="i686-pc-linux-gnu"
XBPS_CROSS_CFLAGS="-march=i686"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="i686-unknown-linux-gnu"

2
common/cross-profiles/mips-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="mips"
XBPS_CROSS_TRIPLET="mips-linux-musl"
XBPS_CROSS_CFLAGS="-mtune=mips32r2 -mabi=32 -msoft-float"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="mips-unknown-linux-musl"

2
common/cross-profiles/mipsel-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="mipsel"
XBPS_CROSS_TRIPLET="mipsel-linux-musl"
XBPS_CROSS_CFLAGS="-mtune=mips32r2 -mabi=32 -msoft-float"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="mipsel-unknown-linux-musl"

2
common/cross-profiles/mipselhf-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="mipsel"
XBPS_CROSS_TRIPLET="mipsel-linux-muslhf"
XBPS_CROSS_CFLAGS="-mtune=mips32r2 -mabi=32 -mhard-float"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="mipsel-unknown-linux-musl"

2
common/cross-profiles/mipshf-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="mips"
XBPS_CROSS_TRIPLET="mips-linux-muslhf"
XBPS_CROSS_CFLAGS="-mtune=mips32r2 -mabi=32 -mhard-float"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="mips-unknown-linux-musl"

2
common/cross-profiles/ppc-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="ppc"
XBPS_CROSS_TRIPLET="powerpc-linux-musl"
XBPS_CROSS_CFLAGS="-mtune=G4"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="powerpc-unknown-linux-musl"

2
common/cross-profiles/ppc.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="ppc"
XBPS_CROSS_TRIPLET="powerpc-linux-gnu"
XBPS_CROSS_CFLAGS="-mtune=G4"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="powerpc-unknown-linux-gnu"

2
common/cross-profiles/ppc64-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="ppc64"
XBPS_CROSS_TRIPLET="powerpc64-linux-musl"
XBPS_CROSS_CFLAGS="-mcpu=970 -mtune=power9"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="powerpc64-unknown-linux-musl"

2
common/cross-profiles/ppc64.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="ppc64"
XBPS_CROSS_TRIPLET="powerpc64-linux-gnu"
XBPS_CROSS_CFLAGS="-mcpu=970 -mtune=power9"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="powerpc64-unknown-linux-gnu"

2
common/cross-profiles/ppc64le-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="ppc64le"
XBPS_CROSS_TRIPLET="powerpc64le-linux-musl"
XBPS_CROSS_CFLAGS="-mtune=power9"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="powerpc64le-unknown-linux-musl"

2
common/cross-profiles/ppc64le.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="ppc64le"
XBPS_CROSS_TRIPLET="powerpc64le-linux-gnu"
XBPS_CROSS_CFLAGS="-mtune=power9"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="powerpc64le-unknown-linux-gnu"

2
common/cross-profiles/ppcle-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="ppc"
XBPS_CROSS_TRIPLET="powerpcle-linux-musl"
XBPS_CROSS_CFLAGS="-mcpu=power8 -mtune=power9"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="powerpcle-unknown-linux-musl"

2
common/cross-profiles/ppcle.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="ppc"
XBPS_CROSS_TRIPLET="powerpcle-linux-gnu"
XBPS_CROSS_CFLAGS="-mcpu=power8 -mtune=power9"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="powerpcle-unknown-linux-gnu"

2
common/cross-profiles/x86_64-musl.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="x86_64"
XBPS_CROSS_TRIPLET="x86_64-linux-musl"
XBPS_CROSS_CFLAGS="-mtune=generic"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="x86_64-unknown-linux-musl"

2
common/cross-profiles/x86_64.sh

@ -5,6 +5,6 @@ XBPS_TARGET_QEMU_MACHINE="x86_64"
XBPS_CROSS_TRIPLET="x86_64-linux-gnu"
XBPS_CROSS_CFLAGS="-mtune=generic"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS=""
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="x86_64-unknown-linux-gnu"

13
common/environment/build-style/void-cross.sh

@ -0,0 +1,13 @@
lib32disabled=yes
nopie=yes
create_wrksrc=yes
nostrip_files+=" libcaf_single.a libgcc.a libgcov.a libgcc_eh.a
libgnarl_pic.a libgnarl.a libgnat_pic.a libgnat.a libgmem.a"
# glibc crosstoolchains not available on musl hosts yet
if [ -z "$archs" -a "${cross_triplet/-musl}" = "${cross_triplet}" ]; then
if [ "$XBPS_TARGET_LIBC" != "glibc" ]; then
archs="~*-musl"
fi
fi

12
common/environment/configure/gnu-configure-args.sh

@ -4,8 +4,12 @@ if [ -n "$build_style" -a "$build_style" != "gnu-configure" ]; then
return 0
fi
# Store args from template so they can be included last and override
# our defaults
TEMPLATE_CONFIGURE_ARGS="${configure_args}"
export configure_args="--prefix=/usr --sysconfdir=/etc --sbindir=/usr/bin --bindir=/usr/bin
--mandir=/usr/share/man --infodir=/usr/share/info --localstatedir=/var ${configure_args}"
--mandir=/usr/share/man --infodir=/usr/share/info --localstatedir=/var"
. ${XBPS_COMMONDIR}/build-profiles/${XBPS_MACHINE}.sh
export configure_args+=" --host=$XBPS_TRIPLET --build=$XBPS_TRIPLET"
@ -29,12 +33,18 @@ esac
# Cross compilation vars
if [ -z "$CROSS_BUILD" ]; then
export configure_args+=" ${TEMPLATE_CONFIGURE_ARGS}"
unset TEMPLATE_CONFIGURE_ARGS
set +a
return 0
fi
export configure_args+=" --host=$XBPS_CROSS_TRIPLET --with-sysroot=$XBPS_CROSS_BASE --with-libtool-sysroot=$XBPS_CROSS_BASE "
export configure_args+=" ${TEMPLATE_CONFIGURE_ARGS}"
unset TEMPLATE_CONFIGURE_ARGS
# Read autoconf cache variables for cross target (taken from OE).
case "$XBPS_TARGET_MACHINE" in
# musl libc

2
common/environment/configure/hardening.sh

@ -19,10 +19,12 @@ if [ -z "$nopie" ]; then
# Enable FORITFY_SOURCE=2
CFLAGS="-fstack-clash-protection -D_FORTIFY_SOURCE=2 ${CFLAGS}"
CXXFLAGS="-fstack-clash-protection -D_FORTIFY_SOURCE=2 ${CXXFLAGS}"
FFLAGS="-fstack-clash-protection ${FFLAGS}"
LDFLAGS="-Wl,-z,relro -Wl,-z,now ${LDFLAGS}"
fi
else
CFLAGS="-fno-PIE ${CFLAGS}"
CXXFLAGS="-fno-PIE ${CFLAGS}"
FFLAGS="-fno-PIE ${FFLAGS}"
LDFLAGS="-no-pie ${LDFLAGS}"
fi

14
common/hooks/pre-pkg/99-pkglint-subpkgs.sh

@ -38,13 +38,17 @@ hook() {
/subpackages/s/.*"//p
s/".*//p
}' $XBPS_SRCPKGDIR/$pkgname/template |
tr ' ' '\n' | sort)"
tr '\v\t\r\n' ' ')"
for s in $subpkgs; do
grep -q "^$s$" <<< "$matches" ||
msg_warn "${s}_package() defined but will never be built.\n"
case " $matches " in
*" $s "*) ;;
*) msg_warn "${s}_package() defined but will never be built.\n" ;;
esac
done
grep -q "^$pkgname$" <<< "$matches" &&
msg_warn "$pkgname is sourcepkg but is in subpackages=.\n" || :
case " $matches " in
*" $pkgname "*)
msg_warn "$pkgname is sourcepkg but is in subpackages=.\n" ;;
esac
}

12
common/shlibs

@ -541,7 +541,7 @@ libakonadi-filestore.so.5 kdepim-runtime-17.12.3_1
libmaildir.so.5 kdepim-runtime-17.12.3_1
libfolderarchivesettings.so.5 kdepim-runtime-17.12.3_1
libkColorPicker.so.0.1.4 kColorPicker-0.1.4_1
libkImageAnnotator.so.0.3.2 kImageAnnotator-0.3.2_1
libkImageAnnotator.so.0.4.0 kImageAnnotator-0.4.0_1
libbabl-0.1.so.0 babl-0.1.16_1
libbamf3.so.2 bamf-0.5.1_1
libicuio.so.67 icu-libs-67.1_1
@ -1381,7 +1381,7 @@ libkworkspace5.so.5 kworkspace-5.14.5_2
libdb-5.3.so libdb-5.3.21_1
libdb_cxx-5.3.so libdb-cxx-5.3.21_1
libcares.so.2 c-ares-1.10.0_1
libcryptopp.so.8 crypto++-820_1
libcryptopp.so.8 crypto++-8.3.0_1
libdbusmenu-glib.so.4 libdbusmenu-glib-12.10.2_1
libdbusmenu-gtk3.so.4 libdbusmenu-gtk3-12.10.2_1
libGrantlee_Templates.so.5 grantlee5-5.0.0_1
@ -3175,7 +3175,7 @@ libvted-3.so.0 libvted-3.7.0_2
libpeasd-3.so.0 libpeasd-3.7.0_2
libgstreamerd-3.so.0 libgstreamerd-3.7.0_2
libgtkdgl-3.so.0 libgtkdgl-3.7.0_2
libmega.so.30602 MEGAsdk-3.6.2a_1
libmega.so.30703 MEGAsdk-3.7.3c_1
libopenglrecorder.so.0 libopenglrecorder-0.1.0_1
libgpod.so.4 libgpod-0.8.3_1
libi2c.so.0 i2c-tools-4.0_1
@ -3630,7 +3630,7 @@ libcaf_openssl.so.0.17.6 zeek-3.2.0_1
libbinpac.so.0 zeek-3.1.1_1
libllhttp.so.1 llhttp-1.0.1_1
libpinyin.so.13 libpinyin-2.2.1_1
libuhd.so.3.15.0 uhd-3.15.0.0_1
libuhd.so.4.0.0 uhd-4.0.0.0_1
libeditline.so.1 editline-1.16.0_1
libgnuradio-rds.so.1 gnuradio-rds-3.8.0_1
libgnuradio-nrsc5-1.0.0git.so.0.0.0 gnuradio-nrsc5-1.0.0_1
@ -3697,7 +3697,7 @@ libbitcoin-server.so.0 libbitcoin-server-3.5.0_1
libvpd-2.2.so.2 libvpd-2.2.6_1
libvpd_cxx-2.2.so.2 libvpd-2.2.6_1
liblcf.so.0 liblcf-0.6.0_1
liboblibs.so.0.0 oblibs-0.0.1.1_1
liboblibs.so.0.1 oblibs-0.1.1.1_1
libaal-1.0.so.7 libaal-1.0.7_1
libaal-minimal.so.0 libaal-1.0.7_1
libcli.so.1.9 libcli-1.9.8.4_1
@ -3717,7 +3717,7 @@ libircclient.so.1 libircclient-1.10_1
libFAudio.so.0 FAudio-19.05_1
libqaccessibilityclient-qt5.so.0 libqaccessibilityclient-0.4.0_1
libnitrokey.so.3 libnitrokey-3.4.1_1
libceres.so.1 ceres-solver-1.14.0_1
libceres.so.2 ceres-solver-2.0.0_1
libgraphene-1.0.so.0 graphene-1.8.2_1
libflite.so.1 flite-2.1_1
libflite_cmu_us_kal.so.1 flite-2.1_1

6
common/travis/license.lst

@ -14,6 +14,7 @@ AGPL-3.0-or-later
AMDPLPA
AML
AMPAS
ANTLR-PD-fallback
ANTLR-PD
APAFML
APL-1.0
@ -52,6 +53,7 @@ BSD-4-Clause
BSD-Protection
BSD-Source-Code
BSL-1.0
BUSL-1.1
Bahyph
Barr
Beerware
@ -68,6 +70,7 @@ CC-BY-1.0
CC-BY-2.0
CC-BY-2.5
CC-BY-3.0-AT
CC-BY-3.0-US
CC-BY-3.0
CC-BY-4.0
CC-BY-NC-1.0
@ -92,6 +95,7 @@ CC-BY-ND-2.5
CC-BY-ND-3.0
CC-BY-ND-4.0
CC-BY-SA-1.0
CC-BY-SA-2.0-UK
CC-BY-SA-2.0
CC-BY-SA-2.5
CC-BY-SA-3.0-AT
@ -194,6 +198,7 @@ Glide
Glulxe
HPND-sell-variant
HPND
HTMLTIDY
HaskellReport
Hippocratic-2.1
IBM-pibs
@ -244,6 +249,7 @@ MIT-CMU
MIT-advertising
MIT-enna
MIT-feh
MIT-open-group
MIT
MITNFA
MPL-1.0

3
common/xbps-src/libexec/build.sh

@ -41,9 +41,6 @@ check_pkg_arch $XBPS_CROSS_BUILD
if [ -z "$XBPS_CROSS_PREPARE" ]; then
prepare_cross_sysroot $XBPS_CROSS_BUILD || exit $?
fi
if [ -z "$XBPS_DEPENDENCY" -a -z "$XBPS_TEMP_MASTERDIR" -a -n "$XBPS_KEEP_ALL" -a "$XBPS_CHROOT_CMD" = "proot" ]; then
remove_pkg_autodeps
fi
# Install dependencies from binary packages
if [ "$PKGNAME" != "$XBPS_TARGET_PKG" -o -z "$XBPS_SKIP_DEPS" ]; then
install_pkg_deps $PKGNAME $XBPS_TARGET_PKG pkg $XBPS_CROSS_BUILD $XBPS_CROSS_PREPARE || exit $?

2
common/xbps-src/shutils/chroot.sh

@ -69,7 +69,7 @@ $(grep -E '^XBPS_.*' "$XBPS_CONFIG_FILE")
XBPS_MASTERDIR=/
XBPS_CFLAGS="$XBPS_CFLAGS"
XBPS_CXXFLAGS="$XBPS_CXXFLAGS"
XBPS_FFLAGS="-fPIC -pipe"
XBPS_FFLAGS="$XBPS_FFLAGS"
XBPS_CPPFLAGS="$XBPS_CPPFLAGS"
XBPS_LDFLAGS="$XBPS_LDFLAGS"
XBPS_HOSTDIR=/host

10
common/xbps-src/shutils/common.sh

@ -342,7 +342,7 @@ setup_pkg() {
if [ -n "$cross" ]; then
source_file $XBPS_CROSSPFDIR/${cross}.sh
_vars="TARGET_MACHINE CROSS_TRIPLET CROSS_CFLAGS CROSS_CXXFLAGS TARGET_QEMU_MACHINE"
_vars="TARGET_MACHINE CROSS_TRIPLET CROSS_CFLAGS CROSS_CXXFLAGS CROSS_FFLAGS TARGET_QEMU_MACHINE"
for f in ${_vars}; do
eval val="\$XBPS_$f"
if [ -z "$val" ]; then
@ -507,7 +507,7 @@ setup_pkg() {
export CFLAGS="$XBPS_CFLAGS $XBPS_CROSS_CFLAGS $CFLAGS $dbgflags"
export CXXFLAGS="$XBPS_CXXFLAGS $XBPS_CROSS_CXXFLAGS $CXXFLAGS $dbgflags"
export FFLAGS="$XBPS_FFLAGS $XBPS_CROSS_FFLAGS $FFLAGS"
export FFLAGS="$XBPS_FFLAGS $XBPS_CROSS_FFLAGS $FFLAGS $dbgflags"
export CPPFLAGS="$XBPS_CPPFLAGS $XBPS_CROSS_CPPFLAGS $CPPFLAGS"
export LDFLAGS="$XBPS_LDFLAGS $XBPS_CROSS_LDFLAGS $LDFLAGS"
@ -571,6 +571,7 @@ setup_pkg() {
export CXXFLAGS_target="$CXXFLAGS"
export CPPFLAGS_target="$CPPFLAGS"
export LDFLAGS_target="$LDFLAGS"
export FFLAGS_target="$FFLAGS"
# Host tools
export CC_host="cc"
export CXX_host="g++"
@ -591,6 +592,7 @@ setup_pkg() {
export CXXFLAGS_host