Merge pull request #205265 from wegank/mygui-darwin
This commit is contained in:
commit
e388728ddf
3 changed files with 68 additions and 8 deletions
|
@ -1,9 +1,24 @@
|
|||
{ lib, stdenv, fetchFromGitHub, libX11, cmake, ois, freetype, libuuid,
|
||||
boost, pkg-config, withOgre ? false, ogre ? null, libGL, libGLU ? null } :
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, pkg-config
|
||||
, boost
|
||||
, freetype
|
||||
, libuuid
|
||||
, ois
|
||||
, withOgre ? false
|
||||
, ogre
|
||||
, libGL
|
||||
, libGLU
|
||||
, libX11
|
||||
, Cocoa
|
||||
}:
|
||||
|
||||
let
|
||||
renderSystem = if withOgre then "3" else "4";
|
||||
in stdenv.mkDerivation rec {
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mygui";
|
||||
version = "3.4.0";
|
||||
|
||||
|
@ -14,17 +29,42 @@ in stdenv.mkDerivation rec {
|
|||
sha256 = "0a4zi8w18pjj813n7kmxldl1d9r1jp0iyhkw7pbqgl8f7qaq994w";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config ];
|
||||
buildInputs = [ libX11 ois freetype libuuid boost ]
|
||||
++ (if withOgre then [ ogre ] else [ libGL libGLU ]);
|
||||
patches = [
|
||||
./disable-framework.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
boost
|
||||
freetype
|
||||
libuuid
|
||||
ois
|
||||
] ++ lib.optionals withOgre [
|
||||
ogre
|
||||
] ++ lib.optionals (!withOgre && stdenv.isLinux) [
|
||||
libGL
|
||||
libGLU
|
||||
] ++ lib.optionals stdenv.isLinux [
|
||||
libX11
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
Cocoa
|
||||
];
|
||||
|
||||
# Tools are disabled due to compilation failures.
|
||||
cmakeFlags = [ "-DMYGUI_BUILD_TOOLS=OFF" "-DMYGUI_BUILD_DEMOS=OFF" "-DMYGUI_RENDERSYSTEM=${renderSystem}" ];
|
||||
cmakeFlags = [
|
||||
"-DMYGUI_BUILD_TOOLS=OFF"
|
||||
"-DMYGUI_BUILD_DEMOS=OFF"
|
||||
"-DMYGUI_RENDERSYSTEM=${renderSystem}"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://mygui.info/";
|
||||
description = "Library for creating GUIs for games and 3D applications";
|
||||
license = licenses.lgpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
19
pkgs/development/libraries/mygui/disable-framework.patch
Normal file
19
pkgs/development/libraries/mygui/disable-framework.patch
Normal file
|
@ -0,0 +1,19 @@
|
|||
diff --git a/CMake/Utils/MyGUIConfigTargets.cmake b/CMake/Utils/MyGUIConfigTargets.cmake
|
||||
index bba3f91..8f4f351 100644
|
||||
--- a/CMake/Utils/MyGUIConfigTargets.cmake
|
||||
+++ b/CMake/Utils/MyGUIConfigTargets.cmake
|
||||
@@ -477,14 +477,6 @@ function(mygui_config_lib PROJECTNAME)
|
||||
if (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "Intel")
|
||||
# add GCC visibility flags to shared library build
|
||||
set_target_properties(${PROJECTNAME} PROPERTIES COMPILE_FLAGS "${MYGUI_GCC_VISIBILITY_FLAGS}")
|
||||
- if (APPLE)
|
||||
- # deal with Mac OS X's framework system
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES FRAMEWORK TRUE)
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES PUBLIC_HEADER "${${PROJECTNAME}_HEADERS}")
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES OUTPUT_NAME ${PROJECTNAME})
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES BUILD_WITH_INSTALL_RPATH TRUE)
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES INSTALL_NAME_DIR "@executable_path/../Frameworks")
|
||||
- endif (APPLE)
|
||||
endif ()
|
||||
endif (MYGUI_STATIC)
|
||||
mygui_install_target(${PROJECTNAME} "")
|
|
@ -21707,6 +21707,7 @@ with pkgs;
|
|||
mygpoclient = with python3.pkgs; toPythonApplication mygpoclient;
|
||||
|
||||
mygui = callPackage ../development/libraries/mygui {
|
||||
inherit (darwin.apple_sdk.frameworks) Cocoa;
|
||||
ogre = ogre1_9;
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue