diff options
author | Alexander Kiselyov <aleksandr.kiselyov@gmail.com> | 2022-01-05 20:44:38 +0300 |
---|---|---|
committer | Alexander Kiselyov <aleksandr.kiselyov@gmail.com> | 2022-01-05 20:44:38 +0300 |
commit | 89f0ae0b70a0dbf21947db3606f7c0ba73030ad5 (patch) | |
tree | a1bcf662f6f4c13756f95abd67d53fc226fd15cf /pkgs | |
parent | d4b954f87cb2daeae2e3198f26a16bb908a9bb6e (diff) | |
download | nixpkgs-89f0ae0b70a0dbf21947db3606f7c0ba73030ad5.tar nixpkgs-89f0ae0b70a0dbf21947db3606f7c0ba73030ad5.tar.gz nixpkgs-89f0ae0b70a0dbf21947db3606f7c0ba73030ad5.tar.bz2 nixpkgs-89f0ae0b70a0dbf21947db3606f7c0ba73030ad5.tar.lz nixpkgs-89f0ae0b70a0dbf21947db3606f7c0ba73030ad5.tar.xz nixpkgs-89f0ae0b70a0dbf21947db3606f7c0ba73030ad5.tar.zst nixpkgs-89f0ae0b70a0dbf21947db3606f7c0ba73030ad5.zip |
cxxopts: unstable-2020-12-14 -> 3.0.0
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/development/libraries/cxxopts/default.nix | 22 | ||||
-rw-r--r-- | pkgs/development/libraries/cxxopts/fix-install-path.patch | 18 |
2 files changed, 33 insertions, 7 deletions
diff --git a/pkgs/development/libraries/cxxopts/default.nix b/pkgs/development/libraries/cxxopts/default.nix index 855a9eef8ea..9d3ea6f32de 100644 --- a/pkgs/development/libraries/cxxopts/default.nix +++ b/pkgs/development/libraries/cxxopts/default.nix @@ -1,21 +1,29 @@ -{ cmake, fetchFromGitHub, icu, lib, pkg-config, stdenv, enableUnicodeHelp ? true }: +{ lib +, stdenv +, fetchFromGitHub +, cmake +, icu +, pkg-config +, enableUnicodeHelp ? true +}: stdenv.mkDerivation rec { name = "cxxopts"; - version = "unstable-2020-12-14"; + version = "3.0.0"; src = fetchFromGitHub { owner = "jarro2783"; repo = name; - rev = "2d8e17c4f88efce80e274cb03eeb902e055a91d3"; - sha256 = "0pwrac81zfqjs17g3hx8r3ds2xf04npb6mz111qjy4bx17314ib7"; + rev = "v${version}"; + sha256 = "08x7j168l1xwj0r3rv89cgghmfhsx98lpq35r3vkh504m1pd55a6"; }; + # CMake does not set CMAKE_LIBRARY_ARCHITECTURE variable in Nix, which breaks architecture-independent library path generation + patches = [ ./fix-install-path.patch ]; + buildInputs = lib.optional enableUnicodeHelp [ icu.dev ]; cmakeFlags = [ "-DCXXOPTS_BUILD_EXAMPLES=OFF" ] - ++ lib.optional enableUnicodeHelp "-DCXXOPTS_USE_UNICODE_HELP=TRUE" - # Due to -Wsuggest-override, remove when cxxopts is updated - ++ lib.optional stdenv.isDarwin "-DCXXOPTS_ENABLE_WARNINGS=OFF"; + ++ lib.optional enableUnicodeHelp "-DCXXOPTS_USE_UNICODE_HELP=TRUE"; nativeBuildInputs = [ cmake ] ++ lib.optional enableUnicodeHelp [ pkg-config ]; doCheck = true; diff --git a/pkgs/development/libraries/cxxopts/fix-install-path.patch b/pkgs/development/libraries/cxxopts/fix-install-path.patch new file mode 100644 index 00000000000..d91e3fb6dc1 --- /dev/null +++ b/pkgs/development/libraries/cxxopts/fix-install-path.patch @@ -0,0 +1,18 @@ +diff --git a/cmake/cxxopts.cmake b/cmake/cxxopts.cmake +index 46e87ba..0ead543 100644 +--- a/cmake/cxxopts.cmake ++++ b/cmake/cxxopts.cmake +@@ -87,7 +87,12 @@ endfunction() + + # Helper function to ecapsulate install logic + function(cxxopts_install_logic) +- string(REPLACE "/${CMAKE_LIBRARY_ARCHITECTURE}" "" CMAKE_INSTALL_LIBDIR_ARCHIND "${CMAKE_INSTALL_LIBDIR}") ++ if(CMAKE_LIBRARY_ARCHITECTURE) ++ string(REPLACE "/${CMAKE_LIBRARY_ARCHITECTURE}" "" CMAKE_INSTALL_LIBDIR_ARCHIND "${CMAKE_INSTALL_LIBDIR}") ++ else() ++ # On some systems (e.g. NixOS), `CMAKE_LIBRARY_ARCHITECTURE` can be empty ++ set(CMAKE_INSTALL_LIBDIR_ARCHIND "${CMAKE_INSTALL_LIBDIR}") ++ endif() + set(CXXOPTS_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR_ARCHIND}/cmake/cxxopts" CACHE STRING "Installation directory for cmake files, relative to ${CMAKE_INSTALL_PREFIX}.") + set(version_config "${PROJECT_BINARY_DIR}/cxxopts-config-version.cmake") + set(project_config "${PROJECT_BINARY_DIR}/cxxopts-config.cmake") |