Commit graph

119 commits

Author SHA1 Message Date
q66 82eec0d023 common/build-style/waf,waf3: explicitly pass libdir
Waf has a utility function ('lib64' in waflib/Utils.py) which
either returns an empty string or '64' depending on if either of
the paths '/usr/lib64' or '/usr/local/lib64' exist. Then, the
build system itself decides its default LIBDIR to be either
/usr/lib or /usr/lib64 depending on the result of that function,
except when libdir is passed explicitly.

We don't allow lib64 in our packages. We do have the /usr/lib64
path as that is a symlink. Therefore, do not ever allow waf to
configure the path that way.
2019-01-26 18:43:09 -02:00
John 9518d3c77c
build-style/cmake: add missing space before closing bracket 2019-01-21 22:52:56 +01:00
maxice8 5512d7e69f
build-style/meson.sh: fix binary name 2019-01-21 02:16:03 -02:00
maxice8 a59075f1d1
build-style/meson.sh: add path to 'rustc' 2019-01-21 01:59:23 -02:00
maxice8 8ddc68306e build-style/cargo: don't manually configure with cargo, use the
environment.
2019-01-20 15:33:10 -02:00
Thomas Batten c785cfd34e common: Add ppc target 2019-01-19 10:15:01 +01:00
Noel Cower e892b46432 build-styles: use go install instead of go build.
Fixes multi-package builds.

[ci skip]
2019-01-18 20:18:52 -08:00
John 6f0fee9429 build-style/cmake: add check fo nodebug flag
[ci skip]
2019-01-17 14:04:27 +00:00
John 6638dc5526 build-style/cmake.sh: Use -DCMAKE_BUILD_TYPE=RelWithDebInfo when having XBPS_DEBUG_PKGS set 2019-01-15 16:15:13 +01:00
Enno Boland 0832e1adfa
build-style/cmake: fix typo 2019-01-05 23:45:27 +01:00
q66 151f876627 common: add ppc64 build profiles and other ppc64 bits
This adds the build profiles for ppc64 targets as well as
modifications in other parts of the infra.

These targets are supported:

- ppc64le (glibc little endian elfv2)
- ppc64le-musl (musl little endian)
- ppc64-musl (musl big endian)

ELFv1 targets are explicitly not supported at this point.

Big endian musl supports ppc 970 or newer, while little endian
targets are set to a generic powerpc64le which effectively means
POWER8 and newer. Tuning is always set for POWER9, which is the
most likely target hardware. We also make sure AltiVec is always
on, because it is supported on all hardware we target.

[ci skip]
2019-01-05 23:38:00 +01:00
Noel Cower 43db1c25dc build-styles: Add support for Go modules.
Adds support for Go modules by detecting a go.mod file and, if
available, using it. In addition, to continue supporting vendoring (and
avoid the need for git on all module builds), if a package includes
a vendor directory, the module mode will switch to vendor mode if not
already set. This will use vendored source code for dependencies
instead of downloading that code again using the descriptions under
go.mod.

go_mod_mode=vendor also skips the go.sum check because nothing is
downloaded that isn't already verified, so this fixes packages with
vendored code that have checksum mismatches due to Go 1.11.4 module
checksum changes.

[ci skip]

Closes: #6036 [via git-merge-pr]
2019-01-02 20:10:56 -08:00
John ee4ce35a68 build-style/cmake: dehardcode gtk2 wxWdigets when cross compiling 2018-11-28 16:49:52 -02:00
Andy Weidenbaum afdfdf9991 build_style=perl6-dist: add 2018-11-26 04:11:50 -02:00
maxice8 c646f89f87 build-style/gem.sh: ignore ~> operator 2018-11-19 02:29:28 -02:00
maxice8 6ce9a1636a build-style/gemspec.sh: ignore ~> operator 2018-11-19 02:29:28 -02:00
maxice8 e946d7cfa2 build-style/gemspec.sh: fix cross compilation 2018-11-03 15:38:33 -03:00
Johannes 3aa797cb3a build-style cargo: move cargo config from wrksrc to home
since cargo 0.31.0 ${wrksrc}/.cargo/config is ignored for cargo install
fixes: https://github.com/void-linux/void-packages/issues/4328
2018-11-02 13:39:53 +01:00
Jürgen Buchmüller 7e0642f4ca build-style: qmake.sh add missing QMAKE_LINK_C=$CC 2018-11-02 12:25:31 +01:00
maxice8 70dce3d920
build-style/gemspec.sh: guard against usage of find on man and etc 2018-11-02 07:41:49 -03:00
maxice8 a8bbc60f5b
build-style/gem.sh: guard usage of find on etc and man 2018-11-02 07:41:36 -03:00
maxice8 03ea181231 build_style: Add gemspec build_style 2018-11-02 07:15:08 -03:00
maxice8 49e11e1ca5 build_style: Add gem build_style 2018-11-02 07:15:08 -03:00
Rasmus Thomsen 0318d0385a build-style/cargo.sh: add 2018-10-15 20:58:51 +02:00
maxice8 58d5cc4105 build-style/meson: enable b_ndebug and be explicit about paths used. 2018-10-09 10:36:32 -03:00
maxice8 b552a5f05d build-style/cmake.sh: set CMAKE_SYSTEM_PROCESSOR on cross-builds 2018-10-04 10:30:10 +02:00
maxice8 ea1b905d26
build-style/meson: enable Link-Time-Optimization by default. 2018-10-01 01:59:37 -03:00
Kyle Nusbaum 422e3461fe Fail go build when $go_import_path is not set
Closes: #2881 [via git-merge-pr]
2018-09-20 22:38:35 -07:00
maxice8 2748e21418
build-style/go.sh: fix indent 2018-09-18 21:41:08 -03:00
maxice8 608f10ea59
build-style/meson: add nm to binaries and export LD, AR, CPPFLAGS and
LDFLAGS.
2018-09-12 21:24:31 -03:00
maxice8 d0562177a5
build-style/meson: define PKG_CONFIG for host usage.
PKG_CONFIG environment variable should point to the pkg-config executable
to be used to fetch dependencies that use 'native: true' (indicate to build
against host libraries not cross-compiled ones)

