Merge pull request #34971 from Twey/master
godot: 2.1.4 -> 3.0 + godot_headers
This commit is contained in:
commit
048724c4af
23
pkgs/development/libraries/godot_headers/default.nix
Normal file
23
pkgs/development/libraries/godot_headers/default.nix
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
{ stdenv, fetchFromGitHub }:
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "godot_headers";
|
||||||
|
version = "2018-02-09";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "GodotNativeTools";
|
||||||
|
repo = "godot_headers";
|
||||||
|
rev = "51bca3bf5d917341f3e15076c5a9191f8a5118ae";
|
||||||
|
sha256 = "0z562pqm8y8wldmfiya72cvwwpvcfznpl0wypagw50v0f41ilywh";
|
||||||
|
};
|
||||||
|
buildPhase = "true";
|
||||||
|
installPhase = ''
|
||||||
|
mkdir $out
|
||||||
|
cp -r . $out/include
|
||||||
|
'';
|
||||||
|
meta = {
|
||||||
|
homepage = "https://github.com/GodotNativeTools/godot_headers/";
|
||||||
|
description = "Headers for the Godot API supplied by the GDNative module";
|
||||||
|
license = stdenv.lib.licenses.mit;
|
||||||
|
platforms = stdenv.lib.platforms.all;
|
||||||
|
maintainers = [ stdenv.lib.maintainers.twey ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,41 +1,54 @@
|
||||||
{ stdenv, fetchFromGitHub, gcc5, scons, pkgconfig, libX11, libXcursor
|
{ stdenv, lib, fetchFromGitHub, scons, pkgconfig, libX11, libXcursor
|
||||||
, libXinerama, libXrandr, libXrender, freetype, openssl, alsaLib
|
, libXinerama, libXrandr, libXrender, libpulseaudio ? null
|
||||||
, libpulseaudio, libGLU, zlib }:
|
, libXi ? null, libXext, libXfixes, freetype, openssl
|
||||||
|
, alsaLib, libGLU, zlib, yasm ? null }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
let
|
||||||
|
options = {
|
||||||
|
touch = libXi != null;
|
||||||
|
pulseaudio = false;
|
||||||
|
};
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
name = "godot-${version}";
|
name = "godot-${version}";
|
||||||
version = "2.1.4";
|
version = "3.0.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "godotengine";
|
owner = "godotengine";
|
||||||
repo = "godot";
|
repo = "godot";
|
||||||
rev = "${version}-stable";
|
rev = "${version}-stable";
|
||||||
sha256 = "0d2zczn5k7296sky5gllq55cxd586nx134y2iwjpkqqjr62g0h48";
|
sha256 = "1ca1zznb7qqn4vf2nfwb8nww5x0k8fc4lwjvgydr6nr2mn70xka4";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
gcc5 scons libX11 libXcursor libXinerama libXrandr libXrender
|
scons libX11 libXcursor libXinerama libXrandr libXrender
|
||||||
freetype openssl alsaLib libpulseaudio libGLU zlib
|
libXi libXext libXfixes freetype openssl alsaLib libpulseaudio
|
||||||
|
libGLU zlib yasm
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = [ ./pkg_config_additions.patch ];
|
patches = [
|
||||||
|
./pkg_config_additions.patch
|
||||||
|
./dont_clobber_environment.patch
|
||||||
|
];
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
scons platform=x11 prefix=$out -j $NIX_BUILD_CORES
|
scons platform=x11 prefix=$out -j $NIX_BUILD_CORES \
|
||||||
|
${lib.concatStringsSep " "
|
||||||
|
(lib.mapAttrsToList (k: v: "${k}=${builtins.toJSON v}") options)}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir $out/bin -p
|
mkdir -p $out/bin
|
||||||
cp bin/godot.* $out/bin/
|
cp bin/godot.x11.tools.* $out/bin/godot
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://godotengine.org";
|
homepage = "https://godotengine.org";
|
||||||
description = "Free and Open Source 2D and 3D game engine";
|
description = "Free and Open Source 2D and 3D game engine";
|
||||||
license = stdenv.lib.licenses.mit;
|
license = stdenv.lib.licenses.mit;
|
||||||
platforms = stdenv.lib.platforms.linux;
|
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||||
|
maintainers = [ stdenv.lib.maintainers.twey ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
16
pkgs/development/tools/godot/dont_clobber_environment.patch
Normal file
16
pkgs/development/tools/godot/dont_clobber_environment.patch
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
+++ build/SConstruct
|
||||||
|
@@ -69,10 +69,10 @@
|
||||||
|
custom_tools = ['mingw']
|
||||||
|
|
||||||
|
env_base = Environment(tools=custom_tools)
|
||||||
|
-if 'TERM' in os.environ:
|
||||||
|
- env_base['ENV']['TERM'] = os.environ['TERM']
|
||||||
|
-env_base.AppendENVPath('PATH', os.getenv('PATH'))
|
||||||
|
-env_base.AppendENVPath('PKG_CONFIG_PATH', os.getenv('PKG_CONFIG_PATH'))
|
||||||
|
+for k in ("TERM", "PATH", "PKG_CONFIG_PATH"):
|
||||||
|
+ if (k in os.environ):
|
||||||
|
+ env_base["ENV"][k] = os.environ[k]
|
||||||
|
+
|
||||||
|
env_base.global_defaults = global_defaults
|
||||||
|
env_base.android_maven_repos = []
|
||||||
|
env_base.android_flat_dirs = []
|
|
@ -1,12 +1,13 @@
|
||||||
+++ build/platform/x11/detect.py
|
+++ b/platform/x11/detect.py
|
||||||
@@ -139,6 +139,10 @@
|
@@ -142,6 +142,11 @@
|
||||||
env.ParseConfig('pkg-config xinerama --cflags --libs')
|
|
||||||
env.ParseConfig('pkg-config xcursor --cflags --libs')
|
env.ParseConfig('pkg-config xcursor --cflags --libs')
|
||||||
|
env.ParseConfig('pkg-config xinerama --cflags --libs')
|
||||||
env.ParseConfig('pkg-config xrandr --cflags --libs')
|
env.ParseConfig('pkg-config xrandr --cflags --libs')
|
||||||
+ env.ParseConfig('pkg-config xrender --cflags --libs')
|
+ env.ParseConfig('pkg-config xrender --cflags --libs')
|
||||||
+ env.ParseConfig('pkg-config oslibGLU_combined --cflags')
|
+ env.ParseConfig('pkg-config xext --cflags --libs')
|
||||||
|
+ env.ParseConfig('pkg-config xfixes --cflags --libs')
|
||||||
+ env.ParseConfig('pkg-config glu --cflags --libs')
|
+ env.ParseConfig('pkg-config glu --cflags --libs')
|
||||||
+ env.ParseConfig('pkg-config zlib --cflags --libs')
|
+ env.ParseConfig('pkg-config zlib --cflags --libs')
|
||||||
|
|
||||||
if (env['builtin_openssl'] == 'no'):
|
if (env['touch']):
|
||||||
# Currently not compatible with OpenSSL 1.1.0+
|
x11_error = os.system("pkg-config xi --modversion > /dev/null ")
|
||||||
|
|
|
@ -2574,6 +2574,7 @@ with pkgs;
|
||||||
gocryptfs = callPackage ../tools/filesystems/gocrypfs { };
|
gocryptfs = callPackage ../tools/filesystems/gocrypfs { };
|
||||||
|
|
||||||
godot = callPackage ../development/tools/godot {};
|
godot = callPackage ../development/tools/godot {};
|
||||||
|
godot_headers = callPackage ../development/libraries/godot_headers {};
|
||||||
|
|
||||||
goklp = callPackage ../tools/networking/goklp {};
|
goklp = callPackage ../tools/networking/goklp {};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue