diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/glew')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/glew/1.10.nix | 26 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/glew/default.nix | 21 |
2 files changed, 30 insertions, 17 deletions
diff --git a/nixpkgs/pkgs/development/libraries/glew/1.10.nix b/nixpkgs/pkgs/development/libraries/glew/1.10.nix index ab2e740cd864..3f355deb33b9 100644 --- a/nixpkgs/pkgs/development/libraries/glew/1.10.nix +++ b/nixpkgs/pkgs/development/libraries/glew/1.10.nix @@ -1,24 +1,25 @@ -{ lib, stdenv, fetchurl, libGLU, xlibsWrapper, libXmu, libXi +{ lib, stdenv, fetchurl, libGLU, libXmu, libXi, libXext , AGL, OpenGL +, testers }: -with lib; - -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "glew"; version = "1.10.0"; src = fetchurl { - url = "mirror://sourceforge/glew/glew-${version}.tgz"; + url = "mirror://sourceforge/glew/${finalAttrs.pname}-${finalAttrs.version}.tgz"; sha256 = "01zki46dr5khzlyywr3cg615bcal32dazfazkf360s1znqh17i4r"; }; - buildInputs = if stdenv.isDarwin then [ AGL ] else [ xlibsWrapper libXmu libXi ]; + buildInputs = if stdenv.isDarwin then [ AGL ] else [ libXmu libXi libXext ]; propagatedBuildInputs = if stdenv.isDarwin then [ OpenGL ] else [ libGLU ]; # GL/glew.h includes GL/glu.h + outputs = [ "out" "dev" ]; + patchPhase = '' sed -i 's|lib64|lib|' config/Makefile.linux - ${optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' + ${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' sed -i -e 's/\(INSTALL.*\)-s/\1/' Makefile ''} ''; @@ -32,8 +33,8 @@ stdenv.mkDerivation rec { postInstall = '' mkdir -pv $out/share/doc/glew - mkdir -p $out/lib/pkgconfig - cp glew*.pc $out/lib/pkgconfig + mkdir -p $dev/lib/pkgconfig + cp glew*.pc $dev/lib/pkgconfig cp -r README.txt LICENSE.txt doc $out/share/doc/glew ''; @@ -41,11 +42,14 @@ stdenv.mkDerivation rec { "SYSTEM=${if stdenv.hostPlatform.isMinGW then "mingw" else stdenv.hostPlatform.parsed.kernel.name}" ]; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { description = "An OpenGL extension loading library for C(++)"; - homepage = "http://glew.sourceforge.net/"; + homepage = "https://glew.sourceforge.net/"; license = licenses.free; # different files under different licenses #["BSD" "GLX" "SGI-B" "GPL2"] + pkgConfigModules = [ "glew" ]; platforms = platforms.mesaPlatforms; }; -} +}) diff --git a/nixpkgs/pkgs/development/libraries/glew/default.nix b/nixpkgs/pkgs/development/libraries/glew/default.nix index 7e281892a1fd..5e1c986be28f 100644 --- a/nixpkgs/pkgs/development/libraries/glew/default.nix +++ b/nixpkgs/pkgs/development/libraries/glew/default.nix @@ -1,14 +1,15 @@ -{ lib, stdenv, fetchurl, fetchpatch, cmake, libGLU, xlibsWrapper, libXmu, libXi +{ lib, stdenv, fetchurl, fetchpatch, cmake, libGLU, libXmu, libXi, libXext , OpenGL , enableEGL ? false +, testers }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "glew"; version = "2.2.0"; src = fetchurl { - url = "mirror://sourceforge/glew/${pname}-${version}.tgz"; + url = "mirror://sourceforge/glew/${finalAttrs.pname}-${finalAttrs.version}.tgz"; sha256 = "1qak8f7g1iswgswrgkzc7idk7jmqgwrs58fhg2ai007v7j4q5z6l"; }; @@ -23,7 +24,7 @@ stdenv.mkDerivation rec { ]; nativeBuildInputs = [ cmake ]; - buildInputs = lib.optionals (!stdenv.isDarwin) [ xlibsWrapper libXmu libXi ]; + buildInputs = lib.optionals (!stdenv.isDarwin) [ libXmu libXi libXext ]; propagatedBuildInputs = if stdenv.isDarwin then [ OpenGL ] else [ libGLU ]; # GL/glew.h includes GL/glu.h cmakeDir = "cmake"; @@ -41,17 +42,25 @@ stdenv.mkDerivation rec { set(GLEW_VERSION "$version") set(GLEW_LIBRARIES GLEW::glew\''${_glew_target_postfix}) get_target_property(GLEW_INCLUDE_DIRS GLEW::glew\''${_glew_target_postfix} INTERFACE_INCLUDE_DIRECTORIES) + set_target_properties(GLEW::GLEW\''${_glew_target_postfix} PROPERTIES + IMPORTED_LINK_INTERFACE_LIBRARIES_RELEASE "" + IMPORTED_IMPLIB_RELEASE "GLEW" + IMPORTED_IMPLIB_DEBUG "GLEW" + ) EOF ''; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { description = "An OpenGL extension loading library for C/C++"; - homepage = "http://glew.sourceforge.net/"; + homepage = "https://glew.sourceforge.net/"; license = with licenses; [ /* modified bsd */ free mit gpl2Only ]; # For full details, see https://github.com/nigels-com/glew#copyright-and-licensing + pkgConfigModules = [ "glew" ]; platforms = with platforms; if enableEGL then subtractLists darwin mesaPlatforms else mesaPlatforms; }; -} +}) |