diff --git a/pkgs/applications/graphics/openimageio/2.x.nix b/pkgs/applications/graphics/openimageio/2.x.nix new file mode 100644 index 000000000000..f2e8eee9940b --- /dev/null +++ b/pkgs/applications/graphics/openimageio/2.x.nix @@ -0,0 +1,60 @@ +{ stdenv +, fetchFromGitHub +, boost +, cmake +, ilmbase +, libjpeg +, libpng +, libtiff +, opencolorio +, openexr +, robin-map +, unzip +}: + +stdenv.mkDerivation rec { + pname = "openimageio"; + version = "2.0.8"; + + src = fetchFromGitHub { + owner = "OpenImageIO"; + repo = "oiio"; + rev = "Release-${version}"; + sha256 = "0nk72h7q1n664b268zkhibb7a3i7fb3nl2z7fg31ys5r9zlq6mnp"; + }; + + outputs = [ "bin" "out" "dev" "doc" ]; + + nativeBuildInputs = [ + cmake + unzip + ]; + + buildInputs = [ + boost + ilmbase + libjpeg + libpng + libtiff + opencolorio + openexr + robin-map + ]; + + cmakeFlags = [ + "-DUSE_PYTHON=OFF" + "-DUSE_QT=OFF" + # GNUInstallDirs + "-DCMAKE_INSTALL_BINDIR=${placeholder "bin"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=lib" # needs relative path for pkgconfig + ]; + + meta = with stdenv.lib; { + homepage = http://www.openimageio.org; + description = "A library and tools for reading and writing images"; + license = licenses.bsd3; + maintainers = with maintainers; [ goibhniu jtojnar ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/applications/graphics/openimageio/default.nix b/pkgs/applications/graphics/openimageio/default.nix index f405ca01200d..a3fc0ea46f43 100644 --- a/pkgs/applications/graphics/openimageio/default.nix +++ b/pkgs/applications/graphics/openimageio/default.nix @@ -3,7 +3,7 @@ }: stdenv.mkDerivation rec { - name = "openimageio-${version}"; + pname = "openimageio"; version = "1.8.16"; src = fetchFromGitHub { @@ -15,28 +15,25 @@ stdenv.mkDerivation rec { outputs = [ "bin" "out" "dev" "doc" ]; - nativeBuildInputs = [ cmake ]; + nativeBuildInputs = [ cmake unzip ]; buildInputs = [ boost ilmbase libjpeg libpng libtiff opencolorio openexr - unzip ]; cmakeFlags = [ "-DUSE_PYTHON=OFF" + # GNUInstallDirs + "-DCMAKE_INSTALL_BINDIR=${placeholder "bin"}/bin" ]; - preBuild = '' - makeFlags="ILMBASE_HOME=${ilmbase.dev} OPENEXR_HOME=${openexr.dev} USE_PYTHON=0 - INSTALLDIR=$out dist_dir=" - ''; - - postInstall = '' - mkdir -p $bin - mv $out/bin $bin/ - ''; - - enableParallelBuilding = true; + makeFlags = [ + "ILMBASE_HOME=${ilmbase.dev}" + "OPENEXR_HOME=${openexr.dev}" + "USE_PYTHON=0" + "INSTALLDIR=${placeholder "out"}" + "dist_dir=" + ]; meta = with stdenv.lib; { homepage = http://www.openimageio.org; diff --git a/pkgs/development/libraries/robin-map/default.nix b/pkgs/development/libraries/robin-map/default.nix new file mode 100644 index 000000000000..87c855251e0f --- /dev/null +++ b/pkgs/development/libraries/robin-map/default.nix @@ -0,0 +1,26 @@ +{ stdenv +, fetchFromGitHub +, cmake +}: + +stdenv.mkDerivation rec { + pname = "robin-map"; + version = "0.6.1"; + + src = fetchFromGitHub { + owner = "Tessil"; + repo = pname; + rev = "v${version}"; + sha256 = "0blvvbr14f0drbd6dp0cs8x4ng3ppb5i72dmhk43ylg6yjgh4fhq"; + }; + + nativeBuildInputs = [ cmake ]; + + meta = with stdenv.lib; { + homepage = https://github.com/Tessil/robin-map; + description = "C++ implementation of a fast hash map and hash set using robin hood hashing"; + license = licenses.mit; + maintainers = with maintainers; [ goibhniu jtojnar ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9954f6ff4413..786d713e4d42 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19375,6 +19375,8 @@ in stdenv = overrideCC stdenv gcc6; }; + openimageio2 = callPackage ../applications/graphics/openimageio/2.x.nix { }; + openjump = callPackage ../applications/misc/openjump { }; openorienteering-mapper = libsForQt5.callPackage ../applications/gis/openorienteering-mapper { }; @@ -23509,6 +23511,8 @@ in redis-desktop-manager = libsForQt5.callPackage ../applications/misc/redis-desktop-manager { }; + robin-map = callPackage ../development/libraries/robin-map { }; + robo3t = callPackage ../applications/misc/robo3t { }; rucksack = callPackage ../development/tools/rucksack { };