gts: Fix cross compilation
gts generate binaries during the build process that are used during the build process. When building cross-platform, these binaries are not executable as they are built with for the target platform instead of the host platform. The boostrap build introduced here will first build gts natively and then cross-platform, using the native binaries in the cross-build.
This commit is contained in:
parent
ef55e4b525
commit
b935375bec
@ -1,4 +1,4 @@
|
||||
{ fetchurl, stdenv, pkgconfig, autoreconfHook, gettext, glib }:
|
||||
{ fetchurl, stdenv, pkgconfig, autoreconfHook, gettext, glib, buildPackages }:
|
||||
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -12,12 +12,26 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "07mqx09jxh8cv9753y2d2jsv7wp8vjmrd7zcfpbrddz3wc9kx705";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig autoreconfHook ];
|
||||
nativeBuildInputs = [
|
||||
pkgconfig
|
||||
autoreconfHook
|
||||
glib # required to satisfy AM_PATH_GLIB_2_0
|
||||
];
|
||||
buildInputs = [ gettext ];
|
||||
propagatedBuildInputs = [ glib ];
|
||||
|
||||
doCheck = false; # fails with "permission denied"
|
||||
|
||||
preBuild = stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
|
||||
pushd src
|
||||
make CC=${buildPackages.stdenv.cc}/bin/cc predicates_init
|
||||
mv predicates_init predicates_init_build
|
||||
make clean
|
||||
popd
|
||||
|
||||
substituteInPlace src/Makefile --replace "./predicates_init" "./predicates_init_build"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "http://gts.sourceforge.net/";
|
||||
license = stdenv.lib.licenses.lgpl2Plus;
|
||||
|
Loading…
Reference in New Issue
Block a user