From e7676acdcb6ff306fa7227440437ff3145a98e29 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Sat, 24 Apr 2021 22:05:23 +0200 Subject: [PATCH 1/6] add new port pkgconf --- ports/pkgconf/fix-static-builds.patch | 54 +++++++++++++++++++++++++++ ports/pkgconf/portfile.cmake | 23 ++++++++++++ ports/pkgconf/vcpkg.json | 6 +++ 3 files changed, 83 insertions(+) create mode 100644 ports/pkgconf/fix-static-builds.patch create mode 100644 ports/pkgconf/portfile.cmake create mode 100644 ports/pkgconf/vcpkg.json diff --git a/ports/pkgconf/fix-static-builds.patch b/ports/pkgconf/fix-static-builds.patch new file mode 100644 index 00000000000000..88a0b375c9bcdd --- /dev/null +++ b/ports/pkgconf/fix-static-builds.patch @@ -0,0 +1,54 @@ +diff --git a/libpkgconf.pc.in b/libpkgconf.pc.in +index d278136e3..ef0c7db5f 100644 +--- a/libpkgconf.pc.in ++++ b/libpkgconf.pc.in +@@ -8,4 +8,4 @@ Description: a library for accessing and manipulating development framework conf + URL: http://github.com/pkgconf/pkgconf + Version: @PACKAGE_VERSION@ + CFlags: -I${includedir}/pkgconf +-Libs: -L${libdir} -lpkgconf ++Libs: -L${libdir} -lpkgconf @build_static@ +diff --git a/meson.build b/meson.build +index e7822b8da..8f7aa0075 100644 +--- a/meson.build ++++ b/meson.build +@@ -45,6 +45,13 @@ cdata.set('abs_top_builddir', meson.build_root()) + + subdir('libpkgconf') + ++libtype = get_option('default_library') ++if libtype == 'static' ++ build_static = '-DPKGCONFIG_IS_STATIC' ++else ++ build_static = '' ++endif ++ + libpkgconf = library('pkgconf', + 'libpkgconf/argvsplit.c', + 'libpkgconf/audit.c', +@@ -60,7 +67,7 @@ libpkgconf = library('pkgconf', + 'libpkgconf/pkg.c', + 'libpkgconf/queue.c', + 'libpkgconf/tuple.c', +- c_args: '-DLIBPKGCONF_EXPORT', ++ c_args: ['-DLIBPKGCONF_EXPORT', build_static], + install : true, + version : '3.0.0', + soversion : '3', +@@ -73,13 +80,16 @@ pkg.generate(libpkgconf, + url: 'http://github.com/pkgconf/pkgconf', + filebase : 'libpkgconf', + subdirs: ['pkgconf'], ++ extra_cflags : build_static + ) + ++ + pkgconf_exe = executable('pkgconf', + 'cli/main.c', + 'cli/getopt_long.c', + 'cli/renderer-msvc.c', + link_with : libpkgconf, ++ c_args: build_static, + install : true) + + if get_option('tests') diff --git a/ports/pkgconf/portfile.cmake b/ports/pkgconf/portfile.cmake new file mode 100644 index 00000000000000..5daa05b65b4869 --- /dev/null +++ b/ports/pkgconf/portfile.cmake @@ -0,0 +1,23 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO pkgconf/pkgconf + REF 458101e787a47378d2fc74c64f649fd3a5f75e55 + SHA512 36a68c7f452752ddfa7f4740f77277bcea0c1c2c70d36d48e74ac3f77d082771253eb9b78fcd097f55cac425cecabab163123103452ddf16bff7280254c6a715 + HEAD_REF master + PATCHES fix-static-builds.patch +) + +vcpkg_configure_meson( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS -Dtests=false + ) +vcpkg_install_meson() +vcpkg_fixup_pkgconfig() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +vcpkg_copy_tools(TOOL_NAMES pkgconf AUTO_CLEAN) + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/ports/pkgconf/vcpkg.json b/ports/pkgconf/vcpkg.json new file mode 100644 index 00000000000000..18e17b12e3d9fc --- /dev/null +++ b/ports/pkgconf/vcpkg.json @@ -0,0 +1,6 @@ +{ + "name": "pkgconf", + "version": "1.7.4", + "description": "pkgconf is a program which helps to configure compiler and linker flags for development libraries. It is similar to pkg-config from freedesktop.org.", + "homepage": "https://github.com/pkgconf/pkgconf" +} \ No newline at end of file From f79a8f293179181a376efa0eb752f4398f1aa7f5 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Sat, 24 Apr 2021 22:06:26 +0200 Subject: [PATCH 2/6] version stuff --- versions/baseline.json | 4 ++++ versions/p-/pkgconf.json | 9 +++++++++ 2 files changed, 13 insertions(+) create mode 100644 versions/p-/pkgconf.json diff --git a/versions/baseline.json b/versions/baseline.json index e96d9fa02a460e..5a506ec9ae73ae 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -4760,6 +4760,10 @@ "baseline": "0.38.4", "port-version": 2 }, + "pkgconf": { + "baseline": "1.7.4", + "port-version": 0 + }, "platform-folders": { "baseline": "4.0.0", "port-version": 6 diff --git a/versions/p-/pkgconf.json b/versions/p-/pkgconf.json new file mode 100644 index 00000000000000..a87a031a0a257d --- /dev/null +++ b/versions/p-/pkgconf.json @@ -0,0 +1,9 @@ +{ + "versions": [ + { + "git-tree": "f903ecf66cb5bab05ff034f3e2c31e2b33be13a5", + "version": "1.7.4", + "port-version": 0 + } + ] +} From 33c61fd85864631773824b655361b61d420c64a4 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Sat, 24 Apr 2021 22:09:57 +0200 Subject: [PATCH 3/6] reformat manifest --- ports/pkgconf/vcpkg.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ports/pkgconf/vcpkg.json b/ports/pkgconf/vcpkg.json index 18e17b12e3d9fc..64385d57cf0af9 100644 --- a/ports/pkgconf/vcpkg.json +++ b/ports/pkgconf/vcpkg.json @@ -1,6 +1,6 @@ -{ - "name": "pkgconf", - "version": "1.7.4", - "description": "pkgconf is a program which helps to configure compiler and linker flags for development libraries. It is similar to pkg-config from freedesktop.org.", - "homepage": "https://github.com/pkgconf/pkgconf" -} \ No newline at end of file +{ + "name": "pkgconf", + "version": "1.7.4", + "description": "pkgconf is a program which helps to configure compiler and linker flags for development libraries. It is similar to pkg-config from freedesktop.org.", + "homepage": "https://github.com/pkgconf/pkgconf" +} From 059af2fe0d454bc88846fefbd838e4da126eec91 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Sat, 24 Apr 2021 22:10:15 +0200 Subject: [PATCH 4/6] update version --- versions/p-/pkgconf.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/p-/pkgconf.json b/versions/p-/pkgconf.json index a87a031a0a257d..33be165c95578d 100644 --- a/versions/p-/pkgconf.json +++ b/versions/p-/pkgconf.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "f903ecf66cb5bab05ff034f3e2c31e2b33be13a5", + "git-tree": "5b993bb128cc85ca5ddb952b48c3a34638792544", "version": "1.7.4", "port-version": 0 } From c9d6df0ab7d5742154652c8408b181b88b927c6c Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Sat, 24 Apr 2021 22:36:56 +0200 Subject: [PATCH 5/6] add supports field --- ports/pkgconf/vcpkg.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/pkgconf/vcpkg.json b/ports/pkgconf/vcpkg.json index 64385d57cf0af9..247c50300ea0c3 100644 --- a/ports/pkgconf/vcpkg.json +++ b/ports/pkgconf/vcpkg.json @@ -2,5 +2,6 @@ "name": "pkgconf", "version": "1.7.4", "description": "pkgconf is a program which helps to configure compiler and linker flags for development libraries. It is similar to pkg-config from freedesktop.org.", - "homepage": "https://github.com/pkgconf/pkgconf" + "homepage": "https://github.com/pkgconf/pkgconf", + "supports": "!uwp" } From 2936e87a36c2f4562446631d35806b9ac169cf7c Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Sat, 24 Apr 2021 22:37:25 +0200 Subject: [PATCH 6/6] version stuff again --- versions/p-/pkgconf.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/p-/pkgconf.json b/versions/p-/pkgconf.json index 33be165c95578d..6b14e2c55eb710 100644 --- a/versions/p-/pkgconf.json +++ b/versions/p-/pkgconf.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "5b993bb128cc85ca5ddb952b48c3a34638792544", + "git-tree": "75fe71378e6521fe0e14a82218a9430c831b9809", "version": "1.7.4", "port-version": 0 }