Unverified Commit d0f0927e authored by Weijia Wang's avatar Weijia Wang Committed by GitHub
Browse files

Merge pull request #259434 from wegank/merkaartor-cmake

merkaartor: build with cmake
parents d5bee466 8d7e66f6
Loading
Loading
Loading
Loading
+19 −15
Original line number Diff line number Diff line
@@ -2,7 +2,8 @@
, stdenv
, fetchFromGitHub
, fetchpatch
, qmake
, cmake
, pkg-config
, qttools
, wrapQtAppsHook
, gdal
@@ -32,9 +33,14 @@ stdenv.mkDerivation rec {
      url = "https://github.com/openstreetmap/merkaartor/commit/1e20d2ccd743ea5f8c2358e4ae36fead8b9390fd.patch";
      hash = "sha256-aHjJLKYvqz7V0QwUIg0SbentBe+DaCJusVqy4xRBVWo=";
    })
    # https://github.com/openstreetmap/merkaartor/pull/290
    (fetchpatch {
      url = "https://github.com/openstreetmap/merkaartor/commit/7dede77370d89e8e7586f6ed5af225f9b5bde6cf.patch";
      hash = "sha256-3oDRPysVNvA50t/b9xOcVQgac3U1lDPrencanl4c6Zk=";
    })
  ];

  nativeBuildInputs = [ qmake qttools wrapQtAppsHook ];
  nativeBuildInputs = [ cmake pkg-config qttools wrapQtAppsHook ];

  buildInputs = [ gdal proj qtsvg qtwebengine ]
    ++ lib.optional withGeoimage exiv2
@@ -42,27 +48,25 @@ stdenv.mkDerivation rec {
    ++ lib.optional withLibproxy libproxy
    ++ lib.optional withZbar zbar;

  preConfigure = ''
    lrelease src/src.pro
  '';

  qmakeFlags = [
    "USEWEBENGINE=1"
  ] ++ lib.optional withGeoimage "GEOIMAGE=1"
    ++ lib.optional withGpsdlib "GPSDLIB=1"
    ++ lib.optional withLibproxy "LIBPROXY=1"
    ++ lib.optional withZbar "ZBAR=1";
  cmakeFlags = [
    (lib.cmakeBool "GEOIMAGE" withGeoimage)
    (lib.cmakeBool "GPSD" withGpsdlib)
    (lib.cmakeBool "LIBPROXY" withLibproxy)
    (lib.cmakeBool "WEBENGINE" true)
    (lib.cmakeBool "ZBAR" withZbar)
  ];

  postInstall = lib.optionalString stdenv.isDarwin ''
    mkdir -p $out/Applications
    mv binaries/bin/merkaartor.app $out/Applications
    mv binaries/bin/plugins $out/Applications/merkaartor.app/Contents
    mkdir -p $out/{Applications,bin}
    mv $out/merkaartor.app $out/Applications
    makeWrapper $out/{Applications/merkaartor.app/Contents/MacOS,bin}/merkaartor
  '';

  meta = with lib; {
    description = "OpenStreetMap editor";
    homepage = "http://merkaartor.be/";
    license = licenses.gpl2Plus;
    mainProgram = "merkaartor";
    maintainers = with maintainers; [ sikmir ];
    platforms = platforms.unix;
  };