To meet those requirements we set an absolute path to the host
pkg-config since the relative path to pkg-config is taken by the
wrapper.

This currently requires a patch that is a milestone of meson-0.48 that
was generated by the issue:

https://github.com/mesonbuild/meson/issues/1736
2018-09-10 01:17:05 -03:00
newbluemoon 435f99d4a7
common/build-style/perl-ModuleBuild.sh: use target perl includes 2018-09-08 07:10:55 -03:00
newbluemoon 4528a706ff
common/build-style/perl-module.sh: use target perl includes 2018-09-08 07:10:55 -03:00
maxice8 775ad8deba
build_style/meson: also unset _MESON_CPU_FAMILY. 2018-09-08 05:54:44 -03:00
newbluemoon 5e6ed15aa9 build-style/perl-ModuleBuild.sh: fix cross 2018-08-26 14:06:35 -03:00
maxice8 6580c8d657
build_style/meson.sh: export CFLAGS and CXXFLAGS from host
meson when compiling something with 'native: true' (for building
executables that are meant to be run on the host system) uses CFLAGS
and CXXFLAGS environment variables, we "pollute" them with
TARGET system cflags/cxxflags, such as -march= for the cross-compiled
arch.

so to fix it we export CFLAGS and CXXFLAGS to be CFLAGS_host and
CXXFLAGS_host respectively, they are set by XBPS and correspond to
the XBPS_CFLAGS/XBPS_CXXFLAGS. This same set of changes is also done
with CC and CXX see L#61

this was found when cross-compiling lighttpd which created the
'lemon' executable to generate inputs

thanks to @Cogitri from Exherbo for helping me debug this

[ci skip]
2018-08-16 01:49:38 -03:00
Alessio Sergi b0feeed60e build-styles/waf{,3}: make sure waf uses the correct python version 2018-08-09 19:53:32 +02:00
maxice8 97b348502c meson.sh: Fix cross-compilation
following https://mesonbuild.com/Cross-compilation.html

- host_machine is our XBPS_TARGET_MACHINE
- build_machine is our XBPS_MACHINE, and meson can find out the details
on it's own
- also don't include -musl in the CPU because meson doesn't recognize it
and projects like Mesa (LibGL) don't enable optimizations for it
- cpu_family and cpu are different, they need to be set properly:
 - armv* is arm
 - mips* is mips
 - i686 is x86
 - x86_64 is x86_64
 - aarch64 is aarch64
2018-07-29 14:30:20 -03:00
Leah Neukirchen d4e6c49808 build-style/haskell-stack.sh: init using --system-ghc too. 2018-04-05 14:32:40 +02:00
Piotr Wójcik e1a62f4018 build-style/cmake.sh: fix default do_check 2018-03-09 13:43:10 -05:00
Michael Gehring 5d6b70bd29 common/build-style/scons.sh: fix comment 2018-03-05 20:49:36 +00:00
Enno Boland 4ae8c6e8e8
common/build-style: revert last fix, instead fix a typo 2018-02-26 19:52:04 +01:00
Enno Boland 2f792446a5
common/build-style: do not leak host CFLAGS 2018-02-26 19:19:12 +01:00
Jürgen Buchmüller c43b120be0 perl-module: fall back to use host files
If perl is not installed for the target when cross building a module,
fall back to use the host Config*.p? and Errno.pm files.
2018-02-26 09:35:44 +01:00
newbluemoon 67c20224e0 xbps-src: make cmake find/use the wx-config wrapper 2018-01-09 13:35:09 +01:00
Enno Boland 768fd97393
Revert "build-style/cmake.sh: reset working dir to wrksrc after do_install"
This reverts commit 2d678d4188.
2017-11-29 15:02:01 +01:00
maxice8 84a9ac51db build-style/meson.sh: add generic do_check function.
Closes #9594.

Signed-off-by: Enno Boland <gottox@voidlinux.eu>
2017-11-28 09:37:49 +01:00
Michael Aldridge 92d6e1a521 go build style: move GOPATH creation to do_configure() 2017-11-26 00:41:26 -08:00
hipperson0 fb26ec4a5b New package: cross-mips-linux-muslhf-0.24 2017-11-24 10:11:23 +01:00
Michael Gehring 0adf7415b7 common/build-style/meson.sh: fix comment 2017-11-24 06:44:44 +00:00