Commit graph

85 commits

Author SHA1 Message Date
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
Enno Boland
b842440e76 build-style/cmake.sh: fix result code invalid invertation 2017-11-22 12:55:35 +01:00
maxice8
dd231e7a14 build-style/cmake.sh: add generic do_check function.
Closes #9391.
2017-11-21 12:33:38 +01:00
maxice8
9eea97221e build-style/perl-ModuleBuild.sh: add generic do_check function.
Closes #9408.
2017-11-21 11:51:08 +01:00
Leah Neukirchen
30cfeb722b build-style/gnu-makefile.sh: use "make check" if available. 2017-11-20 13:26:29 +01:00
Leah Neukirchen
6caa3ad3be build-style/configure.sh: use "make check" if available. 2017-11-20 13:26:29 +01:00
Leah Neukirchen
c8e8f4276b build-style/gnu-configure.sh: warn, don't fail if "make check" is not implemented.
Closes #9348.
2017-11-20 13:26:29 +01:00
maxice8
0285924292 build-style/perl-module.sh: use generic do_check function 2017-11-20 07:18:29 +01:00
Enno Boland
0d446641e7 build-style/gnu-configure.sh: use generic do_check function 2017-11-19 20:50:48 +01:00
Enno Boland
2d678d4188 build-style/cmake.sh: reset working dir to wrksrc after do_install 2017-11-18 21:25:50 +01:00
John
568df64d8e meson: fix cpp cross compilation 2017-09-30 14:20:47 +02:00
Enno Boland
daa28fbae0 Merge pull request #7801 from pbui/meson-cross
meson: add preliminary support for cross compilation
2017-09-26 09:34:01 +02:00
Leah Neukirchen
eae6f47e26 common/build-style/perl-module.sh: Config_heavy.pl doesn't have a .pm extensions. 2017-09-25 16:57:31 +02:00
Leah Neukirchen
1001188a07 common/build-style/perl-module.sh: don't try to copy new core_perl/Config/ dir. 2017-09-25 15:34:16 +02:00
Peter Bui
d1439f814b meson: add preliminary support for cross compilation 2017-09-24 10:02:07 -04:00
Andrea Brancaleoni
34a5df059d build-style: check for Gopkg.{toml,lock} in go 2017-09-17 23:58:52 +02:00
Andrea Brancaleoni
d8f6972200 New package: dep 2017-09-17 23:58:52 +02:00
Alessio Sergi
8742e48972 build-style/python{2,3}-module: do not use custom build directory
There is no need to use a custom build directory for python{2,3}-only
modules.

This indirectly fixes our issues with packages that use distutils-extra.
2017-08-25 16:17:12 +02:00
Leah Neukirchen
bcfbba40f4 build-style/cmake.sh: $CC and $CXX are good enough for cross-compiling. 2017-08-16 18:09:35 +02:00
Enno Boland
6a493a1da8 Merge pull request #6278 from Gottox/meson-build-style
common/build-style: add meson build style
2017-07-20 12:53:31 +02:00
Dominic Monroe
36ac446b2a haskell-stack: Add support for stack.yaml in source 2017-06-26 23:21:09 -07:00
Florian Wagner
f2c0f7885e Add and document R-cran build style; support CRAN in update-check. 2017-06-08 13:32:40 +02:00
Enno Boland
14cf5b95d2 common/build-style: add meson build style
also use build_style=meson in all templates that use meson.
2017-05-23 14:18:01 +02:00
Toyam Cox
2b19b7eb58 build_style/gnu-makefile: allow good makefiles 2017-04-25 16:20:59 -04:00
Leah Neukirchen
8475a07947 stack: update to 1.4.0. 2017-04-13 12:05:24 +02:00
Jürgen Buchmüller
ecf16a91da build-style qmake: detect qmake w/o qtchooser
Instead of relying on qtchooser to provide the link to the qmake
binary for Qt4 or Qt5 test for either version and use that.
Sometimes qtchooser can fail if e.g. a package was built with Qt4
and after that another package with Qt5 without zapping the masterdir.
2017-03-21 19:35:01 +01:00
Jürgen Buchmüller
6082bbfaf3 build-style qmake: set QMAKE_{CC,CXX,LINK} 2017-03-07 02:03:35 +01:00
Jürgen Buchmüller
8679124272 build-style cmake: replace -isystem with -I
Many packages depending on Qt5 or Qt4 and built with cmake
generate "flags.make" files with -isystem for include paths.
With gcc6 this results in e.g. "#include_next <stdlib.h>" giving
an error, because a -isystem /usr/include is in the wrong place.
The simple fix is to replace "-isystem" with just "-I".
2017-01-15 02:50:14 +01:00
Alessio Sergi
2014e03dac Revert "common/buildstyle/python*: build dir can be used as python identifier"
This reverts commit a02132b2ae.

Actually, the issue with packages using python-distutils-extra hasn't
been solved. On the contrary, python build style now generates malformed
packages, e.g., gufw:

+-- usr
    +-- lib
    |   +-- python3.5
    |       +-- site-packages
    |           +-- build3_5
    |           |   +-- lib
    |           |       +-- gufw
    |           |           +-- __init__.py
    |           |           +-- gufw
    |           |           +-- gufw.py
    |           +-- gufw
    |           |   +-- __init__.py
    |           |   +-- gufw
    |           |   +-- gufw.py
    |           +-- gufw-17.04.1-py3.5.egg-info

I don't have a clean solution handy right now, but that obviously isn't.
2017-01-12 12:27:12 +01:00
Enno Boland
a02132b2ae common/buildstyle/python*: build dir can be used as python identifier
in order to make gufw installation process work, it includes itself
while installing. this raise the need that the build directory needs
to be a valid python identifier too. this commit solves this issue.
2017-01-05 20:53:47 +01:00
Christian Neukirchen
088dda2191 environment/build-style/haskell-stack.sh: hostmakedepend automatically on ghc and stack. 2016-12-18 15:28:54 +01: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
Christian Neukirchen
a91c8dcdfe build-style/qmake.sh: set CC/CXX/LINK. 2016-10-05 14:03:16 +02:00
Christian Neukirchen
814fb802ad build-style/perl-module.sh: fake Errno.pm too. 2016-08-29 16:23:26 +02:00
Christian Neukirchen
5b37844952 build-style/perl-module.sh: use target Config*pm files
These contain the proper CFLAGS.
2016-08-29 15:06:04 +02:00