Merge pull request #144798 from marius851000/openmw047

openmw: 0.46 -> 0.47
This commit is contained in:
Thiago Kenji Okada 2021-11-11 12:06:25 -03:00 committed by GitHub
commit fced082cc6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 112 additions and 18 deletions

View file

@ -0,0 +1,35 @@
{ stdenv, lib, fetchFromGitHub, cmake, boost, libxml2, minizip, readline }:
stdenv.mkDerivation {
pname = "collada-dom";
version = "unstable-2020-01-03";
src = fetchFromGitHub {
owner = "rdiankov";
repo = "collada-dom";
rev = "c1e20b7d6ff806237030fe82f126cb86d661f063";
sha256 = "sha256-A1ne/D6S0shwCzb9spd1MoSt/238HWA8dvgd+DC9cXc=";
};
postInstall = ''
chmod +w -R $out
ln -s $out/include/*/* $out/include
'';
nativeBuildInputs = [ cmake ];
buildInputs = [
boost
libxml2
minizip
readline
];
meta = with lib; {
description = "Lightweight version of collada-dom, with only the parser.";
homepage = "https://github.com/rdiankov/collada-dom";
license = licenses.mit;
maintainers = with maintainers; [ marius851000 ];
platforms = platforms.all;
};
}

View file

@ -2,6 +2,7 @@
libX11, libXinerama, libXrandr, libGLU, libGL,
glib, ilmbase, libxml2, pcre, zlib,
AGL, Carbon, Cocoa, Foundation,
boost,
jpegSupport ? true, libjpeg,
exrSupport ? false, openexr,
gifSupport ? true, giflib,
@ -9,7 +10,7 @@
tiffSupport ? true, libtiff,
gdalSupport ? false, gdal,
curlSupport ? true, curl,
colladaSupport ? false, opencollada,
colladaSupport ? false, collada-dom,
opencascadeSupport ? false, opencascade,
ffmpegSupport ? false, ffmpeg,
nvttSupport ? false, nvidia-texture-tools,
@ -20,7 +21,7 @@
lasSupport ? false, libLAS,
luaSupport ? false, lua,
sdlSupport ? false, SDL2,
restSupport ? false, asio, boost,
restSupport ? false, asio,
withApps ? false,
withExamples ? false, fltk, wxGTK,
}:
@ -48,7 +49,7 @@ stdenv.mkDerivation rec {
++ lib.optional tiffSupport libtiff
++ lib.optional gdalSupport gdal
++ lib.optional curlSupport curl
++ lib.optional colladaSupport opencollada
++ lib.optional colladaSupport collada-dom
++ lib.optional opencascadeSupport opencascade
++ lib.optional ffmpegSupport ffmpeg
++ lib.optional nvttSupport nvidia-texture-tools
@ -59,9 +60,10 @@ stdenv.mkDerivation rec {
++ lib.optional lasSupport libLAS
++ lib.optional luaSupport lua
++ lib.optional sdlSupport SDL2
++ lib.optionals restSupport [ asio boost ]
++ lib.optional restSupport asio
++ lib.optionals withExamples [ fltk wxGTK ]
++ lib.optionals stdenv.isDarwin [ AGL Carbon Cocoa Foundation ]
++ lib.optional (restSupport || colladaSupport) boost
;
cmakeFlags = lib.optional (!withApps) "-DBUILD_OSG_APPLICATIONS=OFF" ++ lib.optional withExamples "-DBUILD_OSG_EXAMPLES=ON";

View file

@ -0,0 +1,27 @@
{ stdenv, lib, fetchFromGitHub, cmake, libGL, SDL2, libGLU }:
stdenv.mkDerivation rec {
pname = "recastai";
# use latest revision for the CMake build process and OpenMW
# OpenMW use e75adf86f91eb3082220085e42dda62679f9a3ea
version = "unstable-2021-03-05";
src = fetchFromGitHub {
owner = "recastnavigation";
repo = "recastnavigation";
rev = "c5cbd53024c8a9d8d097a4371215e3342d2fdc87";
sha256 = "sha256-QP3lMMFR6fiKQTksAkRL6X9yaoVz2xt4QSIP9g6piww=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ libGL SDL2 libGLU ];
meta = with lib; {
homepage = "https://github.com/recastnavigation/recastnavigation";
description = "Navigation-mesh Toolset for Games";
license = licenses.zlib;
maintainers = with maintainers; [ marius851000 ];
platforms = platforms.all;
};
}

View file

@ -13,29 +13,46 @@
, unshield
, openal
, libXt
, lz4
, recastnavigation
}:
let
openscenegraph_ = openscenegraph.overrideDerivation (self: {
openscenegraph_openmw = (openscenegraph.override { colladaSupport = true; })
.overrideDerivation (self: {
src = fetchFromGitHub {
owner = "OpenMW";
repo = "osg";
rev = "bbe61c3bc510a4f5bb4aea21cce506519c2d24e6";
sha256 = "sha256-t3smLqstp7wWfi9HXJoBCek+3acqt/ySBYF8RJOG6Mo=";
};
});
bullet_openmw = bullet.overrideDerivation (old: rec {
version = "3.17";
src = fetchFromGitHub {
owner = "OpenMW";
repo = "osg";
# commit does not exist on any branch on the target repository
rev = "1556cd7966ebc1c80b6626988d2b25fb43a744cf";
sha256 = "0d74hijzmj82nx3jkv5qmr3pkgvplra0b8fbjx1y3vmzxamb0axd";
owner = "bulletphysics";
repo = "bullet3";
rev = version;
sha256 = "sha256-uQ4X8F8nmagbcFh0KexrmnhHIXFSB3A1CCnjPVeHL3Q=";
};
patches = [];
cmakeFlags = (old.cmakeFlags or []) ++ [
"-DUSE_DOUBLE_PRECISION=ON"
"-DBULLET2_MULTITHREADING=ON"
];
});
in
mkDerivation rec {
version = "0.46.0";
pname = "openmw";
version = "0.47.0";
src = fetchFromGitHub {
owner = "OpenMW";
repo = "openmw";
rev = "${pname}-${version}";
sha256 = "0rm32zsmxvr6b0jjihfj543skhicbw5kg6shjx312clhlm035w2x";
sha256 = "sha256-Xq9hDUTCQr79Zzjk0CsiXclVTHK6nrSowukIQqVdrKY=";
};
nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
@ -43,26 +60,28 @@ mkDerivation rec {
buildInputs = [
SDL2
boost
bullet
bullet_openmw
ffmpeg
libXt
mygui
openal
openscenegraph_
openscenegraph_openmw
unshield
lz4
recastnavigation
];
cmakeFlags = [
"-DDESIRED_QT_VERSION:INT=5"
# as of 0.46, openmw is broken with GLVND
"-DOpenGL_GL_PREFERENCE=LEGACY"
"-DOPENMW_USE_SYSTEM_RECASTNAVIGATION=1"
];
meta = with lib; {
description = "An unofficial open source engine reimplementation of the game Morrowind";
homepage = "http://openmw.org";
homepage = "https://openmw.org";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ abbradar ];
maintainers = with maintainers; [ abbradar marius851000 ];
platforms = platforms.linux;
};
}

View file

@ -9,6 +9,7 @@
, symlinkJoin
, mygui
, crudini
, bullet
}:
# revisions are taken from https://github.com/GrimKriegor/TES3MP-deploy
@ -70,7 +71,8 @@ let
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ makeWrapper ];
buildInputs = oldAttrs.buildInputs ++ [ luajit ];
buildInputs = (builtins.map (x: if x.pname or "" == "bullet" then bullet else x) oldAttrs.buildInputs)
++ [ luajit ];
cmakeFlags = oldAttrs.cmakeFlags ++ [
"-DBUILD_OPENCS=OFF"
@ -79,6 +81,11 @@ let
"-DRakNet_LIBRARY_DEBUG=${raknet}/lib/libRakNetLibStatic.a"
];
prePatch = ''
substituteInPlace components/process/processinvoker.cpp \
--replace "\"./\"" "\"$out/bin/\""
'';
# https://github.com/TES3MP/openmw-tes3mp/issues/552
patches = [ ./tes3mp.patch ];

View file

@ -15839,6 +15839,8 @@ with pkgs;
cointop = callPackage ../applications/misc/cointop { };
collada-dom = callPackage ../development/libraries/collada-dom { };
cog = callPackage ../development/web/cog { };
cosmopolitan = callPackage ../development/libraries/cosmopolitan { };
@ -19229,6 +19231,8 @@ with pkgs;
readosm = callPackage ../development/libraries/readosm { };
recastnavigation = callPackage ../development/libraries/recastnavigation { };
rinutils = callPackage ../development/libraries/rinutils { };
kissfft = callPackage ../development/libraries/kissfft { };