Przeglądaj źródła

improve libtiff (#352)

ruki 4 lat temu
rodzic
commit
3f9c588870
2 zmienionych plików z 16 dodań i 20 usunięć
  1. 7 1
      packages/l/libjpeg/xmake.lua
  2. 9 19
      packages/l/libtiff/xmake.lua

+ 7 - 1
packages/l/libjpeg/xmake.lua

@@ -33,7 +33,13 @@ package("libjpeg")
                 add_includedirs("$(buildir)", {public = true})
                 add_headerfiles("jerror.h", "jmorecfg.h", "jpeglib.h", "$(buildir)/jconfig.h")
         ]])
-        import("package.tools.xmake").install(package)
+        local configs = {}
+        if package:config("shared") then
+            configs.kind = "shared"
+        elseif not package:is_plat("windows", "mingw") and package:config("pic") ~= false then
+            configs.cxflags = "-fPIC"
+        end
+        import("package.tools.xmake").install(package, configs)
     end)
 
     on_test(function (package)

+ 9 - 19
packages/l/libtiff/xmake.lua

@@ -3,18 +3,20 @@ package("libtiff")
     set_homepage("http://www.simplesystems.org/libtiff/")
     set_description("TIFF Library and Utilities.")
 
-    set_urls("https://download.osgeo.org/libtiff/tiff-$(version).tar.gz",
-             "https://fossies.org/linux/misc/tiff-$(version).tar.gz")
-    add_versions("4.1.0", "5d29f32517dadb6dbcd1255ea5bbc93a2b54b94fbf83653b4d65c7d6775b8634")
+    set_urls("https://gitlab.com/libtiff/libtiff/-/archive/$(version)/libtiff-$(version).tar.gz",
+             "https://gitlab.com/libtiff/libtiff.git")
+    add_versions("v4.1.0", "fddd8838e7e57ba20a93b17706c3f9fe68c8711a6321f04b9ce9a9c24196ac74")
+    add_versions("v4.2.0", "f87463ac8984b43e8dd84a04c14816f5f217796d9f1f459756239c499857e75a")
 
     add_deps("zlib", "libjpeg")
-    if is_plat("windows", "mingw") then
-        add_deps("cmake")
-    end
+    add_deps("cmake")
 
-    on_install("windows", "mingw", function (package)
+    on_install("windows", "mingw", "macosx", "linux", "bsd", function (package)
         local configs = {"-Dzstd=OFF", "-Dlzma=OFF", "-Dwebp=OFF", "-Djpeg12=OFF", "-Djbig=OFF", "-Dpixarlog=OFF"}
         table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF"))
+        if package:config("pic") ~= false then
+            table.insert(configs, "-DCMAKE_POSITION_INDEPENDENT_CODE=ON")
+        end
         io.replace("CMakeLists.txt", "add_subdirectory(contrib)", "", {plain = true})
         io.replace("CMakeLists.txt", "add_subdirectory(man)", "", {plain = true})
         io.replace("CMakeLists.txt", "add_subdirectory(html)", "", {plain = true})
@@ -23,18 +25,6 @@ package("libtiff")
         import("package.tools.cmake").install(package, configs)
     end)
 
-    on_install("macosx", "linux", "bsd", function (package)
-        local configs = {"--disable-dependency-tracking", "--disable-lzma", "--disable-webp", "--disable-jpeg", "--disable-zstd", "--disable-old-jpeg", "--disable-jbig", "--disable-pixarlog", "--without-x"}
-        if package:config("shared") then
-            table.insert(configs, "--enable-shared=yes")
-            table.insert(configs, "--enable-static=no")
-        else
-            table.insert(configs, "--enable-static=yes")
-            table.insert(configs, "--enable-shared=no")
-        end
-        import("package.tools.autoconf").install(package, configs)
-    end)
-
     on_test(function (package)
         assert(package:has_cfuncs("TIFFOpen", {includes = "tiffio.h"}))
     end)