diff options
| author | Victor Romero <romerosanchezv@gmail.com> | 2019-04-02 16:53:20 -0700 |
|---|---|---|
| committer | Victor Romero <romerosanchezv@gmail.com> | 2019-04-02 16:53:20 -0700 |
| commit | 9596fe7dd72179045cd9460730a71e197e82b1c2 (patch) | |
| tree | c27ae77fe5a646686bbf72f910416dfbb2af9e0b | |
| parent | f41cc7b47cd0e846e047891b605f6870cc598ccb (diff) | |
| parent | 0fffb47ed02507aeacc29c64d91e9d4639f981f6 (diff) | |
| download | vcpkg-9596fe7dd72179045cd9460730a71e197e82b1c2.tar.gz vcpkg-9596fe7dd72179045cd9460730a71e197e82b1c2.zip | |
Merge branch 'master' of https://github.com/Microsoft/vcpkg into pr/cmake_3_14
232 files changed, 2549 insertions, 920 deletions
diff --git a/docs/users/config-environment.md b/docs/users/config-environment.md index f25df89a3..bffa07278 100644 --- a/docs/users/config-environment.md +++ b/docs/users/config-environment.md @@ -40,3 +40,10 @@ This environment variable can be set to a triplet name which will be used for un #### VCPKG_FORCE_SYSTEM_BINARIES
This environment variable, if set, suppresses the downloading of CMake and Ninja and forces the use of the system binaries.
+
+### VCPKG_KEEP_ENV_VARS
+
+This environment variable can be set to a list of environment variables, separated by `;`, which will be propagated to
+the build environment.
+
+Example: `FOO_SDK_DIR;BAR_SDK_DIR`
diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index 2e0e0b9bd..9893bf7f8 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil
-Version: 2019-01-30 +Version: 2019_01_30-1 Description: an open-source collection designed to augment the C++ standard library.
Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives.
In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you.
diff --git a/ports/abseil/fix-usage-lnk-error.patch b/ports/abseil/fix-usage-lnk-error.patch new file mode 100644 index 000000000..5335d144b --- /dev/null +++ b/ports/abseil/fix-usage-lnk-error.patch @@ -0,0 +1,232 @@ +diff --git a/absl/strings/ascii.cc b/absl/strings/ascii.cc
+index c9481e8..5c155e1 100644
+--- a/absl/strings/ascii.cc
++++ b/absl/strings/ascii.cc
+@@ -49,109 +49,6 @@ namespace ascii_internal {
+ // print ' //', Hex2(i & 0x78)
+ // elif i % 16 == 15:
+ // print
+-
+-// clang-format off
+-// Array of bitfields holding character information. Each bit value corresponds
+-// to a particular character feature. For readability, and because the value
+-// of these bits is tightly coupled to this implementation, the individual bits
+-// are not named. Note that bitfields for all characters above ASCII 127 are
+-// zero-initialized.
+-const unsigned char kPropertyBits[256] = {
+- 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, // 0x00
+- 0x40, 0x68, 0x48, 0x48, 0x48, 0x48, 0x40, 0x40,
+- 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, // 0x10
+- 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
+- 0x28, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, // 0x20
+- 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
+- 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, // 0x30
+- 0x84, 0x84, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
+- 0x10, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x05, // 0x40
+- 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
+- 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, // 0x50
+- 0x05, 0x05, 0x05, 0x10, 0x10, 0x10, 0x10, 0x10,
+- 0x10, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x05, // 0x60
+- 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
+- 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, // 0x70
+- 0x05, 0x05, 0x05, 0x10, 0x10, 0x10, 0x10, 0x40,
+-};
+-
+-// Array of characters for the ascii_tolower() function. For values 'A'
+-// through 'Z', return the lower-case character; otherwise, return the
+-// identity of the passed character.
+-const char kToLower[256] = {
+- '\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07',
+- '\x08', '\x09', '\x0a', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
+- '\x10', '\x11', '\x12', '\x13', '\x14', '\x15', '\x16', '\x17',
+- '\x18', '\x19', '\x1a', '\x1b', '\x1c', '\x1d', '\x1e', '\x1f',
+- '\x20', '\x21', '\x22', '\x23', '\x24', '\x25', '\x26', '\x27',
+- '\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x2d', '\x2e', '\x2f',
+- '\x30', '\x31', '\x32', '\x33', '\x34', '\x35', '\x36', '\x37',
+- '\x38', '\x39', '\x3a', '\x3b', '\x3c', '\x3d', '\x3e', '\x3f',
+- '\x40', 'a', 'b', 'c', 'd', 'e', 'f', 'g',
+- 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o',
+- 'p', 'q', 'r', 's', 't', 'u', 'v', 'w',
+- 'x', 'y', 'z', '\x5b', '\x5c', '\x5d', '\x5e', '\x5f',
+- '\x60', '\x61', '\x62', '\x63', '\x64', '\x65', '\x66', '\x67',
+- '\x68', '\x69', '\x6a', '\x6b', '\x6c', '\x6d', '\x6e', '\x6f',
+- '\x70', '\x71', '\x72', '\x73', '\x74', '\x75', '\x76', '\x77',
+- '\x78', '\x79', '\x7a', '\x7b', '\x7c', '\x7d', '\x7e', '\x7f',
+- '\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
+- '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f',
+- '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97',
+- '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f',
+- '\xa0', '\xa1', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6', '\xa7',
+- '\xa8', '\xa9', '\xaa', '\xab', '\xac', '\xad', '\xae', '\xaf',
+- '\xb0', '\xb1', '\xb2', '\xb3', '\xb4', '\xb5', '\xb6', '\xb7',
+- '\xb8', '\xb9', '\xba', '\xbb', '\xbc', '\xbd', '\xbe', '\xbf',
+- '\xc0', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
+- '\xc8', '\xc9', '\xca', '\xcb', '\xcc', '\xcd', '\xce', '\xcf',
+- '\xd0', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6', '\xd7',
+- '\xd8', '\xd9', '\xda', '\xdb', '\xdc', '\xdd', '\xde', '\xdf',
+- '\xe0', '\xe1', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6', '\xe7',
+- '\xe8', '\xe9', '\xea', '\xeb', '\xec', '\xed', '\xee', '\xef',
+- '\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
+- '\xf8', '\xf9', '\xfa', '\xfb', '\xfc', '\xfd', '\xfe', '\xff',
+-};
+-
+-// Array of characters for the ascii_toupper() function. For values 'a'
+-// through 'z', return the upper-case character; otherwise, return the
+-// identity of the passed character.
+-const char kToUpper[256] = {
+- '\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07',
+- '\x08', '\x09', '\x0a', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
+- '\x10', '\x11', '\x12', '\x13', '\x14', '\x15', '\x16', '\x17',
+- '\x18', '\x19', '\x1a', '\x1b', '\x1c', '\x1d', '\x1e', '\x1f',
+- '\x20', '\x21', '\x22', '\x23', '\x24', '\x25', '\x26', '\x27',
+- '\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x2d', '\x2e', '\x2f',
+- '\x30', '\x31', '\x32', '\x33', '\x34', '\x35', '\x36', '\x37',
+- '\x38', '\x39', '\x3a', '\x3b', '\x3c', '\x3d', '\x3e', '\x3f',
+- '\x40', '\x41', '\x42', '\x43', '\x44', '\x45', '\x46', '\x47',
+- '\x48', '\x49', '\x4a', '\x4b', '\x4c', '\x4d', '\x4e', '\x4f',
+- '\x50', '\x51', '\x52', '\x53', '\x54', '\x55', '\x56', '\x57',
+- '\x58', '\x59', '\x5a', '\x5b', '\x5c', '\x5d', '\x5e', '\x5f',
+- '\x60', 'A', 'B', 'C', 'D', 'E', 'F', 'G',
+- 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O',
+- 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
+- 'X', 'Y', 'Z', '\x7b', '\x7c', '\x7d', '\x7e', '\x7f',
+- '\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
+- '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f',
+- '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97',
+- '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f',
+- '\xa0', '\xa1', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6', '\xa7',
+- '\xa8', '\xa9', '\xaa', '\xab', '\xac', '\xad', '\xae', '\xaf',
+- '\xb0', '\xb1', '\xb2', '\xb3', '\xb4', '\xb5', '\xb6', '\xb7',
+- '\xb8', '\xb9', '\xba', '\xbb', '\xbc', '\xbd', '\xbe', '\xbf',
+- '\xc0', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
+- '\xc8', '\xc9', '\xca', '\xcb', '\xcc', '\xcd', '\xce', '\xcf',
+- '\xd0', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6', '\xd7',
+- '\xd8', '\xd9', '\xda', '\xdb', '\xdc', '\xdd', '\xde', '\xdf',
+- '\xe0', '\xe1', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6', '\xe7',
+- '\xe8', '\xe9', '\xea', '\xeb', '\xec', '\xed', '\xee', '\xef',
+- '\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
+- '\xf8', '\xf9', '\xfa', '\xfb', '\xfc', '\xfd', '\xfe', '\xff',
+-};
+-// clang-format on
+-
+ } // namespace ascii_internal
+
+ void AsciiStrToLower(std::string* s) {
+diff --git a/absl/strings/ascii.h b/absl/strings/ascii.h
+index 48a9da2..9d70382 100644
+--- a/absl/strings/ascii.h
++++ b/absl/strings/ascii.h
+@@ -61,14 +61,105 @@
+ namespace absl {
+ namespace ascii_internal {
+
+-// Declaration for an array of bitfields holding character information.
+-extern const unsigned char kPropertyBits[256];
+-
+-// Declaration for the array of characters to upper-case characters.
+-extern const char kToUpper[256];
+-
+-// Declaration for the array of characters to lower-case characters.
+-extern const char kToLower[256];
++// Array of bitfields holding character information. Each bit value corresponds
++// to a particular character feature. For readability, and because the value
++// of these bits is tightly coupled to this implementation, the individual bits
++// are not named. Note that bitfields for all characters above ASCII 127 are
++// zero-initialized.
++const unsigned char kPropertyBits[256] = {
++ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, // 0x00
++ 0x40, 0x68, 0x48, 0x48, 0x48, 0x48, 0x40, 0x40,
++ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, // 0x10
++ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
++ 0x28, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, // 0x20
++ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
++ 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, // 0x30
++ 0x84, 0x84, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
++ 0x10, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x05, // 0x40
++ 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
++ 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, // 0x50
++ 0x05, 0x05, 0x05, 0x10, 0x10, 0x10, 0x10, 0x10,
++ 0x10, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x05, // 0x60
++ 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
++ 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, // 0x70
++ 0x05, 0x05, 0x05, 0x10, 0x10, 0x10, 0x10, 0x40,
++};
++
++// Array of characters for the ascii_tolower() function. For values 'A'
++// through 'Z', return the lower-case character; otherwise, return the
++// identity of the passed character.
++const char kToLower[256] = {
++ '\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07',
++ '\x08', '\x09', '\x0a', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
++ '\x10', '\x11', '\x12', '\x13', '\x14', '\x15', '\x16', '\x17',
++ '\x18', '\x19', '\x1a', '\x1b', '\x1c', '\x1d', '\x1e', '\x1f',
++ '\x20', '\x21', '\x22', '\x23', '\x24', '\x25', '\x26', '\x27',
++ '\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x2d', '\x2e', '\x2f',
++ '\x30', '\x31', '\x32', '\x33', '\x34', '\x35', '\x36', '\x37',
++ '\x38', '\x39', '\x3a', '\x3b', '\x3c', '\x3d', '\x3e', '\x3f',
++ '\x40', 'a', 'b', 'c', 'd', 'e', 'f', 'g',
++ 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o',
++ 'p', 'q', 'r', 's', 't', 'u', 'v', 'w',
++ 'x', 'y', 'z', '\x5b', '\x5c', '\x5d', '\x5e', '\x5f',
++ '\x60', '\x61', '\x62', '\x63', '\x64', '\x65', '\x66', '\x67',
++ '\x68', '\x69', '\x6a', '\x6b', '\x6c', '\x6d', '\x6e', '\x6f',
++ '\x70', '\x71', '\x72', '\x73', '\x74', '\x75', '\x76', '\x77',
++ '\x78', '\x79', '\x7a', '\x7b', '\x7c', '\x7d', '\x7e', '\x7f',
++ '\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
++ '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f',
++ '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97',
++ '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f',
++ '\xa0', '\xa1', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6', '\xa7',
++ '\xa8', '\xa9', '\xaa', '\xab', '\xac', '\xad', '\xae', '\xaf',
++ '\xb0', '\xb1', '\xb2', '\xb3', '\xb4', '\xb5', '\xb6', '\xb7',
++ '\xb8', '\xb9', '\xba', '\xbb', '\xbc', '\xbd', '\xbe', '\xbf',
++ '\xc0', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
++ '\xc8', '\xc9', '\xca', '\xcb', '\xcc', '\xcd', '\xce', '\xcf',
++ '\xd0', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6', '\xd7',
++ '\xd8', '\xd9', '\xda', '\xdb', '\xdc', '\xdd', '\xde', '\xdf',
++ '\xe0', '\xe1', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6', '\xe7',
++ '\xe8', '\xe9', '\xea', '\xeb', '\xec', '\xed', '\xee', '\xef',
++ '\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
++ '\xf8', '\xf9', '\xfa', '\xfb', '\xfc', '\xfd', '\xfe', '\xff',
++};
++
++// Array of characters for the ascii_toupper() function. For values 'a'
++// through 'z', return the upper-case character; otherwise, return the
++// identity of the passed character.
++const char kToUpper[256] = {
++ '\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07',
++ '\x08', '\x09', '\x0a', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
++ '\x10', '\x11', '\x12', '\x13', '\x14', '\x15', '\x16', '\x17',
++ '\x18', '\x19', '\x1a', '\x1b', '\x1c', '\x1d', '\x1e', '\x1f',
++ '\x20', '\x21', '\x22', '\x23', '\x24', '\x25', '\x26', '\x27',
++ '\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x2d', '\x2e', '\x2f',
++ '\x30', '\x31', '\x32', '\x33', '\x34', '\x35', '\x36', '\x37',
++ '\x38', '\x39', '\x3a', '\x3b', '\x3c', '\x3d', '\x3e', '\x3f',
++ '\x40', '\x41', '\x42', '\x43', '\x44', '\x45', '\x46', '\x47',
++ '\x48', '\x49', '\x4a', '\x4b', '\x4c', '\x4d', '\x4e', '\x4f',
++ '\x50', '\x51', '\x52', '\x53', '\x54', '\x55', '\x56', '\x57',
++ '\x58', '\x59', '\x5a', '\x5b', '\x5c', '\x5d', '\x5e', '\x5f',
++ '\x60', 'A', 'B', 'C', 'D', 'E', 'F', 'G',
++ 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O',
++ 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
++ 'X', 'Y', 'Z', '\x7b', '\x7c', '\x7d', '\x7e', '\x7f',
++ '\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
++ '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f',
++ '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97',
++ '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f',
++ '\xa0', '\xa1', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6', '\xa7',
++ '\xa8', '\xa9', '\xaa', '\xab', '\xac', '\xad', '\xae', '\xaf',
++ '\xb0', '\xb1', '\xb2', '\xb3', '\xb4', '\xb5', '\xb6', '\xb7',
++ '\xb8', '\xb9', '\xba', '\xbb', '\xbc', '\xbd', '\xbe', '\xbf',
++ '\xc0', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
++ '\xc8', '\xc9', '\xca', '\xcb', '\xcc', '\xcd', '\xce', '\xcf',
++ '\xd0', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6', '\xd7',
++ '\xd8', '\xd9', '\xda', '\xdb', '\xdc', '\xdd', '\xde', '\xdf',
++ '\xe0', '\xe1', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6', '\xe7',
++ '\xe8', '\xe9', '\xea', '\xeb', '\xec', '\xed', '\xee', '\xef',
++ '\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
++ '\xf8', '\xf9', '\xfa', '\xfb', '\xfc', '\xfd', '\xfe', '\xff',
++};
+
+ } // namespace ascii_internal
+
diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 7aca199a0..ddf17c87c 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,9 +7,10 @@ endif() vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO abseil/abseil-cpp
- REF 540e2537b92cd4abfae6ceddfe24304345461f32 + REF 540e2537b92cd4abfae6ceddfe24304345461f32
SHA512 3cabab23ad159592562a30531052bb18c66fce75f93f84a6de17a7488b7d6651f645950c1adb8dfbacc651f2bc0db82c316de132baab38e3ef95ea5b5a0eb6d2
HEAD_REF master
+ PATCHES fix-usage-lnk-error.patch
)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
@@ -23,14 +24,6 @@ vcpkg_install_cmake() vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-abseil TARGET_PATH share/unofficial-abseil)
-file(GLOB_RECURSE HEADERS ${CURRENT_PACKAGES_DIR}/include/*)
-foreach(FILE ${HEADERS})
- file(READ "${FILE}" _contents)
- string(REPLACE "std::min(" "(std::min)(" _contents "${_contents}")
- string(REPLACE "std::max(" "(std::max)(" _contents "${_contents}")
- file(WRITE "${FILE}" "${_contents}")
-endforeach()
-
vcpkg_copy_pdbs()
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/abseil RENAME copyright)
diff --git a/ports/ace/CONTROL b/ports/ace/CONTROL index cb11cfce5..d3e25dcf9 100644 --- a/ports/ace/CONTROL +++ b/ports/ace/CONTROL @@ -1,3 +1,3 @@ Source: ace -Version: 6.5.4-2 +Version: 6.5.4-3 Description: The ADAPTIVE Communication Environment diff --git a/ports/ace/portfile.cmake b/ports/ace/portfile.cmake index 600be9ae0..87fd822ad 100644 --- a/ports/ace/portfile.cmake +++ b/ports/ace/portfile.cmake @@ -3,8 +3,10 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") endif() if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - set(MPC_STATIC_FLAG -static) + if(NOT VCPKG_CMAKE_SYSTEM_NAME) set(DLL_DECORATOR s) + endif() + set(MPC_STATIC_FLAG -static) endif() include(vcpkg_common_functions) set(ACE_ROOT ${CURRENT_BUILDTREES_DIR}/src/ACE_wrappers) @@ -29,27 +31,54 @@ else () set(MSBUILD_PLATFORM ${TRIPLET_SYSTEM_ARCH}) endif() -if(VCPKG_PLATFORM_TOOLSET MATCHES "v141") +# Add ace/config.h file +# see https://htmlpreview.github.io/?https://github.com/DOCGroup/ACE_TAO/blob/master/ACE/ACE-INSTALL.html +if(NOT VCPKG_CMAKE_SYSTEM_NAME) + set(LIB_RELEASE_SUFFIX .lib) + set(LIB_DEBUG_SUFFIX d.lib) + if(VCPKG_PLATFORM_TOOLSET MATCHES "v141") set(SOLUTION_TYPE vs2017) -else() + else() set(SOLUTION_TYPE vc14) + endif() + file(WRITE ${SOURCE_PATH}/config.h "#include \"ace/config-windows.h\"") endif() -# Add ace/config.h file -# see https://htmlpreview.github.io/?https://github.com/DOCGroup/ACE_TAO/blob/master/ACE/ACE-INSTALL.html -file(WRITE ${SOURCE_PATH}/config.h "#include \"ace/config-windows.h\"") +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(DLL_DECORATOR) + set(LIB_RELEASE_SUFFIX .a) + set(LIB_DEBUG_SUFFIX .a) + set(LIB_PREFIX lib) + set(SOLUTION_TYPE gnuace) + file(WRITE ${SOURCE_PATH}/config.h "#include \"ace/config-linux.h\"") + file(WRITE ${ACE_ROOT}/include/makeinclude/platform_macros.GNU "include $(ACE_ROOT)include/makeinclude/platform_linux.GNU") +endif() # Invoke mwc.pl to generate the necessary solution and project files vcpkg_execute_required_process( COMMAND ${PERL} ${ACE_ROOT}/bin/mwc.pl -type ${SOLUTION_TYPE} ace ${MPC_STATIC_FLAG} WORKING_DIRECTORY ${ACE_ROOT} - LOGNAME mwc + LOGNAME mwc-${TARGET_TRIPLET} ) -vcpkg_build_msbuild( +if(NOT VCPKG_CMAKE_SYSTEM_NAME) + vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/ace.sln PLATFORM ${MSBUILD_PLATFORM} -) + ) +endif() + +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + FIND_PROGRAM(MAKE make) + IF (NOT MAKE) + MESSAGE(FATAL_ERROR "MAKE not found") + ENDIF () + vcpkg_execute_required_process( + COMMAND make + WORKING_DIRECTORY ${ACE_ROOT}/ace + LOGNAME make-${TARGET_TRIPLET} + ) +endif() # ACE itself does not define an install target, so it is not clear which # headers are public and which not. For the moment we install everything @@ -93,12 +122,12 @@ function(install_ace_library SOURCE_PATH ACE_LIBRARY) # Install the lib files file(INSTALL - ${LIB_PATH}/${ACE_LIBRARY}${DLL_DECORATOR}d.lib + ${LIB_PATH}/${LIB_PREFIX}${ACE_LIBRARY}${DLL_DECORATOR}${LIB_DEBUG_SUFFIX} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib ) file(INSTALL - ${LIB_PATH}/${ACE_LIBRARY}${DLL_DECORATOR}.lib + ${LIB_PATH}/${LIB_PREFIX}${ACE_LIBRARY}${DLL_DECORATOR}${LIB_RELEASE_SUFFIX} DESTINATION ${CURRENT_PACKAGES_DIR}/lib ) endfunction() @@ -108,11 +137,13 @@ install_ace_library(${ACE_ROOT} "ACE_Compression") install_ace_library(${ACE_ROOT} "ACE_ETCL") install_ace_library(${ACE_ROOT} "ACE_ETCL_Parser") install_ace_library(${ACE_ROOT} "ACE_Monitor_Control") -install_ace_library(${ACE_ROOT} "ACE_QoS") +if(NOT VCPKG_CMAKE_SYSTEM_NAME) + install_ace_library(${ACE_ROOT} "ACE_QoS") +endif() install_ace_library(${ACE_ROOT} "ACE_RLECompression") # Handle copyright file(COPY ${ACE_ROOT}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/ace) file(RENAME ${CURRENT_PACKAGES_DIR}/share/ace/COPYING ${CURRENT_PACKAGES_DIR}/share/ace/copyright) -vcpkg_copy_pdbs()
\ No newline at end of file +vcpkg_copy_pdbs() diff --git a/ports/alembic/portfile.cmake b/ports/alembic/portfile.cmake index 7e2bc233f..1f01136b3 100644 --- a/ports/alembic/portfile.cmake +++ b/ports/alembic/portfile.cmake @@ -1,5 +1,12 @@ include(vcpkg_common_functions) +string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) +if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) + message(WARNING "Alembic's buildsystem uses very long paths and may fail on your system.\n" + "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." + ) +endif() + if(VCPKG_LIBRARY_LINKAGE STREQUAL static) message(STATUS "Alembic does not support static linkage. Building dynamically.") set(VCPKG_LIBRARY_LINKAGE dynamic) diff --git a/ports/ampl-mp/CONTROL b/ports/ampl-mp/CONTROL index 8a8c27b3f..84523e281 100644 --- a/ports/ampl-mp/CONTROL +++ b/ports/ampl-mp/CONTROL @@ -1,3 +1,3 @@ Source: ampl-mp -Version: 2019-02-08 +Version: 2019-03-21 Description: An open-source library for mathematical programming diff --git a/ports/ampl-mp/portfile.cmake b/ports/ampl-mp/portfile.cmake index 45bcb6478..dafdb10fd 100644 --- a/ports/ampl-mp/portfile.cmake +++ b/ports/ampl-mp/portfile.cmake @@ -2,11 +2,15 @@ include(vcpkg_common_functions) vcpkg_check_linkage(ONLY_STATIC_LIBRARY) +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + message(FATAL_ERROR "Cross-compiling is not supported") +endif() + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ampl/mp - REF d305155b047b69fc5c6e5fda8630c753d7973b9a - SHA512 2c8ffd6de946a6f8ea94a8e0c00f03f67753ad99534e0d5fcaaaeb472fe76a3383324bcb628a31d8c01bc5f60254790f5508c8394096a4f05672f814dbd6fe2e + REF 67875b71ef68511277ec2dc8224f613487cefce9 + SHA512 fad2496c10b843ddad7c4dba1eea1b4cd22e90be12dec2ad598fbd1ed5e1c492d92c5130490c7045ea608bc9ea2af191661c39b3bee3bc5159663f306ce50950 HEAD_REF master PATCHES disable-matlab-mex.patch diff --git a/ports/ampl-mp/workaround-msvc-optimizer-ice.patch b/ports/ampl-mp/workaround-msvc-optimizer-ice.patch index cd55be8c0..7e6d736bd 100644 --- a/ports/ampl-mp/workaround-msvc-optimizer-ice.patch +++ b/ports/ampl-mp/workaround-msvc-optimizer-ice.patch @@ -1,14 +1,28 @@ ---- a/src/asl/CMakeLists.txt 2019-02-07 22:45:15.191909400 -0600 -+++ b/src/asl/CMakeLists.txt 2019-02-07 22:47:10.364936600 -0600 -@@ -216,6 +216,11 @@ add_mp_library(asl-core OBJECT ${ASL_COR - COMPILE_DEFINITIONS ${ASL_COMPILE_DEFINITIONS} - INCLUDE_DIRECTORIES ${CMAKE_CURRENT_BINARY_DIR}) +diff --git a/src/asl/solvers/avltree.c b/src/asl/solvers/avltree.c +index 7a9adaba..4dd97054 100644 +--- a/src/asl/solvers/avltree.c ++++ b/src/asl/solvers/avltree.c +@@ -54,6 +54,9 @@ AVL_Tree { + void (*Free)(void*); + }; -+if (MSVC) -+ set_source_files_properties(solvers/avltree.c solvers/sphes.c -+ PROPERTIES COMPILE_OPTIONS /Od) -+endif () -+ - # Public ASL headers. - set(ASL_HEADERS aslbuilder.h aslexpr.h aslexpr-visitor.h - aslproblem.h aslinterface.h ${CMAKE_CURRENT_BINARY_DIR}/stdio1.h) ++#if defined(_MSC_VER) && _MSC_VER < 1917 ++#pragma optimize("", off) ++#endif + AVL_Tree* + AVL_Tree_alloc2(void *v, AVL_Elcomp cmp, void *(*Malloc)(size_t), void (*Free)(void*)) + { +diff --git a/src/asl/solvers/sphes.c b/src/asl/solvers/sphes.c +index 326d997f..ae8952ed 100644 +--- a/src/asl/solvers/sphes.c ++++ b/src/asl/solvers/sphes.c +@@ -452,6 +452,9 @@ compar(const void *a, const void *b) + #undef del_mblk + #define del_mblk(b,c) Del_mblk_ASL(a,b,(Char*)(c)) + ++#if defined(_MSC_VER) && _MSC_VER < 1917 ++#pragma optimize("", off) ++#endif + static void + new_Hesoprod(ASL_pfgh *asl, ograd *L, ograd *R, real coef) + { diff --git a/ports/angle/CMakeLists.txt b/ports/angle/CMakeLists.txt index 7bd7d77c9..82caf9289 100644 --- a/ports/angle/CMakeLists.txt +++ b/ports/angle/CMakeLists.txt @@ -19,9 +19,11 @@ else() endif()
if(WINDOWS_ANY)
- add_compile_options(/d2guard4 /Wv:18 /guard:cf)
+ add_compile_options(/d2guard4 /Wv:18 /guard:cf /permissive)
else()
- add_compile_options(-std=c++17 -fPIC)
+ set(CMAKE_CXX_STANDARD 17)
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
+ set(CMAKE_POSITION_INDEPENDENT_CODE ON)
endif()
if (APPLE)
diff --git a/ports/angle/CONTROL b/ports/angle/CONTROL index 81b32f631..afdb07262 100644 --- a/ports/angle/CONTROL +++ b/ports/angle/CONTROL @@ -1,5 +1,5 @@ Source: angle
-Version: 2019-03-13-c2ee2cc
+Version: 2019-03-13-c2ee2cc-1
Description: A conformant OpenGL ES implementation for Windows, Mac and Linux.
The goal of ANGLE is to allow users of multiple operating systems to seamlessly run WebGL and other OpenGL ES content by translating OpenGL ES API calls to one of the hardware-supported APIs available for that platform. ANGLE currently provides translation from OpenGL ES 2.0 and 3.0 to desktop OpenGL, OpenGL ES, Direct3D 9, and Direct3D 11. Support for translation from OpenGL ES to Vulkan is underway, and future plans include compute shader support (ES 3.1) and MacOS support.
Build-Depends: egl-registry
diff --git a/ports/apr-util/CONTROL b/ports/apr-util/CONTROL index 81814a2ca..1ff406efd 100644 --- a/ports/apr-util/CONTROL +++ b/ports/apr-util/CONTROL @@ -1,4 +1,4 @@ Source: apr-util -Version: 1.6.0-1 +Version: 1.6.0-2 Description: Apache Portable Runtime (APR) project mission is to create and maintain software libraries that provide a predictable and consistent interface to underlying platform-specific implementation Build-Depends: expat, apr, openssl diff --git a/ports/apr-util/portfile.cmake b/ports/apr-util/portfile.cmake index abff4b47d..6ac311d76 100644 --- a/ports/apr-util/portfile.cmake +++ b/ports/apr-util/portfile.cmake @@ -13,16 +13,24 @@ vcpkg_apply_patches( PATCHES "${CMAKE_CURRENT_LIST_DIR}/use-vcpkg-expat.patch" ) - -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA - OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON -) +if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS -DAPU_DECLARE_EXPORT=ON + OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON + ) +else() + vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS -DAPU_DECLARE_STATIC=ON + OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON + ) +endif() vcpkg_install_cmake() - file(READ ${CURRENT_PACKAGES_DIR}/include/apu.h APU_H) if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) string(REPLACE "defined(APU_DECLARE_EXPORT)" "1" APU_H "${APU_H}") diff --git a/ports/avro-c/portfile.cmake b/ports/avro-c/portfile.cmake index 087d3b3af..d868738df 100644 --- a/ports/avro-c/portfile.cmake +++ b/ports/avro-c/portfile.cmake @@ -1,5 +1,12 @@ include(vcpkg_common_functions) +string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) +if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) + message(WARNING "Avro-c's buildsystem uses very long paths and may fail on your system.\n" + "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." + ) +endif() + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/avro diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 153c3170c..2bdc103bb 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -1,5 +1,12 @@ include(vcpkg_common_functions)
+string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH)
+if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32)
+ message(WARNING "Aws-sdk-cpp's buildsystem uses very long paths and may fail on your system.\n"
+ "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command."
+ )
+endif()
+
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO aws/aws-sdk-cpp
diff --git a/ports/azure-c-shared-utility/CONTROL b/ports/azure-c-shared-utility/CONTROL index 0b3a6c231..87ecfd32b 100644 --- a/ports/azure-c-shared-utility/CONTROL +++ b/ports/azure-c-shared-utility/CONTROL @@ -1,5 +1,5 @@ Source: azure-c-shared-utility -Version: 1.1.11-5 +Version: 2019-03-18 Description: Azure C SDKs common code Build-Depends: curl (linux), openssl (linux) diff --git a/ports/azure-c-shared-utility/portfile.cmake b/ports/azure-c-shared-utility/portfile.cmake index ebfb097f5..de7f3e61a 100644 --- a/ports/azure-c-shared-utility/portfile.cmake +++ b/ports/azure-c-shared-utility/portfile.cmake @@ -6,8 +6,8 @@ if("public-preview" IN_LIST FEATURES) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-c-shared-utility - REF 773980d7882e4d5f1e7c9be2a0797d61fbc19da1 - SHA512 fa374db336f5d186bcfd6ba70660167fdc87a1847376579cee894af3d2810aba097b3468e75c0b4213b68423cc07215032eeae6ee07590378237606112286ac4 + REF bc83cba1230e98988ae5cd2328f4dcf8c49d5866 + SHA512 48947709f9c07c8a910d40066a52b746f9ab15543837f44207b787674efd2b11e7a7eb849c88e20984f0e2141e5611f6d6edea39c8b82687f371c08ab274bd7b HEAD_REF master PATCHES no-double-expand-cmake.patch ) @@ -15,8 +15,8 @@ else() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-c-shared-utility - REF 6229ecb0d49b7e75fdb88d2c477e94e5b5394c43 - SHA512 b0426702dd7a79e149dd4f6c2b8d0b43cd06a82ce014112dcaba1de4e669157fe08a5f3748d431a9e2f559e066f658c1a62f5ac08d2da0bd1f5cf04dca2e52c2 + REF bc83cba1230e98988ae5cd2328f4dcf8c49d5866 + SHA512 48947709f9c07c8a910d40066a52b746f9ab15543837f44207b787674efd2b11e7a7eb849c88e20984f0e2141e5611f6d6edea39c8b82687f371c08ab274bd7b HEAD_REF master PATCHES no-double-expand-cmake.patch ) @@ -43,3 +43,4 @@ file(COPY ${SOURCE_PATH}/configs/azure_iot_build_rules.cmake DESTINATION ${CURRE configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/azure-c-shared-utility/copyright COPYONLY) vcpkg_copy_pdbs() + diff --git a/ports/azure-iot-sdk-c/CONTROL b/ports/azure-iot-sdk-c/CONTROL index 151da2b3e..a5725ed22 100644 --- a/ports/azure-iot-sdk-c/CONTROL +++ b/ports/azure-iot-sdk-c/CONTROL @@ -1,5 +1,5 @@ Source: azure-iot-sdk-c -Version: 1.2.14-1 +Version: 2019-03-18 Build-Depends: azure-uamqp-c, azure-umqtt-c, azure-c-shared-utility, parson, azure-uhttp-c Description: A C99 SDK for connecting devices to Microsoft Azure IoT services diff --git a/ports/azure-iot-sdk-c/portfile.cmake b/ports/azure-iot-sdk-c/portfile.cmake index c672754a9..42630117b 100644 --- a/ports/azure-iot-sdk-c/portfile.cmake +++ b/ports/azure-iot-sdk-c/portfile.cmake @@ -6,8 +6,8 @@ if("public-preview" IN_LIST FEATURES) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-iot-sdk-c - REF 6633c5b18710febf1af7713cf1a336fd38f623ed - SHA512 17787aa4ef52d4cf39f939fee05555fcef85cde63620036f6715b699902fd3fd766250c26ea6065f5f36572ac2b9d5293e79ba17ea9d8f4cbce267322269e7e4 + REF 68d9964daa3e6754f6f8d98bbbd637b0967d4d29 + SHA512 5492ab06ae3686c7a167d63620d6ca00024dd52d46627d7958569f1ec0cfca1b56151d54b8c7975f127f655018c10e830747ef84a0cdc66a44e903e25b2dc985 HEAD_REF public-preview PATCHES improve-external-deps.patch ) @@ -15,8 +15,8 @@ else() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-iot-sdk-c - REF a46d038a9151ff1fc7d9b70f2d7fcca03c19b972 - SHA512 bcd9c656ab721ab15da3cb690772c84e58e09d8785b975b046d4986b5fa16fb9e74a06af00acbe91fd8d4b897cd12dba9b2318ea5465865bff98f5429d2ee618 + REF 8c331e8552f754bb6e0502486ceee698625eb468 + SHA512 cc6f34e04f237bb5e8e5445e033eefab00373d53a4847ab6089c9b8eb400ab87ced6905f1c78ea7d0da3e9a56145e86a58d2f226fcf38f08659330a33d68f82e HEAD_REF master PATCHES improve-external-deps.patch ) @@ -44,3 +44,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/azure-iot-sdk-c/copyright COPYONLY) vcpkg_copy_pdbs() + diff --git a/ports/azure-uamqp-c/CONTROL b/ports/azure-uamqp-c/CONTROL index 7dde811fc..06db79ec4 100644 --- a/ports/azure-uamqp-c/CONTROL +++ b/ports/azure-uamqp-c/CONTROL @@ -1,5 +1,5 @@ Source: azure-uamqp-c -Version: 1.2.11-4 +Version: 2019-03-18 Build-Depends: azure-c-shared-utility Description: AMQP library for C diff --git a/ports/azure-uamqp-c/portfile.cmake b/ports/azure-uamqp-c/portfile.cmake index 8490ec0d4..e5b4b3d96 100644 --- a/ports/azure-uamqp-c/portfile.cmake +++ b/ports/azure-uamqp-c/portfile.cmake @@ -6,16 +6,16 @@ if("public-preview" IN_LIST FEATURES) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-uamqp-c - REF 195f2480f31e0a9492e3ff3a7a1eed4a69205ddd - SHA512 fa2cab67d119018b7e28dd002641bc3e87ac2d45ecddeddb867135bac6e5eda02588f84c26283947bdc47789c90a3f9e04dab16e5eb9be8a384ef5c9bcf39572 + REF 13f009ddd50a2837f651b0237de17db5f24c3af9 + SHA512 649e1826c02a25c57031e1cf1ae92ff15f7caadd064d1dff4aa4ee579598af58ae03f778138cdf26918c1500ca1b8678a6f88c0ae24fd6fca37dab7b81b34984 HEAD_REF master ) else() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-uamqp-c - REF 32f53b92ab864ea9e54e7ae262dc72bdabfcfa01 - SHA512 3a96feb3d04a2e90b59e897b6da93410de330963c75a0cb875d53b91838c977f6a801f4812b67c4e519059fd04aed9baf43f72258652832cf49b12692a47d188 + REF 13f009ddd50a2837f651b0237de17db5f24c3af9 + SHA512 649e1826c02a25c57031e1cf1ae92ff15f7caadd064d1dff4aa4ee579598af58ae03f778138cdf26918c1500ca1b8678a6f88c0ae24fd6fca37dab7b81b34984 HEAD_REF master ) endif() @@ -40,3 +40,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/azure-uamqp-c/copyright COPYONLY) vcpkg_copy_pdbs() + diff --git a/ports/azure-uhttp-c/CONTROL b/ports/azure-uhttp-c/CONTROL index ab1b8de01..4f41f6931 100644 --- a/ports/azure-uhttp-c/CONTROL +++ b/ports/azure-uhttp-c/CONTROL @@ -1,5 +1,5 @@ Source: azure-uhttp-c -Version: 1.1.11-4 +Version: 2019-03-18 Build-Depends: azure-c-shared-utility Description: Azure HTTP Library written in C diff --git a/ports/azure-uhttp-c/portfile.cmake b/ports/azure-uhttp-c/portfile.cmake index a4d525fae..e99276af7 100644 --- a/ports/azure-uhttp-c/portfile.cmake +++ b/ports/azure-uhttp-c/portfile.cmake @@ -6,16 +6,16 @@ if("public-preview" IN_LIST FEATURES) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-uhttp-c - REF 3a81e598caf2bd37077b7cd20bb45aaa9e694df7 - SHA512 6f12efdd2f02adb2414e10daa0604f5351f7731b997d69a9ca2923b6246c7a628bd859c6dca2503e51eeece851421b7739ffbf31a3f3d34dca4dcbadb54411d2 + REF 43dce924b32818f8ab851f972cffebc204edc5c4 + SHA512 0e5e9e7dac0c8a1a01cea2fd9ef068f988ad3453f978957cbcb009126637fe5810001e273e7b300b4540914705a89250d96df652c4bb2c7f5348cd8ce7240d70 HEAD_REF master ) else() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-uhttp-c - REF 2e838f1587d7493f3bb0470b7e21b39c3f7c84ab - SHA512 30114e995bfdfa73dc43d016588290ef886e3c24d586f443d7f82d9c577f7274b5fc4b2ca40c9dd39883262cab30bf5b3e3eb560c27191ec4e9bb893e468bb54 + REF 43dce924b32818f8ab851f972cffebc204edc5c4 + SHA512 0e5e9e7dac0c8a1a01cea2fd9ef068f988ad3453f978957cbcb009126637fe5810001e273e7b300b4540914705a89250d96df652c4bb2c7f5348cd8ce7240d70 HEAD_REF master ) endif() @@ -41,3 +41,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/azure-uhttp-c/copyright COPYONLY) vcpkg_copy_pdbs() + diff --git a/ports/azure-umqtt-c/CONTROL b/ports/azure-umqtt-c/CONTROL index 9729cd209..eec4acb1b 100644 --- a/ports/azure-umqtt-c/CONTROL +++ b/ports/azure-umqtt-c/CONTROL @@ -1,5 +1,5 @@ Source: azure-umqtt-c -Version: 1.1.11-4 +Version: 2019-03-18 Build-Depends: azure-c-shared-utility Description: General purpose library for communication over the mqtt protocol diff --git a/ports/azure-umqtt-c/portfile.cmake b/ports/azure-umqtt-c/portfile.cmake index 6833b5eb4..9f7002f32 100644 --- a/ports/azure-umqtt-c/portfile.cmake +++ b/ports/azure-umqtt-c/portfile.cmake @@ -6,16 +6,16 @@ if("public-preview" IN_LIST FEATURES) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-umqtt-c - REF f68e8d535d18028e3e6ed4d806ce8994037a49fa - SHA512 9bea4c3dbd26f5221c4da782954a4e8b4d372aca75b71a9eb63b818f31f153e4be534a20960c007c3aa184766f2a826c5ba11e780e23098707419ab39f055cc1 + REF ea9f6112d002bdff55c94df327bc7effc8393c78 + SHA512 68fdc22eb07d32cb9cf489d878db3be8326225e3a067153af7b9e29eabc8ee25162507b7e8921b71b83d42703d5a3d8e040f4a9e61a19540789432e2cecb782f HEAD_REF master ) else() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-umqtt-c - REF 6bb14b0a731e5c896758fc2f6ffe3d4bd31d2187 - SHA512 001b04f203327e5096ad3453268939da7738952704a4e0b88ea033b0a2566bec7502b3a674eadf476f9df0da605d25b8a7f6a306e23a42690884188326bd0743 + REF ea9f6112d002bdff55c94df327bc7effc8393c78 + SHA512 68fdc22eb07d32cb9cf489d878db3be8326225e3a067153af7b9e29eabc8ee25162507b7e8921b71b83d42703d5a3d8e040f4a9e61a19540789432e2cecb782f HEAD_REF master ) endif() @@ -40,3 +40,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/azure-umqtt-c/copyright COPYONLY) vcpkg_copy_pdbs() + diff --git a/ports/boost-python/portfile.cmake b/ports/boost-python/portfile.cmake index bee55c943..06b739663 100644 --- a/ports/boost-python/portfile.cmake +++ b/ports/boost-python/portfile.cmake @@ -8,6 +8,7 @@ vcpkg_from_github( REF boost-1.69.0
SHA512 7ca3210a35ac43eae31c58d7ccd58e6410ec0d62a25ae7a03fb2db9baa4cf863fbaad1686c6ceaf804663c5707f6e60b4806f792f0aceb5c12a85b705d4242d0
HEAD_REF master
+ PATCHES unwind-type.patch
)
# Find Python. Can't use find_package here, but we already know where everything is
diff --git a/ports/brunocodutra-metal/CONTROL b/ports/brunocodutra-metal/CONTROL new file mode 100644 index 000000000..9a0519df9 --- /dev/null +++ b/ports/brunocodutra-metal/CONTROL @@ -0,0 +1,3 @@ +Source: brunocodutra-metal
+Version: v2.0.1-1
+Description: A single header C++11 library designed to make you love template metaprogramming
diff --git a/ports/brunocodutra-metal/portfile.cmake b/ports/brunocodutra-metal/portfile.cmake new file mode 100644 index 000000000..857fc7dea --- /dev/null +++ b/ports/brunocodutra-metal/portfile.cmake @@ -0,0 +1,31 @@ +# header-only library
+
+include(vcpkg_common_functions)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO brunocodutra/metal
+ REF v2.0.1
+ SHA512 6aca54e2f2a6d99466d247dbd57706caef33d2399989c2eb14e99d1419922eff753acb53248f8684c1ed11bb87d79b2e850637190e8949f69e0f5ee7304281dc
+ HEAD_REF master
+)
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+)
+
+vcpkg_install_cmake()
+
+vcpkg_fixup_cmake_targets(
+ CONFIG_PATH lib/cmake/Metal
+ TARGET_PATH share/metal
+)
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib)
+
+# Handle copyright
+configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY)
+
+# CMake integration test
+vcpkg_test_cmake(PACKAGE_NAME ${PORT})
diff --git a/ports/caffe2/CONTROL b/ports/caffe2/CONTROL index 2f40d9825..bbef1f62b 100644 --- a/ports/caffe2/CONTROL +++ b/ports/caffe2/CONTROL @@ -1,4 +1,4 @@ Source: caffe2 -Version: 0.8.1-1 +Version: 0.8.1-2 Build-Depends: lmdb, gflags, glog, eigen3, protobuf Description: Caffe2 is a lightweight, modular, and scalable deep learning framework. diff --git a/ports/caffe2/fix-space.patch b/ports/caffe2/fix-space.patch new file mode 100644 index 000000000..910f52f9c --- /dev/null +++ b/ports/caffe2/fix-space.patch @@ -0,0 +1,13 @@ +diff --git a/cmake/Utils.cmake b/cmake/Utils.cmake
+index e082298..25186e4 100644
+--- a/cmake/Utils.cmake
++++ b/cmake/Utils.cmake
+@@ -386,7 +386,7 @@ function(caffe_add_whole_archive_flag lib output_var)
+ set(${output_var} -Wl,-force_load,$<TARGET_FILE:${lib}> PARENT_SCOPE)
+ elseif(MSVC)
+ # In MSVC, we will add whole archive in default.
+- set(${output_var} -WHOLEARCHIVE:$<TARGET_FILE:${lib}> PARENT_SCOPE)
++ set(${output_var} -WHOLEARCHIVE:"$<TARGET_FILE:${lib}>" PARENT_SCOPE)
+ else()
+ # Assume everything else is like gcc
+ set(${output_var} -Wl,--whole-archive ${lib} -Wl,--no-whole-archive PARENT_SCOPE)
diff --git a/ports/caffe2/portfile.cmake b/ports/caffe2/portfile.cmake index 41abd403e..b3e0b2978 100644 --- a/ports/caffe2/portfile.cmake +++ b/ports/caffe2/portfile.cmake @@ -16,7 +16,8 @@ vcpkg_from_github( SHA512 505a8540b0c28329c4e2ce443ac8e198c1ee613eb6b932927ee9d04c8afdc95081f3c4581408b7097d567840427b31f6d7626ea80f27e56532f2f2e6acd87023 HEAD_REF master PATCHES - ${CMAKE_CURRENT_LIST_DIR}/msvc-fixes.patch + msvc-fixes.patch + fix-space.patch ) if(VCPKG_CRT_LINKAGE STREQUAL static) diff --git a/ports/capnproto/0001-fix-capnpc-extension-handling-on-Windows.patch b/ports/capnproto/0001-fix-capnpc-extension-handling-on-Windows.patch new file mode 100644 index 000000000..d0544c625 --- /dev/null +++ b/ports/capnproto/0001-fix-capnpc-extension-handling-on-Windows.patch @@ -0,0 +1,39 @@ +From 6e142f270524d78689a119737660050561cf853e Mon Sep 17 00:00:00 2001 +From: Thomas Arcila <thomas.arcila@gmail.com> +Date: Sat, 9 Mar 2019 19:00:24 -0500 +Subject: [PATCH] fix capnpc extension handling on Windows + +--- + c++/src/capnp/CMakeLists.txt | 2 +- + c++/src/capnp/compiler/capnp.c++ | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/c++/src/capnp/CMakeLists.txt b/c++/src/capnp/CMakeLists.txt +index 11cbf5af..20b99ed3 100644 +--- a/c++/src/capnp/CMakeLists.txt ++++ b/c++/src/capnp/CMakeLists.txt +@@ -182,7 +182,7 @@ if(NOT CAPNP_LITE) + install(TARGETS capnp_tool capnpc_cpp capnpc_capnp ${INSTALL_TARGETS_DEFAULT_ARGS}) + + # Symlink capnpc -> capnp +- install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink capnp \"\$ENV{DESTDIR}${CMAKE_INSTALL_FULL_BINDIR}/capnpc\")") ++ install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink capnp${CMAKE_EXECUTABLE_SUFFIX} \"\$ENV{DESTDIR}${CMAKE_INSTALL_FULL_BINDIR}/capnpc${CMAKE_EXECUTABLE_SUFFIX}\")") + endif() # NOT CAPNP_LITE + + # Tests ======================================================================== +diff --git a/c++/src/capnp/compiler/capnp.c++ b/c++/src/capnp/compiler/capnp.c++ +index 8e8c459b..d252fb12 100644 +--- a/c++/src/capnp/compiler/capnp.c++ ++++ b/c++/src/capnp/compiler/capnp.c++ +@@ -78,7 +78,7 @@ public: + : context(context), disk(kj::newDiskFilesystem()), loader(*this) {} + + kj::MainFunc getMain() { +- if (context.getProgramName().endsWith("capnpc")) { ++ if (context.getProgramName().endsWith("capnpc") || context.getProgramName().endsWith("capnpc.exe")) { + kj::MainBuilder builder(context, VERSION_STRING, + "Compiles Cap'n Proto schema files and generates corresponding source code in one or " + "more languages."); +-- +2.19.1 + diff --git a/ports/capnproto/CONTROL b/ports/capnproto/CONTROL new file mode 100644 index 000000000..e02002656 --- /dev/null +++ b/ports/capnproto/CONTROL @@ -0,0 +1,4 @@ +Source: capnproto +Version: 0.7.0 +Description: Data interchange format and capability-based RPC system https://capnproto.org/ +Build-Depends: zlib diff --git a/ports/capnproto/portfile.cmake b/ports/capnproto/portfile.cmake new file mode 100644 index 000000000..35ac53fcd --- /dev/null +++ b/ports/capnproto/portfile.cmake @@ -0,0 +1,45 @@ +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) + message(FATAL_ERROR "Error: UWP build is not supported.") +endif() + +if(DEFINED VCPKG_CMAKE_SYSTEM_NAME) + # Undefined VCPKG_CMAKE_SYSTEM_NAME means Windows + message(FATAL_ERROR "Error: CapnProto only build on Windows for now. See #5630 and #5635") +endif() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("Building DLLs not supported. Building static instead.") + set(VCPKG_LIBRARY_LINKAGE static) +endif() + +include(vcpkg_common_functions) +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO capnproto/capnproto + REF v0.7.0 + SHA512 a3ea278ded6a866759c0517d16b99bd38ffea1c163ce63a3604b752d8bdaafbc38a600de94afe12db35e7f7f06e29cc94c911dc2e0ecec6fe1185452df2a2bd3 + HEAD_REF master + PATCHES "${CMAKE_CURRENT_LIST_DIR}/0001-fix-capnpc-extension-handling-on-Windows.patch" +) + +vcpkg_configure_cmake(SOURCE_PATH ${SOURCE_PATH}) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/CapnProto") + +file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools") +file(RENAME "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/tools/capnproto") +vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/capnproto) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +# Handle copyright +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/capnproto) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/capnproto/LICENSE ${CURRENT_PACKAGES_DIR}/share/capnproto/copyright) + +# Disabled for now, see #5630 and #5635 +# vcpkg_test_cmake(PACKAGE_NAME CapnProto)
\ No newline at end of file diff --git a/ports/cgal/CONTROL b/ports/cgal/CONTROL index 7412e414a..e3131bb20 100644 --- a/ports/cgal/CONTROL +++ b/ports/cgal/CONTROL @@ -1,6 +1,6 @@ Source: cgal -Version: 4.13-3 -Build-Depends: mpfr, mpir, zlib, boost-format, boost-container, boost-iterator, boost-variant, boost-any, boost-unordered, boost-random, boost-foreach, boost-graph, boost-heap, boost-logic +Version: 4.14-1 +Build-Depends: mpfr, mpir, zlib, boost-format, boost-container, boost-iterator, boost-variant, boost-any, boost-unordered, boost-random, boost-foreach, boost-graph, boost-heap, boost-logic, boost-multiprecision Description: The Computational Geometry Algorithms Library (CGAL) is a C++ library that aims to provide easy access to efficient and reliable algorithms in computational geometry. Feature: qt diff --git a/ports/cgal/portfile.cmake b/ports/cgal/portfile.cmake index e73547afc..58199cc54 100644 --- a/ports/cgal/portfile.cmake +++ b/ports/cgal/portfile.cmake @@ -1,10 +1,17 @@ include(vcpkg_common_functions) +string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) +if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) + message(WARNING "Cgal's buildsystem uses very long paths and may fail on your system.\n" + "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." + ) +endif() + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CGAL/cgal - REF releases/CGAL-4.13 - SHA512 3a12d7f567487c282928a162a47737c41c22258556ca0083b9cf492fc8f0a7c334b491b14dbfd6a62e71feeeb1b4995769c13a604e0882548f21c41b996d4eaf + REF releases/CGAL-4.14 + SHA512 c70b3ad475f6b2c03ecb540e195b4d26a709205c511b0c705dfddb5b14ef372453ce1d4d49ed342fcd21ba654dea793e91c058afae626276bfb3cfd72bccb382 HEAD_REF master ) @@ -42,11 +49,6 @@ else() endforeach() endif() -file(READ ${CURRENT_PACKAGES_DIR}/share/cgal/CGALConfig.cmake _contents) -string(REPLACE "CGAL_IGNORE_PRECONFIGURED_GMP" "1" _contents "${_contents}") -string(REPLACE "CGAL_IGNORE_PRECONFIGURED_MPFR" "1" _contents "${_contents}") - -file(WRITE ${CURRENT_PACKAGES_DIR}/share/cgal/CGALConfig.cmake "${_contents}") file(WRITE ${CURRENT_PACKAGES_DIR}/lib/cgal/CGALConfig.cmake "include (\$\{CMAKE_CURRENT_LIST_DIR\}/../../share/cgal/CGALConfig.cmake)") file(COPY ${SOURCE_PATH}/Installation/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/cgal) @@ -60,3 +62,5 @@ file( ${SOURCE_PATH}/Installation/LICENSE.LGPL DESTINATION ${CURRENT_PACKAGES_DIR}/share/cgal ) + +vcpkg_test_cmake(PACKAGE_NAME CGAL) diff --git a/ports/cli/CONTROL b/ports/cli/CONTROL new file mode 100644 index 000000000..32d58ecfb --- /dev/null +++ b/ports/cli/CONTROL @@ -0,0 +1,4 @@ +Source: cli
+Version: 2019-03-21
+Description: A library for interactive command line interfaces in modern C++
+Build-Depends: boost-asio
\ No newline at end of file diff --git a/ports/cli/portfile.cmake b/ports/cli/portfile.cmake new file mode 100644 index 000000000..0f6aae987 --- /dev/null +++ b/ports/cli/portfile.cmake @@ -0,0 +1,20 @@ +include(vcpkg_common_functions)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO daniele77/cli
+ REF f74c6eea9616e0a62f5b3be4e1d07ad432232e90
+ SHA512 9a5e25175844a7e9eacb05056c2e56e21be82efed6991d9c0e7d33e3a76f83d815455ec6e79d045ec15453354a1c50b0f91feef2766ae323931b4d4eb6caf1cf
+ HEAD_REF master
+)
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+)
+
+vcpkg_install_cmake()
+vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/cli TARGET_PATH share/cli)
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib)
+file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/cli RENAME copyright)
diff --git a/ports/coroutine/CONTROL b/ports/coroutine/CONTROL index af2c5d0e9..2afe8ae17 100644 --- a/ports/coroutine/CONTROL +++ b/ports/coroutine/CONTROL @@ -1,4 +1,4 @@ Source: coroutine -Version: 1.4.0-1 +Version: 1.4.1 Build-Depends: ms-gsl Description: C++ coroutine helper/example library diff --git a/ports/coroutine/portfile.cmake b/ports/coroutine/portfile.cmake index 78a076fe4..56b7535d6 100644 --- a/ports/coroutine/portfile.cmake +++ b/ports/coroutine/portfile.cmake @@ -1,23 +1,23 @@ include(vcpkg_common_functions) -# The tagged commit for release 1.4 was changed by the library's author. -# The current commit for release 1.4 is 3f804ca0f9ec94e3c85e3c5cc00aecc577fb8aad -# We use the commit's hash to avoid the tag changing again it in the future. -set(VERSION_1_4_COMMIT 3f804ca0f9ec94e3c85e3c5cc00aecc577fb8aad) +if(${VCPKG_TARGET_ARCHITECTURE} MATCHES x86) + message(FATAL_ERROR "This library doesn't support x86 arch. Please use x64 instead. If it is critical, create an issue at the repo: github.com/luncliff/coroutine") +endif() + +# changed to 1.4.1 +set(VERSION_1_4_COMMIT 8399236a4adf1cb49ef51133fb887027e3d77141) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO luncliff/coroutine REF ${VERSION_1_4_COMMIT} - SHA512 a77d66a8d485a99278f15652d26f255653824c47bd3653233e89ddb6368bc3b45ab0a8049e504c5acc8cf051da582bf6b4d8461c8f7f57bf5a0b7dcaddc0afbb + SHA512 35adf0aa3a923b869e02d1e33987f6c9922f90918e84feaf5a41e46334b7555db75f55c6dd797f74112010ef5e682ee6f5fbf58be84af88a8f8f084f3d6dac05 HEAD_REF master ) -if(${VCPKG_TARGET_ARCHITECTURE} MATCHES x86) - message(FATAL_ERROR "This library doesn't support x86 arch. Please use x64 instead or contact maintainer") -endif() - # package: 'ms-gsl' -message(STATUS "Using Guideline Support Library at ${CURRENT_INSTALLED_DIR}/include") +set(GSL_INCLUDE_DIR ${CURRENT_INSTALLED_DIR}/include + CACHE PATH "path to include C++ core guideline support library" FORCE) +message(STATUS "Using ms-gsl at ${GSL_INCLUDE_DIR}") set(DLL_LINKAGE false) if(${VCPKG_LIBRARY_LINKAGE} MATCHES dynamic) @@ -29,8 +29,7 @@ vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - # package: 'ms-gsl' - -DGSL_INCLUDE_DIR=${CURRENT_INSTALLED_DIR}/include + -DGSL_INCLUDE_DIR=${GSL_INCLUDE_DIR} -DTEST_DISABLED=True -DBUILD_SHARED_LIBS=${DLL_LINKAGE} ) diff --git a/ports/cppgraphqlgen/CONTROL b/ports/cppgraphqlgen/CONTROL index 9626f1a62..d2c09e78b 100644 --- a/ports/cppgraphqlgen/CONTROL +++ b/ports/cppgraphqlgen/CONTROL @@ -1,4 +1,4 @@ Source: cppgraphqlgen
-Version: 2.0.2
+Version: 2.1.0
Build-Depends: pegtl, rapidjson
Description: C++ GraphQL schema service generator
diff --git a/ports/cppgraphqlgen/portfile.cmake b/ports/cppgraphqlgen/portfile.cmake index 8371cde46..7444c39c5 100644 --- a/ports/cppgraphqlgen/portfile.cmake +++ b/ports/cppgraphqlgen/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/cppgraphqlgen
- REF v2.0.2
- SHA512 259c8bc844b70e99332cd52caf48de3e5f0dfdf5bba6d986209a0e5a9f4491953901b365f43e8612f171bdcaef80b524d6b261b62fb8a429e529a5701a839ca1
+ REF v2.1.0
+ SHA512 6fdeade25fc5c4af18d0288b80044a94cc9dcba9eed1640ec2cce06741b874f027930761964ed72073a25e083c0cf2fb828b9cf9732099c8a4f185776b1e1b8a
HEAD_REF master
)
diff --git a/ports/cpprestsdk/CONTROL b/ports/cpprestsdk/CONTROL index 20a44a2ba..230f3c23d 100644 --- a/ports/cpprestsdk/CONTROL +++ b/ports/cpprestsdk/CONTROL @@ -1,5 +1,5 @@ Source: cpprestsdk -Version: 2.10.11 +Version: 2.10.12 Build-Depends: zlib, openssl (!uwp&!windows), boost-system (!uwp&!windows), boost-date-time (!uwp&!windows), boost-regex (!uwp&!windows), boost-thread (!uwp&!windows), boost-filesystem (!uwp&!windows), boost-random (!uwp&!windows), boost-chrono (!uwp&!windows) Description: C++11 JSON, REST, and OAuth library The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services. diff --git a/ports/cpprestsdk/portfile.cmake b/ports/cpprestsdk/portfile.cmake index 7f0ca2ed0..b97e561b1 100644 --- a/ports/cpprestsdk/portfile.cmake +++ b/ports/cpprestsdk/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/cpprestsdk - REF v2.10.11 - SHA512 ea2299e128f8a75e67bb29fb42ce249cf48166c60cc73ec40d3f6ec5ae7b283ac8a083d62a7221b35f1f7876d814263a96b2a376bb306b1b4605ef17de36a115 + REF v2.10.12 + SHA512 a0839c11f71271464632095c1b91bd555220d1c87c4e7637d8424a51739e5abcd91e9257d1171d06470427ba48defd2be12bb34f5352c9590219b9f54292e3a8 HEAD_REF master ) diff --git a/ports/cpr/CONTROL b/ports/cpr/CONTROL index 6a2751073..a8cdbf052 100644 --- a/ports/cpr/CONTROL +++ b/ports/cpr/CONTROL @@ -1,4 +1,4 @@ Source: cpr -Version: 1.3.0-3 +Version: 1.3.0-4 Description: C++ Requests is a simple wrapper around libcurl inspired by the excellent Python Requests project. Build-Depends: curl[core] diff --git a/ports/cpr/portfile.cmake b/ports/cpr/portfile.cmake index 281e0da43..56e9c6cf4 100644 --- a/ports/cpr/portfile.cmake +++ b/ports/cpr/portfile.cmake @@ -1,15 +1,14 @@ include(vcpkg_common_functions) +vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO whoshuu/cpr REF 1.3.0 SHA512 fd08f8a592a5e1fb8dc93158a4850b81575983c08527fb415f65bd9284f93c804c8680d16c548744583cd26b9353a7d4838269cfc59ccb6003da8941f620c273 -) - -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/enable-install.patch + HEAD_REF master + PATCHES enable-install.patch ) vcpkg_configure_cmake( @@ -18,7 +17,6 @@ vcpkg_configure_cmake( OPTIONS -DBUILD_CPR_TESTS=OFF -DUSE_SYSTEM_CURL=ON - -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON ) diff --git a/ports/cutelyst2/CONTROL b/ports/cutelyst2/CONTROL index 888883a44..265e8d7af 100644 --- a/ports/cutelyst2/CONTROL +++ b/ports/cutelyst2/CONTROL @@ -1,4 +1,4 @@ Source: cutelyst2 -Version: 2.5.2-1 +Version: 2.5.2-2 Description: A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework Build-Depends: qt5-base diff --git a/ports/cutelyst2/portfile.cmake b/ports/cutelyst2/portfile.cmake index 118129e27..f22cad892 100644 --- a/ports/cutelyst2/portfile.cmake +++ b/ports/cutelyst2/portfile.cmake @@ -35,11 +35,7 @@ if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/cutelyst2-plugins/ActionREST.dll) file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/cutelyst2-plugins ${CURRENT_PACKAGES_DIR}/debug/bin/cutelyst2-plugins) endif() -file(GLOB BINS ${CURRENT_PACKAGES_DIR}/bin/* ${CURRENT_PACKAGES_DIR}/debug/bin/*) -if(NOT BINS) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) -endif() - +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) # Handle copyright diff --git a/ports/darknet/CONTROL b/ports/darknet/CONTROL index 250f1b425..bc6526318 100644 --- a/ports/darknet/CONTROL +++ b/ports/darknet/CONTROL @@ -1,5 +1,5 @@ Source: darknet -Version: 1.0.0 +Version: 1.0.0-1 Description: Darknet is an open source neural network framework written in C and CUDA. You only look once (YOLO) is a state-of-the-art, real-time object detection system, best example of darknet functionalities. Build-Depends: pthreads (windows), stb Default-Features: weights diff --git a/ports/darknet/dont_use_integrated_stb_lib.patch b/ports/darknet/dont_use_integrated_stb_lib.patch deleted file mode 100644 index f4c526fae..000000000 --- a/ports/darknet/dont_use_integrated_stb_lib.patch +++ /dev/null @@ -1,37 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index a5385ae..41514af 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -75,7 +75,10 @@ if(USE_INTEGRATED_LIBS) - include_directories(${CMAKE_CURRENT_LIST_DIR}/3rdparty/include) - set(PThreads_windows_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/3rdparty/include) - set(PThreads_windows_LIBRARY ${CMAKE_CURRENT_LIST_DIR}/3rdparty/lib/x64/pthreadVC2.lib) -+ set(STB_INCLUDE_PATH ${CMAKE_CURRENT_LIST_DIR}/3rdparty/include) - add_definitions(-D_TIMESPEC_DEFINED) -+else() -+ find_path(STB_INCLUDE_PATH NAMES stb.h "The directory where stb.h resides") - endif() - - set(CMAKE_DEBUG_POSTFIX d) -@@ -240,7 +243,7 @@ if(OpenCV_VERSION VERSION_GREATER "3.0" AND NOT SKIP_USELIB_TRACK) - add_executable(uselib_track ${CMAKE_CURRENT_LIST_DIR}/src/yolo_console_dll.cpp) - target_compile_definitions(uselib_track PRIVATE TRACK_OPTFLOW=1) - set_target_properties(uselib_track PROPERTIES LINKER_LANGUAGE CXX) -- target_include_directories(uselib_track PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include>) -+ target_include_directories(uselib_track PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${STB_INCLUDE_PATH}>) - target_link_libraries(uselib_track PRIVATE ${OpenCV_LIBS}) - endif() - -@@ -251,9 +254,9 @@ add_executable(darknet ${CMAKE_CURRENT_LIST_DIR}/src/darknet.c ${sources} ${head - set_source_files_properties(${CMAKE_CURRENT_LIST_DIR}/src/darknet.c PROPERTIES LANGUAGE CXX) - set_target_properties(darknet PROPERTIES LINKER_LANGUAGE CXX) - --target_include_directories(darknet PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include>) --target_include_directories(darklib PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include>) --target_include_directories(uselib PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include>) -+target_include_directories(darknet PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${STB_INCLUDE_PATH}>) -+target_include_directories(darklib PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${STB_INCLUDE_PATH}>) -+target_include_directories(uselib PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${STB_INCLUDE_PATH}>) - - if(CUDNN_FOUND) - target_link_libraries(darknet PRIVATE CuDNN::CuDNN) diff --git a/ports/darknet/enable_standard_installation.patch b/ports/darknet/enable_standard_installation.patch deleted file mode 100644 index 7af6c8c53..000000000 --- a/ports/darknet/enable_standard_installation.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 26c0ad7..9f425ad 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -25,8 +25,7 @@ enable_language(CXX) - set(CMAKE_CXX_STANDARD 11) - set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake/Modules/" ${CMAKE_MODULE_PATH}) - --set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_LIST_DIR}" CACHE PATH "Install prefix" FORCE) --set(INSTALL_BIN_DIR "${CMAKE_CURRENT_LIST_DIR}" CACHE PATH "Path where exe and dll will be installed" FORCE) -+set(INSTALL_BIN_DIR "bin" CACHE PATH "Path where exe and dll will be installed") - set(INSTALL_LIB_DIR "lib" CACHE PATH "Path where lib will be installed") - set(INSTALL_INCLUDE_DIR "include" CACHE PATH "Path where headers will be installed") - set(INSTALL_CMAKE_DIR "share/darknet" CACHE PATH "Path where cmake configs will be installed") diff --git a/ports/darknet/fix_cmakelists.patch b/ports/darknet/fix_cmakelists.patch new file mode 100644 index 000000000..62aa61fa6 --- /dev/null +++ b/ports/darknet/fix_cmakelists.patch @@ -0,0 +1,49 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 6a5076a..52d19a3 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -25,8 +25,7 @@ enable_language(CXX) + set(CMAKE_CXX_STANDARD 11) + set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake/Modules/" ${CMAKE_MODULE_PATH}) + +-set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_LIST_DIR}" CACHE PATH "Install prefix" FORCE) +-set(INSTALL_BIN_DIR "${CMAKE_CURRENT_LIST_DIR}" CACHE PATH "Path where exe and dll will be installed" FORCE) ++set(INSTALL_BIN_DIR "bin" CACHE PATH "Path where exe and dll will be installed" FORCE) + set(INSTALL_LIB_DIR "lib" CACHE PATH "Path where lib will be installed") + set(INSTALL_INCLUDE_DIR "include" CACHE PATH "Path where headers will be installed") + set(INSTALL_CMAKE_DIR "share/darknet" CACHE PATH "Path where cmake configs will be installed") +@@ -76,7 +75,6 @@ if(USE_INTEGRATED_LIBS) + set(PThreads_windows_DIR ${CMAKE_CURRENT_LIST_DIR}/3rdparty/pthreads CACHE PATH "Path where pthreads for windows can be located") + add_definitions(-D_TIMESPEC_DEFINED) + endif() +-set(Stb_DIR ${CMAKE_CURRENT_LIST_DIR}/3rdparty/stb CACHE PATH "Path where Stb image library can be located") + + set(CMAKE_DEBUG_POSTFIX d) + add_definitions(-DUSE_CMAKE_LIBS) +@@ -323,21 +321,19 @@ endif() + + set_target_properties(darklib PROPERTIES PUBLIC_HEADER "${exported_headers};${CMAKE_CURRENT_LIST_DIR}/include/yolo_v2_class.hpp") + +-install(TARGETS darklib uselib darknet EXPORT DarknetTargets ++install(TARGETS darklib EXPORT DarknetTargets + RUNTIME DESTINATION "${INSTALL_BIN_DIR}" + LIBRARY DESTINATION "${INSTALL_LIB_DIR}" + ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" + PUBLIC_HEADER DESTINATION "${INSTALL_INCLUDE_DIR}" + COMPONENT dev + ) ++install(TARGETS uselib darknet ++ DESTINATION "${INSTALL_BIN_DIR}" ++) + if(OpenCV_VERSION VERSION_GREATER "3.0" AND NOT SKIP_USELIB_TRACK) + install(TARGETS uselib_track +- EXPORT DarknetTargets +- RUNTIME DESTINATION "${INSTALL_BIN_DIR}" +- LIBRARY DESTINATION "${INSTALL_LIB_DIR}" +- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" +- PUBLIC_HEADER DESTINATION "${INSTALL_INCLUDE_DIR}" +- COMPONENT dev ++ DESTINATION "${INSTALL_BIN_DIR}" + ) + endif() + diff --git a/ports/darknet/portfile.cmake b/ports/darknet/portfile.cmake index 890ff36ec..d4551e6fb 100644 --- a/ports/darknet/portfile.cmake +++ b/ports/darknet/portfile.cmake @@ -11,12 +11,11 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO AlexeyAB/darknet - REF dd27d67f58f563bb6bb2af7bb6374f8a59cebcde - SHA512 6821ba9cd5dc185759492deaa2d20ac1ce60778a8aec9c372c96887d9650f9a97a3b7a3a5860b70078f483e62224772ef1078ecb9c03b1b3bed230569cc7b919 + REF 1cd332e4cac001ffcc12a24c72640fe02b69a8a0 + SHA512 313018d51747b40244d3a828dce8deb35f900a6be1198f0f1af5647f3889ead7f1ac78cdc4223cfe85d279ca21000df1c8feac02e703e5b91af939e26e4d5571 HEAD_REF master PATCHES - enable_standard_installation.patch - dont_use_integrated_stb_lib.patch + fix_cmakelists.patch ) set(ENABLE_CUDA OFF) @@ -52,8 +51,8 @@ if("weights" IN_LIST FEATURES) ) endif() -file(REMOVE ${SOURCE_PATH}/src/stb_image.h) -file(REMOVE ${SOURCE_PATH}/src/stb_image_write.h) +#make sure we don't use any integrated pre-built library +file(REMOVE_RECURSE ${SOURCE_PATH}/3rdparty) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} @@ -92,8 +91,7 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) endif() -#use vcpkg_fixup_cmake_targets()? -file(RENAME ${CURRENT_PACKAGES_DIR}/debug/share/darknet/DarknetTargets.cmake ${CURRENT_PACKAGES_DIR}/share/darknet/DarknetTargets.cmake) +vcpkg_fixup_cmake_targets() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/decimal-for-cpp/CONTROL b/ports/decimal-for-cpp/CONTROL index 72f0355f8..d1801e22a 100644 --- a/ports/decimal-for-cpp/CONTROL +++ b/ports/decimal-for-cpp/CONTROL @@ -1,4 +1,4 @@ Source: decimal-for-cpp -Version:1.12 +Version:1.16 Description: Decimal data type support, for COBOL-like fixed-point operations on currency values. diff --git a/ports/decimal-for-cpp/portfile.cmake b/ports/decimal-for-cpp/portfile.cmake index 3ad2aee46..41af6a158 100644 --- a/ports/decimal-for-cpp/portfile.cmake +++ b/ports/decimal-for-cpp/portfile.cmake @@ -1,29 +1,16 @@ -# Common Ambient Variables: -# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg> -# TARGET_TRIPLET is the current triplet (x86-windows, etc) -# PORT is the current port name (zlib, etc) -# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} -# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} -# - #header-only library include(vcpkg_common_functions) -vcpkg_download_distfile(HEADER - URLS "https://raw.githubusercontent.com/vpiotr/decimal_for_cpp/98287a0f0f48aaed2cc146d7682396ae08ed0aea/include/decimal.h" - FILENAME "decimal.h" - SHA512 9de1208760c74ff1e6b1a74957dabae33981d2f5d0ec402b48f27f4dc24c950ea69219a9ee9831959a8669a9c7908093d833a227924f1955cbe444a9f43c5f3a -) - -vcpkg_download_distfile(LICENSE - URLS "https://raw.githubusercontent.com/vpiotr/decimal_for_cpp/98287a0f0f48aaed2cc146d7682396ae08ed0aea/doc/license.txt" - FILENAME "decimal-for-cpp-License.txt" - SHA512 0b2be46b07a0536404887fae9665d6532ffd4cbfefbec42926c14e055f538c1f3a73b6e61ab7fa1584e634ad99304133d18855197df0a914cbb835674cc67677 -) - +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO vpiotr/decimal_for_cpp + REF 375633343aa0af812a3ebf4bd06adaeff112ead4 + SHA512 7692fbb1643ed77b0b44fee1cf9a603fa257a5cf64ea66193c571fca61d138c6465a359db21955a4e2a234677f1806d47e05811daf2954004b108e09d3c8d4fa + HEAD_REF master + ) -file(COPY ${HEADER} DESTINATION ${CURRENT_PACKAGES_DIR}/include) -file(COPY ${LICENSE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/decimal-for-cpp) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/decimal-for-cpp/decimal-for-cpp-License.txt ${CURRENT_PACKAGES_DIR}/share/decimal-for-cpp/copyright) +file(COPY ${SOURCE_PATH}/include/decimal.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) +file(COPY ${SOURCE_PATH}/doc/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/decimal-for-cpp) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/decimal-for-cpp/license.txt ${CURRENT_PACKAGES_DIR}/share/decimal-for-cpp/copyright) diff --git a/ports/doctest/CONTROL b/ports/doctest/CONTROL index c4afd763a..2291f0556 100644 --- a/ports/doctest/CONTROL +++ b/ports/doctest/CONTROL @@ -1,3 +1,3 @@ Source: doctest -Version: 2.2.3 +Version: 2.3.1 Description: The fastest feature-rich C++ single-header testing framework for unit tests and TDD diff --git a/ports/doctest/portfile.cmake b/ports/doctest/portfile.cmake index 53defc430..859e2be99 100644 --- a/ports/doctest/portfile.cmake +++ b/ports/doctest/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO onqtam/doctest - REF 2.2.3 - SHA512 764463178ea109d46714751a0e5a74d9896c3cf3f8b8c3424a9252c58d9f2c1a2c7fa7eec68e516fb96f4634ae0078ea00d49d28d45a6331c3ebcbe1ed6b1175 + REF 2.3.1 + SHA512 b8cb502054e05d6e348fa008b44eb49e7932e0ee15e413953ecfd3092ebc490e5924ee669f22abb85e349033e307e7e19ad44b0c6a98973a8ffe4c7aef9017b2 HEAD_REF master ) diff --git a/ports/draco/CONTROL b/ports/draco/CONTROL index faa63303a..53da07b77 100644 --- a/ports/draco/CONTROL +++ b/ports/draco/CONTROL @@ -1,4 +1,4 @@ Source: draco -Version: 1.3.3 +Version: 1.3.3-1 Description: A library for compressing and decompressing 3D geometric meshes and point clouds. It is intended to improve the storage and transmission of 3D graphics. Build-Depends: diff --git a/ports/draco/fix-compile-error-uwp.patch b/ports/draco/fix-compile-error-uwp.patch new file mode 100644 index 000000000..874ea7432 --- /dev/null +++ b/ports/draco/fix-compile-error-uwp.patch @@ -0,0 +1,30 @@ +diff --git a/src/draco/core/symbol_coding_utils.h b/src/draco/core/symbol_coding_utils.h
+index be2183d..eaaca00 100644
+--- a/src/draco/core/symbol_coding_utils.h
++++ b/src/draco/core/symbol_coding_utils.h
+@@ -41,7 +41,9 @@ typename std::make_unsigned<IntTypeT>::type ConvertSignedIntToSymbol(
+ if (val >= 0) {
+ return static_cast<UnsignedType>(val) << 1;
+ }
+- val = -(val + 1); // Map -1 to 0, -2 to -1, etc..
++ // Map -1 to 0, -2 to -1, etc..
++ val += 1;
++ val *= -1;
+ UnsignedType ret = static_cast<UnsignedType>(val);
+ ret <<= 1;
+ ret |= 1;
+diff --git a/src/draco/io/parser_utils.cc b/src/draco/io/parser_utils.cc
+index 1aa52cc..cfbbdbd 100644
+--- a/src/draco/io/parser_utils.cc
++++ b/src/draco/io/parser_utils.cc
+@@ -150,7 +150,9 @@ bool ParseSignedInt(DecoderBuffer *buffer, int32_t *value) {
+ uint32_t v;
+ if (!ParseUnsignedInt(buffer, &v))
+ return false;
+- *value = (sign < 0) ? -v : v;
++ if (sign < 0)
++ v *= -1;
++ *value = v;
+ return true;
+ }
+
diff --git a/ports/draco/portfile.cmake b/ports/draco/portfile.cmake index 853d45e86..4b95739ca 100644 --- a/ports/draco/portfile.cmake +++ b/ports/draco/portfile.cmake @@ -23,6 +23,8 @@ vcpkg_from_github( REF 1.3.3 SHA512 80ed5a623046822f5bb26b2454c8ee8cc93ffe9eb3012e8461cefdfc577b26d69a92ea0f0c5e14f5f48c1ef99f9a7263b01710df376792e74358ae14e49c3897 HEAD_REF master + PATCHES + fix-compile-error-uwp.patch ) vcpkg_configure_cmake( diff --git a/ports/effolkronium-random/CONTROL b/ports/effolkronium-random/CONTROL index 33e61c639..77facd63b 100644 --- a/ports/effolkronium-random/CONTROL +++ b/ports/effolkronium-random/CONTROL @@ -1,3 +1,3 @@ Source: effolkronium-random -Version: 1.2.0 +Version: 1.3.0 Description: Random with a modern C++ API diff --git a/ports/effolkronium-random/portfile.cmake b/ports/effolkronium-random/portfile.cmake index d96401e22..d6e3cbba8 100644 --- a/ports/effolkronium-random/portfile.cmake +++ b/ports/effolkronium-random/portfile.cmake @@ -3,14 +3,11 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO effolkronium/random - REF v1.2.0 - SHA512 92c5447196601d7dfb0320b517494f4e75cb55011c800cd2f18655cd4ab867672ad39830a3dbb3fc5f39a41c8ae03b6a6910f1eac4a2f131cffca896554be561 + REF v1.3.0 + SHA512 68bd42e696a784832376950df7df9ddc8fc52ad073f44eddc7bcc2547278096ad3ec6463ce3a0e2e60a223e0852e68be4c2e9bcec4b237b9017ac2b03d5be812 HEAD_REF master ) -vcpkg_replace_string(${SOURCE_PATH}/CMakeLists.txt "effolkronium_random" "effolkronium-random") -vcpkg_replace_string(${SOURCE_PATH}/cmake/config.cmake.in "effolkronium_random" "effolkronium-random") - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA @@ -19,7 +16,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH cmake/ TARGET_PATH /share/effolkronium-random) +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake/ TARGET_PATH /share/effolkronium_random) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib) file(INSTALL ${SOURCE_PATH}/LICENSE.MIT DESTINATION ${CURRENT_PACKAGES_DIR}/share/effolkronium-random RENAME copyright) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index 35b2bce9d..aa8696107 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,7 @@ Source: exiv2 -Version: 2018-11-08 -Build-Depends: zlib, expat, libiconv +Version: 0.27 +Build-Depends: zlib, expat, libiconv, gettext Description: Image metadata library and tools http://www.exiv2.org + +Feature: unicode +Description: Compile with unicode support on windows
\ No newline at end of file diff --git a/ports/exiv2/iconv.patch b/ports/exiv2/iconv.patch index 27bedd314..dcea70b86 100644 --- a/ports/exiv2/iconv.patch +++ b/ports/exiv2/iconv.patch @@ -1,28 +1,36 @@ -diff --git a/cmake/findDependencies.cmake b/cmake/findDependencies.cmake
-index e220e2f..992b887 100644
--- a/cmake/findDependencies.cmake
+++ b/cmake/findDependencies.cmake
-@@ -50,7 +50,7 @@ if( EXIV2_ENABLE_NLS )
- # the manual check in cmake/generateConfigFile.cmake
+@@ -36,5 +36,5 @@
+
+
+ if (EXIV2_ENABLE_NLS)
+- find_package(Intl REQUIRED)
++ find_package(unofficial-gettext CONFIG)
endif( )
--find_package(Iconv)
-+find_package(unofficial-iconv CONFIG REQUIRED)
- if( ICONV_FOUND )
- message ( "-- ICONV_INCLUDE_DIR : " ${Iconv_INCLUDE_DIR} )
- message ( "-- ICONV_LIBRARIES : " ${Iconv_LIBRARY} )
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 91469b6..4c51068 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
-@@ -274,8 +274,8 @@ if( EXIV2_ENABLE_NLS )
- target_link_libraries( exiv2lib PRIVATE ${LIBINTL_LIBRARIES} )
+@@ -208,14 +208,14 @@
+ endif()
+
+ if( EXIV2_ENABLE_NLS )
+- target_link_libraries(exiv2lib PRIVATE ${Intl_LIBRARIES})
+- target_include_directories(exiv2lib PRIVATE ${Intl_INCLUDE_DIRS})
++ target_link_libraries(exiv2lib PRIVATE unofficial::gettext::libintl)
+ # Definition needed for translations
+ target_compile_definitions(exiv2lib PUBLIC EXV_LOCALEDIR="/../${CMAKE_INSTALL_LOCALEDIR}")
endif()
-if( ICONV_FOUND )
- target_link_libraries( exiv2lib PRIVATE Iconv::Iconv )
-+if( ICONV_FOUND OR 1 )
-+ target_link_libraries( exiv2lib PRIVATE unofficial::iconv::libiconv )
- endif()
+-endif()
++if(NOT TARGET unofficial::iconv::libiconv)
++ find_package(unofficial-iconv CONFIG)
++endif()
++target_link_libraries( exiv2lib PRIVATE unofficial::iconv::libiconv )
+
+
diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index e046e0bde..96cec76cb 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,26 +3,44 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF 274ef04f7ebbff567135e732434c9c8353265d6c - SHA512 8e8d32a4c51da2a61026a4541885da72df88c3e30452944c5e2d2d8e6d8d03dcdea72c4e3bfe9673554453ddc547651d160cfba2bfab1450a1770f4af2be740a + REF 0.27 + SHA512 ec605db73abcf3cc2df78c1fc3aae5335a51192f660668e39a4f20fc7f372b18c3cec9b704e1c71c356315fd75e791622de1dffe576432ee0fb12bf63a98a423 HEAD_REF master - PATCHES iconv.patch + PATCHES + iconv.patch ) +if(WIN32 AND ("unicode" IN_LIST FEATURES)) + set(enable_win_unicode TRUE) +elseif() + set(enable_win_unicode FALSE) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA + OPTIONS + -DEXIV2_ENABLE_WIN_UNICODE:BOOL=${enable_win_unicode} + -DEXIV2_BUILD_EXIV2_COMMAND:BOOL=FALSE + -DEXIV2_BUILD_UNIT_TESTS:BOOL=FALSE + -DEXIV2_BUILD_SAMPLES:BOOL=FALSE +# -DEXIV2_ENABLE_NLS:BOOL=OFF ) vcpkg_install_cmake() vcpkg_fixup_cmake_targets(CONFIG_PATH "share/exiv2/cmake") +configure_file( + ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake + ${CURRENT_PACKAGES_DIR}/share/exiv2 + @ONLY +) + vcpkg_copy_pdbs() # Clean -file(GLOB EXE ${CURRENT_PACKAGES_DIR}/bin/*.exe ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share ${EXE} ${DEBUG_EXE}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) diff --git a/ports/exiv2/vcpkg-cmake-wrapper.cmake b/ports/exiv2/vcpkg-cmake-wrapper.cmake new file mode 100644 index 000000000..76e941f20 --- /dev/null +++ b/ports/exiv2/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,11 @@ +_find_package(${ARGS})
+
+if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static")
+ find_package(unofficial-iconv CONFIG REQUIRED)
+ find_package(unofficial-gettext CONFIG REQUIRED)
+ if(TARGET exiv2lib)
+ set_property(TARGET exiv2lib APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+ unofficial::iconv::libiconv
+ unofficial::gettext::libintl)
+ endif()
+endif()
diff --git a/ports/fcl/CONTROL b/ports/fcl/CONTROL index 0e425f59b..e486cf90a 100644 --- a/ports/fcl/CONTROL +++ b/ports/fcl/CONTROL @@ -1,4 +1,4 @@ Source: fcl -Version: 0.5.0-3 +Version: 0.5.0-4 Description: a library for performing three types of proximity queries on a pair of geometric models composed of triangles Build-Depends: ccd, octomap diff --git a/ports/fcl/portfile.cmake b/ports/fcl/portfile.cmake index 851a013c2..92781872f 100644 --- a/ports/fcl/portfile.cmake +++ b/ports/fcl/portfile.cmake @@ -36,7 +36,12 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake/") +if(EXISTS ${CURRENT_PACKAGES_DIR}/CMake) + vcpkg_fixup_cmake_targets(CONFIG_PATH "CMake") +else() + vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/fcl") +endif() + file(READ ${CURRENT_PACKAGES_DIR}/share/fcl/fclConfig.cmake FCL_CONFIG) string(REPLACE "unset(_expectedTargets)" diff --git a/ports/freeimage/CONTROL b/ports/freeimage/CONTROL index 5497b0fa3..0d2277772 100644 --- a/ports/freeimage/CONTROL +++ b/ports/freeimage/CONTROL @@ -1,4 +1,4 @@ Source: freeimage -Version: 3.18.0-3 +Version: 3.18.0-4 Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp, libraw, jxrlib, openexr Description: Support library for graphics image formats diff --git a/ports/freeimage/use-external-libtiff.patch b/ports/freeimage/use-external-libtiff.patch index f2ddd9ba6..23d5dfd1d 100644 --- a/ports/freeimage/use-external-libtiff.patch +++ b/ports/freeimage/use-external-libtiff.patch @@ -1,8 +1,8 @@ diff --git a/Source/FreeImage/PluginTIFF.cpp b/Source/FreeImage/PluginTIFF.cpp -index 1b45453..562fdd7 100644 +index 5068d94..8947b03 100644 --- a/Source/FreeImage/PluginTIFF.cpp +++ b/Source/FreeImage/PluginTIFF.cpp -@@ -37,7 +37,7 @@ +@@ -37,9 +37,9 @@ #include "FreeImage.h" #include "Utilities.h" @@ -11,6 +11,36 @@ index 1b45453..562fdd7 100644 #include "../Metadata/FreeImageTag.h" #include "../OpenEXR/Half/half.h" + #include "FreeImageIO.h" + #include "PSDParser.h" +@@ -199,15 +199,18 @@ Open a TIFF file for reading or writing + @param name + @param mode + */ ++/* + TIFF* + TIFFOpen(const char* name, const char* mode) { + return 0; + } ++*/ + + // ---------------------------------------------------------- + // TIFF library FreeImage-specific routines. + // ---------------------------------------------------------- + ++/* + void* + _TIFFmalloc(tmsize_t s) { + return malloc(s); +@@ -245,6 +248,7 @@ int + _TIFFmemcmp(const void* p1, const void* p2, tmsize_t c) { + return (memcmp(p1, p2, (size_t) c)); + } ++*/ + + // ---------------------------------------------------------- + // in FreeImage warnings and errors are disabled + diff --git a/Source/Metadata/XTIFF.cpp b/Source/Metadata/XTIFF.cpp index d5be902..8dbcd5d 100644 --- a/Source/Metadata/XTIFF.cpp diff --git a/ports/freeopcua/CONTROL b/ports/freeopcua/CONTROL index ad224b863..b6d20b57a 100644 --- a/ports/freeopcua/CONTROL +++ b/ports/freeopcua/CONTROL @@ -1,4 +1,4 @@ Source: freeopcua -Version: 20190125 +Version: 20190125-1 Description: OPC-UA server and client library written in C++ and with a lot of code auto-generated from xml specification using python. Build-Depends: boost-asio,boost-system,boost-program-options,boost-filesystem,boost-thread,boost-format,boost-foreach,boost-property-tree,boost-date-time diff --git a/ports/freeopcua/cmakelists_fixes.patch b/ports/freeopcua/cmakelists_fixes.patch index 6c9798766..f818eab35 100644 --- a/ports/freeopcua/cmakelists_fixes.patch +++ b/ports/freeopcua/cmakelists_fixes.patch @@ -1,17 +1,22 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index de03564..2637355 100644 +index de03564..df3fcf6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -6,6 +6,8 @@ if( NOT CMAKE_BUILD_TYPE ) - endif() +@@ -1,11 +1,8 @@ + cmake_minimum_required(VERSION 2.8) +-#It seems Cmake does not set default bild type so we force it +-if( NOT CMAKE_BUILD_TYPE ) +- set( CMAKE_BUILD_TYPE Debug CACHE STRING "Debug" FORCE ) +-endif() +- project(freeopcua) +set(CMAKE_CXX_STANDARD 11) +set(CMAKE_POSITION_INDEPENDENT_CODE ON) option(BUILD_CLIENT "Build Client" ON) option(BUILD_SERVER "Build Server" ON) -@@ -16,28 +18,6 @@ option(BUILD_PYTHON "Build Python bindings" ON) +@@ -16,28 +13,6 @@ option(BUILD_PYTHON "Build Python bindings" ON) option(BUILD_TESTING "Build and run tests" OFF) OPTION(BUILD_SHARED_LIBS "Build shared libraries." ON) @@ -40,7 +45,7 @@ index de03564..2637355 100644 # Helper function to generate a pkg-config file for a single library # Takes the filename of the .pc file as a parameter and replaces all # placeholders in the .pc.in file with the actual values -@@ -60,23 +40,12 @@ function(generate_pkgconfig BASENAME) +@@ -60,23 +35,9 @@ function(generate_pkgconfig BASENAME) endif() endfunction(generate_pkgconfig) if(MSVC) @@ -63,14 +68,11 @@ index de03564..2637355 100644 - #set(CMAKE_SHARED_LINKER_FLAGS "--no-undefined" ) + add_definitions(-D_SCL_SECURE_NO_WARNINGS) + add_definitions(-D_CRT_SECURE_NO_WARNINGS) -+ add_definitions(-D_WIN32) -+ add_definitions(-D_WINDOWS) -+ add_definitions(-D_WIN32_WINNT=0x0600) + set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS TRUE) endif() if(WIN32) -@@ -105,7 +74,7 @@ else(WIN32) +@@ -105,7 +66,7 @@ else(WIN32) endif(WIN32) @@ -79,7 +81,7 @@ index de03564..2637355 100644 include_directories( ${Boost_INCLUDE_DIRS} ) link_directories( ${Boost_LIBRARY_DIRS} ) message(STATUS "Boost INCLUDE DIR IS: " ${Boost_INCLUDE_DIRS}) -@@ -185,9 +154,6 @@ add_library(opcuaprotocol +@@ -185,14 +146,12 @@ add_library(opcuaprotocol src/protocol/subscriptions.cpp ) @@ -89,7 +91,14 @@ index de03564..2637355 100644 target_link_libraries(opcuaprotocol ${ADDITIONAL_LINK_LIBRARIES}) target_include_directories(opcuaprotocol PUBLIC $<INSTALL_INTERFACE:include>) install(TARGETS opcuaprotocol EXPORT FreeOpcUa -@@ -227,10 +193,6 @@ if (BUILD_TESTING) ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} +- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/static) ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) + + generate_pkgconfig("libopcuaprotocol.pc") + +@@ -227,10 +186,6 @@ if (BUILD_TESTING) gtest_main ) @@ -100,7 +109,7 @@ index de03564..2637355 100644 add_test(NAME opcuaprotocol COMMAND test_opcuaprotocol) endif() -@@ -266,11 +228,7 @@ SET(opcuacore_SOURCES +@@ -266,15 +221,12 @@ SET(opcuacore_SOURCES add_library(opcuacore ${opcuacore_SOURCES}) @@ -112,17 +121,23 @@ index de03564..2637355 100644 +target_link_libraries(opcuacore ${ADDITIONAL_LINK_LIBRARIES} opcuaprotocol ${Boost_LIBRARIES}) target_include_directories(opcuacore PUBLIC $<INSTALL_INTERFACE:include>) install(TARGETS opcuacore EXPORT FreeOpcUa ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -@@ -306,7 +264,7 @@ if (BUILD_TESTING) +- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/static) ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) + + generate_pkgconfig("libopcuacore.pc") + +@@ -306,7 +258,7 @@ if (BUILD_TESTING) ) if (NOT CMAKE_VERSION VERSION_LESS 2.8.12) - target_compile_options(test_opcuacore PUBLIC ${D}DYNAMIC_ADDON_PATH="${DYNAMIC_ADDON_PATH}" ${D}TEST_CORE_CONFIG_PATH="${TEST_CORE_CONFIG_PATH}" ${EXECUTABLE_CXX_FLAGS}) -+ target_compile_options(test_opcuacore PUBLIC ${D}DYNAMIC_ADDON_PATH="${DYNAMIC_ADDON_PATH}" ${D}TEST_CORE_CONFIG_PATH="${TEST_CORE_CONFIG_PATH}" ) ++ target_compile_options(test_opcuacore PUBLIC -DDYNAMIC_ADDON_PATH="${DYNAMIC_ADDON_PATH}" -DTEST_CORE_CONFIG_PATH="${TEST_CORE_CONFIG_PATH}" ) endif () add_test(NAME opcuacore COMMAND test_opcuacore) -@@ -327,9 +285,6 @@ if (BUILD_CLIENT) +@@ -327,9 +279,6 @@ if (BUILD_CLIENT) src/client/client.cpp ) @@ -132,7 +147,18 @@ index de03564..2637355 100644 target_link_libraries(opcuaclient opcuacore ${ADDITIONAL_LINK_LIBRARIES} -@@ -371,9 +326,6 @@ if (BUILD_CLIENT) +@@ -338,8 +287,9 @@ if (BUILD_CLIENT) + + target_include_directories(opcuaclient PUBLIC $<INSTALL_INTERFACE:include>) + install(TARGETS opcuaclient EXPORT FreeOpcUa ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} +- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/static) ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) + + generate_pkgconfig("libopcuaclient.pc") + +@@ -371,9 +321,6 @@ if (BUILD_CLIENT) opcuacore ) @@ -142,7 +168,7 @@ index de03564..2637355 100644 endif(BUILD_CLIENT) -@@ -423,10 +375,7 @@ if(BUILD_SERVER) +@@ -423,14 +370,12 @@ if(BUILD_SERVER) src/server/subscription_service_internal.cpp ) @@ -153,17 +179,23 @@ index de03564..2637355 100644 + target_link_libraries(opcuaserver ${ADDITIONAL_LINK_LIBRARIES} opcuacore opcuaprotocol ${Boost_LIBRARIES}) target_include_directories(opcuaserver PUBLIC $<INSTALL_INTERFACE:include>) install(TARGETS opcuaserver EXPORT FreeOpcUa ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -@@ -481,7 +430,7 @@ if(BUILD_SERVER) +- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/static) ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) + + generate_pkgconfig("libopcuaserver.pc") + +@@ -481,7 +426,7 @@ if(BUILD_SERVER) target_include_directories(test_opcuaserver PUBLIC .) if (NOT CMAKE_VERSION VERSION_LESS 2.8.12) - target_compile_options(test_opcuaserver PUBLIC ${D}TEST_CORE_CONFIG_PATH="${TEST_CORE_CONFIG_PATH}" ${STATIC_LIBRARY_CXX_FLAGS}) -+ target_compile_options(test_opcuaserver PUBLIC ${D}TEST_CORE_CONFIG_PATH="${TEST_CORE_CONFIG_PATH}") ++ target_compile_options(test_opcuaserver PUBLIC -DTEST_CORE_CONFIG_PATH="${TEST_CORE_CONFIG_PATH}") endif () add_test(NAME opcuaserverapp COMMAND test_opcuaserver) -@@ -510,9 +459,6 @@ if(BUILD_SERVER) +@@ -510,9 +455,6 @@ if(BUILD_SERVER) opcuaserver ${Boost_PROGRAM_OPTIONS_LIBRARY} ) @@ -173,7 +205,7 @@ index de03564..2637355 100644 endif(BUILD_SERVER) -@@ -533,9 +479,6 @@ if (BUILD_CLIENT) +@@ -533,9 +475,6 @@ if (BUILD_CLIENT) ${SSL_SUPPORT_LINK_LIBRARIES} ) @@ -183,7 +215,7 @@ index de03564..2637355 100644 endif (BUILD_CLIENT) -@@ -555,9 +498,6 @@ if(BUILD_SERVER) +@@ -555,9 +494,6 @@ if(BUILD_SERVER) opcuaserver ) @@ -193,12 +225,14 @@ index de03564..2637355 100644 if(MSVC) set_target_properties(example_server PROPERTIES LINK_FLAGS /STACK:3000000) endif(MSVC) -@@ -572,7 +512,7 @@ if (BUILD_PYTHON) +@@ -572,8 +508,8 @@ if (BUILD_PYTHON) add_subdirectory(python) endif (BUILD_PYTHON) -install(EXPORT FreeOpcUa DESTINATION lib/cmake/FreeOpcUa FILE FreeOpcUaConfig.cmake) -+install(EXPORT FreeOpcUa DESTINATION share/freeopcua FILE FreeOpcUaConfig.cmake) ++install(EXPORT FreeOpcUa DESTINATION share/freeopcua FILE freeopcuaConfig.cmake) SET(CPACK_GENERATOR "DEB") - SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "FreeOpcUa") +-SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "FreeOpcUa") ++SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "freeopcua") + INCLUDE(CPack) diff --git a/ports/freeopcua/portfile.cmake b/ports/freeopcua/portfile.cmake index e329f12e6..981dd9383 100644 --- a/ports/freeopcua/portfile.cmake +++ b/ports/freeopcua/portfile.cmake @@ -22,12 +22,11 @@ vcpkg_configure_cmake( -DBUILD_PYTHON=OFF -DBUILD_TESTING=OFF -DSSL_SUPPORT_MBEDTLS=OFF + -DCMAKE_DEBUG_POSTFIX=d ) vcpkg_install_cmake() - -file(RENAME ${CURRENT_PACKAGES_DIR}/debug/share/freeopcua/FreeOpcUaConfig-debug.cmake ${CURRENT_PACKAGES_DIR}/share/freeopcua/FreeOpcUaConfig-debug.cmake) -file(RENAME ${CURRENT_PACKAGES_DIR}/debug/share/freeopcua/FreeOpcUaConfig.cmake ${CURRENT_PACKAGES_DIR}/share/freeopcua/FreeOpcUaConfig.cmake) +vcpkg_fixup_cmake_targets() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) diff --git a/ports/freetype/0005-Fix-DLL-EXPORTS.patch b/ports/freetype/0005-Fix-DLL-EXPORTS.patch new file mode 100644 index 000000000..96abaffb7 --- /dev/null +++ b/ports/freetype/0005-Fix-DLL-EXPORTS.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index dd8a878..75f9ab7 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -141,7 +141,7 @@ set(VERSION_PATCH "1") + # Increment REVISION. + set(LIBRARY_VERSION "6.16.0") + set(LIBRARY_SOVERSION "6") +- ++ADD_DEFINITIONS(-DDLL_EXPORT) + # These options mean "require x and complain if not found". They'll get + # optionally found anyway. Use `-DCMAKE_DISABLE_FIND_PACKAGE_x=TRUE` to disable + # searching for a packge entirely (x is the CMake package name, so "BZip2" diff --git a/ports/freetype/portfile.cmake b/ports/freetype/portfile.cmake index ace5a062d..73cb6b317 100644 --- a/ports/freetype/portfile.cmake +++ b/ports/freetype/portfile.cmake @@ -6,7 +6,9 @@ vcpkg_download_distfile(ARCHIVE FILENAME "freetype-${FT_VERSION}.tar.bz2" SHA512 856766e1f3f4c7dc8afb2b5ee991138c8b642c6a6e5e007cd2bc04ae58bde827f082557cf41bf541d97e8485f7fd064d10390d1ee597f19d1daed6c152e27708 ) -vcpkg_extract_source_archive_ex( + +if(NOT ${VCPKG_LIBRARY_LINKAGE} STREQUAL "dynamic") + vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH ARCHIVE ${ARCHIVE} REF ${FT_VERSION} @@ -15,7 +17,20 @@ vcpkg_extract_source_archive_ex( 0002-Add-CONFIG_INSTALL_PATH-option.patch 0003-Fix-UWP.patch 0004-Fix-DLL-install.patch -) + ) +else() + vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + REF ${FT_VERSION} + PATCHES + 0001-Fix-install-command.patch + 0002-Add-CONFIG_INSTALL_PATH-option.patch + 0003-Fix-UWP.patch + 0004-Fix-DLL-install.patch + 0005-Fix-DLL-EXPORTS.patch + ) +endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} @@ -26,6 +41,7 @@ vcpkg_configure_cmake( -DFT_WITH_BZIP2=ON -DFT_WITH_PNG=ON -DFT_WITH_HARFBUZZ=OFF + -DCMAKE_DISABLE_FIND_PACKAGE_HarfBuzz=TRUE ) vcpkg_install_cmake() diff --git a/ports/gdal/0001-Fix-debug-crt-flags.patch b/ports/gdal/0001-Fix-debug-crt-flags.patch index aab3d40ca..266fc4355 100644 --- a/ports/gdal/0001-Fix-debug-crt-flags.patch +++ b/ports/gdal/0001-Fix-debug-crt-flags.patch @@ -1,9 +1,6 @@ -diff -Nuar a/nmake.opt b/nmake.opt ---- a/nmake.opt 2018-05-04 09:05:46.000000000 +0200 -+++ b/nmake.opt 2018-05-11 22:58:39.387603800 +0200 -@@ -124,11 +124,21 @@ - CXX_PDB_FLAGS= - !ENDIF +--- a/nmake.opt Fri Dec 14 22:34:20 2018 ++++ b/nmake.opt Wed Mar 27 11:00:00 2019 +@@ -133,7 +133,17 @@ +# Flags to choose CRT variant to link against (e.g. static: /MT, /MTd, dynamic: /MD, /MDd) +# Ensure MRSID_CONFIG in mrsid/nmake.opt is set appropriately as well @@ -16,12 +13,10 @@ diff -Nuar a/nmake.opt b/nmake.opt +!ENDIF + !IFNDEF OPTFLAGS - !IFNDEF DEBUG + !IF "$(DEBUG)" == "0" -OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo /MP /MD /EHsc /Ox /FC /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DNDEBUG +OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo /MP $(CXX_CRT_FLAGS) /EHsc /Ox /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DNDEBUG !ELSE -OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo /MP /MDd /EHsc /FC /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DDEBUG +OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo /MP $(CXX_CRT_FLAGS) /EHsc /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DDEBUG !ENDIF - !ENDIF # OPTFLAGS - diff --git a/ports/gdal/0002-Fix-static-build.patch b/ports/gdal/0002-Fix-static-build.patch new file mode 100644 index 000000000..d440ceff8 --- /dev/null +++ b/ports/gdal/0002-Fix-static-build.patch @@ -0,0 +1,27 @@ +--- a/makefile.vc Fri Dec 14 22:34:20 2018
++++ b/makefile.vc Wed Mar 27 11:00:00 2019
+@@ -60,3 +60,3 @@
+
+-default: $(TARGET_LIB) $(PLUGIN_TARGET) apps_dir
++default: $(TARGET_LIB) $(PLUGIN_TARGET)
+
+@@ -227,4 +227,2 @@
+ $(MAKE) /f makefile.vc plugins-install
+- cd ..\apps
+- $(MAKE) /f makefile.vc install
+ cd ..
+@@ -232,8 +230,2 @@
+ $(INSTALL) LICENSE.TXT $(DATADIR)
+-!IFDEF HTMLDIR
+- -mkdir $(HTMLDIR)
+- cd frmts
+- $(MAKE) /f makefile.vc html-install
+- cd ..
+-!ENDIF
+ !IFDEF INCLUDE_OGR_FRMTS
+@@ -241,5 +233,2 @@
+ $(MAKE) /f makefile.vc plugins-install
+-!IFDEF HTMLDIR
+- $(MAKE) /f makefile.vc html-install
+-!ENDIF
+ cd ..\..
diff --git a/ports/gdal/CONTROL b/ports/gdal/CONTROL index 0814046f5..f31e33818 100644 --- a/ports/gdal/CONTROL +++ b/ports/gdal/CONTROL @@ -1,5 +1,5 @@ Source: gdal -Version: 2.4.0 +Version: 2.4.0-1 Description: The Geographic Data Abstraction Library for reading and writing geospatial raster and vector data. Build-Depends: proj, libpng, geos, sqlite3, curl, expat, libpq, openjpeg, libwebp, libxml2, liblzma, netcdf-c, hdf5 diff --git a/ports/gdal/portfile.cmake b/ports/gdal/portfile.cmake index 95029884a..46395386c 100644 --- a/ports/gdal/portfile.cmake +++ b/ports/gdal/portfile.cmake @@ -11,9 +11,7 @@ if (TRIPLET_SYSTEM_ARCH MATCHES "arm") endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") - message(FATAL_ERROR "GDAL's nmake buildsystem does not support building static libraries") -elseif(VCPKG_CRT_LINKAGE STREQUAL "static") - message(FATAL_ERROR "GDAL's nmake buildsystem does not support static crt linkage") + list(APPEND NMAKE_OPTIONS "DLLBUILD=0") endif() include(vcpkg_common_functions) @@ -43,6 +41,7 @@ foreach(BUILD_TYPE IN LISTS BUILD_TYPES) SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-${BUILD_TYPE}/gdal-${GDAL_VERSION_STR} PATCHES ${CMAKE_CURRENT_LIST_DIR}/0001-Fix-debug-crt-flags.patch + ${CMAKE_CURRENT_LIST_DIR}/0002-Fix-static-build.patch ) endforeach() @@ -64,8 +63,13 @@ file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/debug/lib/libpng16d.lib" PNG_LIBRA # Setup geos libraries + include path file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/include" GEOS_INCLUDE_DIR) -file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/lib/geos_c.lib" GEOS_LIBRARY_REL) -file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/debug/lib/geos_cd.lib" GEOS_LIBRARY_DBG) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/lib/libgeos.lib" GEOS_LIBRARY_REL) + file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/debug/lib/libgeosd.lib" GEOS_LIBRARY_DBG) +else() + file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/lib/geos_c.lib" GEOS_LIBRARY_REL) + file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/debug/lib/geos_cd.lib" GEOS_LIBRARY_DBG) +endif() # Setup expat libraries + include path file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/include" EXPAT_INCLUDE_DIR) @@ -155,6 +159,7 @@ endif() if (VCPKG_LIBRARY_LINKAGE STREQUAL static) list(APPEND NMAKE_OPTIONS PROJ_FLAGS=-DPROJ_STATIC) + list(APPEND NMAKE_OPTIONS CURL_CFLAGS=-DCURL_STATICLIB) else() # Enables PDBs for release and debug builds list(APPEND NMAKE_OPTIONS WITH_PDB=1) @@ -175,11 +180,14 @@ list(APPEND NMAKE_OPTIONS_REL EXPAT_LIB=${EXPAT_LIBRARY_REL} "CURL_LIB=${CURL_LIBRARY_REL} wsock32.lib wldap32.lib winmm.lib" SQLITE_LIB=${SQLITE_LIBRARY_REL} - PG_LIB=${PGSQL_LIBRARY_REL} OPENJPEG_LIB=${OPENJPEG_LIBRARY_REL} WEBP_LIBS=${WEBP_LIBRARY_REL} LIBXML2_LIB=${XML2_LIBRARY_REL} ) +if(NOT VCPKG_LIBRARY_LINKAGE STREQUAL "static") + # Static Build does not like PG_LIB + list(APPEND NMAKE_OPTIONS_REL PG_LIB=${PGSQL_LIBRARY_REL}) +endif() list(APPEND NMAKE_OPTIONS_DBG ${NMAKE_OPTIONS} @@ -190,12 +198,15 @@ list(APPEND NMAKE_OPTIONS_DBG EXPAT_LIB=${EXPAT_LIBRARY_DBG} "CURL_LIB=${CURL_LIBRARY_DBG} wsock32.lib wldap32.lib winmm.lib" SQLITE_LIB=${SQLITE_LIBRARY_DBG} - PG_LIB=${PGSQL_LIBRARY_DBG} OPENJPEG_LIB=${OPENJPEG_LIBRARY_DBG} WEBP_LIBS=${WEBP_LIBRARY_DBG} LIBXML2_LIB=${XML2_LIBRARY_DBG} DEBUG=1 ) +if(NOT VCPKG_LIBRARY_LINKAGE STREQUAL "static") + # Static Build does not like PG_LIB + list(APPEND NMAKE_OPTIONS_DBG PG_LIB=${PGSQL_LIBRARY_DBG}) +endif() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") ################ @@ -226,7 +237,10 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") endif() message(STATUS "Packaging ${TARGET_TRIPLET}") -file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share/gdal/html) + +if(NOT VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share/gdal/html) +endif() vcpkg_execute_required_process( COMMAND ${NMAKE} -f makefile.vc @@ -249,6 +263,7 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL static) file(COPY ${SOURCE_PATH_DEBUG}/gdal.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/gdal.lib ${CURRENT_PACKAGES_DIR}/debug/lib/gdald.lib) endif() + else() set(GDAL_TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools/gdal) diff --git a/ports/giflib/CMakeLists.txt b/ports/giflib/CMakeLists.txt index e9b6a17c6..a5b084ffc 100644 --- a/ports/giflib/CMakeLists.txt +++ b/ports/giflib/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 3.4) -project(giflib) +project(giflib C) set(GIFLIB_HEADERS lib/gif_lib.h @@ -17,10 +17,8 @@ set(GIFLIB_SOURCES lib/quantize.c ) +add_definitions(-D_CRT_SECURE_NO_WARNINGS) add_library(gif ${GIFLIB_SOURCES}) -if (BUILD_SHARED_LIBS) - set_property(TARGET gif PROPERTY WINDOWS_EXPORT_ALL_SYMBOLS ON) -endif () if (NOT GIFLIB_SKIP_HEADERS) install(FILES ${GIFLIB_HEADERS} DESTINATION include) diff --git a/ports/giflib/CONTROL b/ports/giflib/CONTROL index a79a8b0d4..169ddbd92 100644 --- a/ports/giflib/CONTROL +++ b/ports/giflib/CONTROL @@ -1,3 +1,3 @@ Source: giflib -Version: 5.1.4-1 +Version: 5.1.4-3 Description: A library for reading and writing gif images. diff --git a/ports/giflib/fix-compile-error.patch b/ports/giflib/fix-compile-error.patch new file mode 100644 index 000000000..93cf467ff --- /dev/null +++ b/ports/giflib/fix-compile-error.patch @@ -0,0 +1,76 @@ +diff --git a/lib/dgif_lib.c b/lib/dgif_lib.c +index fddc0d2..7a6ab9c 100644 +--- a/lib/dgif_lib.c ++++ b/lib/dgif_lib.c +@@ -54,7 +54,7 @@ DGifOpenFileName(const char *FileName, int *Error) + int FileHandle; + GifFileType *GifFile; + +- if ((FileHandle = open(FileName, O_RDONLY)) == -1) { ++ if ((FileHandle = _open(FileName, O_RDONLY)) == -1) { + if (Error != NULL) + *Error = D_GIF_ERR_OPEN_FAILED; + return NULL; +@@ -81,7 +81,7 @@ DGifOpenFileHandle(int FileHandle, int *Error) + if (GifFile == NULL) { + if (Error != NULL) + *Error = D_GIF_ERR_NOT_ENOUGH_MEM; +- (void)close(FileHandle); ++ (void)_close(FileHandle); + return NULL; + } + +@@ -95,7 +95,7 @@ DGifOpenFileHandle(int FileHandle, int *Error) + if (Private == NULL) { + if (Error != NULL) + *Error = D_GIF_ERR_NOT_ENOUGH_MEM; +- (void)close(FileHandle); ++ (void)_close(FileHandle); + free((char *)GifFile); + return NULL; + } +@@ -106,7 +106,7 @@ DGifOpenFileHandle(int FileHandle, int *Error) + _setmode(FileHandle, O_BINARY); /* Make sure it is in binary mode. */ + #endif /* _WIN32 */ + +- f = fdopen(FileHandle, "rb"); /* Make it into a stream: */ ++ f = _fdopen(FileHandle, "rb"); /* Make it into a stream: */ + + /*@-mustfreeonly@*/ + GifFile->Private = (void *)Private; +diff --git a/lib/egif_lib.c b/lib/egif_lib.c +index f30b61b..18dc4a2 100644 +--- a/lib/egif_lib.c ++++ b/lib/egif_lib.c +@@ -60,10 +60,10 @@ EGifOpenFileName(const char *FileName, const bool TestExistence, int *Error) + GifFileType *GifFile; + + if (TestExistence) +- FileHandle = open(FileName, O_WRONLY | O_CREAT | O_EXCL, ++ FileHandle = _open(FileName, O_WRONLY | O_CREAT | O_EXCL, + S_IREAD | S_IWRITE); + else +- FileHandle = open(FileName, O_WRONLY | O_CREAT | O_TRUNC, ++ FileHandle = _open(FileName, O_WRONLY | O_CREAT | O_TRUNC, + S_IREAD | S_IWRITE); + + if (FileHandle == -1) { +@@ -73,7 +73,7 @@ EGifOpenFileName(const char *FileName, const bool TestExistence, int *Error) + } + GifFile = EGifOpenFileHandle(FileHandle, Error); + if (GifFile == (GifFileType *) NULL) +- (void)close(FileHandle); ++ (void)_close(FileHandle); + return GifFile; + } + +@@ -118,7 +118,7 @@ EGifOpenFileHandle(const int FileHandle, int *Error) + _setmode(FileHandle, O_BINARY); /* Make sure it is in binary mode. */ + #endif /* _WIN32 */ + +- f = fdopen(FileHandle, "wb"); /* Make it into a stream: */ ++ f = _fdopen(FileHandle, "wb"); /* Make it into a stream: */ + + GifFile->Private = (void *)Private; + Private->FileHandle = FileHandle; + diff --git a/ports/giflib/portfile.cmake b/ports/giflib/portfile.cmake index ee7f96449..86a7f9465 100644 --- a/ports/giflib/portfile.cmake +++ b/ports/giflib/portfile.cmake @@ -1,19 +1,25 @@ include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/giflib-5.1.4) + +vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + +set(GIFLIB_VERSION 5.1.4) vcpkg_download_distfile(ARCHIVE - URLS "http://downloads.sourceforge.net/sourceforge/giflib/giflib-5.1.4.tar.bz2" - FILENAME "giflib-5.1.4.tar.bz2" + URLS "http://downloads.sourceforge.net/sourceforge/giflib/giflib-${GIFLIB_VERSION}.tar.bz2" + FILENAME "giflib-${GIFLIB_VERSION}.tar.bz2" SHA512 32b5e342056c210e6478e9cb3b6ceec9594dcfaf34feea1eb4dad633a081ed4465bceee578c19165907cb47cb83912ac359ceea666a8e07dbbb5420f9928f96d ) -vcpkg_extract_source_archive(${ARCHIVE}) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + REF ${GIFLIB_VERSION} PATCHES - ${CMAKE_CURRENT_LIST_DIR}/msvc-guard-unistd-h.patch + msvc-guard-unistd-h.patch + fix-compile-error.patch ) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} OPTIONS_DEBUG diff --git a/ports/glew/CONTROL b/ports/glew/CONTROL index ecf948c5d..45af04091 100644 --- a/ports/glew/CONTROL +++ b/ports/glew/CONTROL @@ -1,3 +1,3 @@ -Source: glew -Version: 2.1.0-1 -Description: The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. +Source: glew
+Version: 2.1.0-2
+Description: The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library.
diff --git a/ports/glew/portfile.cmake b/ports/glew/portfile.cmake index 45f711f77..1e2080458 100644 --- a/ports/glew/portfile.cmake +++ b/ports/glew/portfile.cmake @@ -3,7 +3,7 @@ include(vcpkg_common_functions) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/glew/glew-2.1.0) # Don't change to vcpkg_from_github! The github-auto-generated archives are missing some files. -# More info: https://github.com/nigels-com/glew/issues/31 +# More info: https://github.com/nigels-com/glew/issues/31 and https://github.com/nigels-com/glew/issues/13 vcpkg_download_distfile(ARCHIVE_FILE URLS "https://github.com/nigels-com/glew/releases/download/glew-2.1.0/glew-2.1.0.tgz" FILENAME "glew-2.1.0.tgz" @@ -13,7 +13,9 @@ vcpkg_extract_source_archive(${ARCHIVE_FILE} ${CURRENT_BUILDTREES_DIR}/src/glew) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH}/build/cmake -) + OPTIONS + -DBUILD_UTILS=OFF + ) vcpkg_install_cmake() @@ -40,11 +42,6 @@ if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/libglew32d.lib) file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libglew32d.lib ${CURRENT_PACKAGES_DIR}/debug/lib/glew32d.lib) endif() -file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/glewinfo.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/visualinfo.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/glewinfo.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/visualinfo.exe) - if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) diff --git a/ports/grpc/CONTROL b/ports/grpc/CONTROL index 274faed53..f1b1d9798 100644 --- a/ports/grpc/CONTROL +++ b/ports/grpc/CONTROL @@ -1,4 +1,4 @@ Source: grpc -Version: 1.18.0 +Version: 1.19.1 Build-Depends: zlib, openssl, protobuf, c-ares (!uwp) Description: An RPC library and framework diff --git a/ports/grpc/portfile.cmake b/ports/grpc/portfile.cmake index 492025ff3..355f9a179 100644 --- a/ports/grpc/portfile.cmake +++ b/ports/grpc/portfile.cmake @@ -11,8 +11,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO grpc/grpc - REF v1.18.0 - SHA512 2489860a395b9f59d4eb81db5a8d873683e317145ad140b72fabb13693e166c122ce8526d34e2380a52d18493e8b2b49d6d28e53878af2c43523a5791da8fe52 + REF v1.19.1 + SHA512 4bb127d946fc16887fd4cf75215f0bc9f6d17dbd36fc4f1b191a64914f96c49dddb41f1b6c72fd24ea0a40f242b4398248f32fcb1fe9a764367be1c2edda9142 HEAD_REF master PATCHES fix-uwp.patch ) diff --git a/ports/hungarian/CMakeLists.txt b/ports/hungarian/CMakeLists.txt new file mode 100644 index 000000000..dc0098ca7 --- /dev/null +++ b/ports/hungarian/CMakeLists.txt @@ -0,0 +1,29 @@ +cmake_minimum_required (VERSION 3.8) +project (hungarian C) + +add_library(hungarian + ${CMAKE_CURRENT_LIST_DIR}/libhungarian/hungarian.h + ${CMAKE_CURRENT_LIST_DIR}/libhungarian/hungarian.c +) + +target_include_directories(hungarian PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/libhungarian> + $<INSTALL_INTERFACE:include> +) + +set_target_properties(hungarian PROPERTIES PUBLIC_HEADER ${CMAKE_CURRENT_LIST_DIR}/libhungarian/hungarian.h) + +install( + TARGETS hungarian + EXPORT hungarian + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib + PUBLIC_HEADER DESTINATION include +) + +install(EXPORT hungarian + DESTINATION "share/hungarian" + FILE hungarianConfig.cmake + NAMESPACE hungarian:: +) diff --git a/ports/hungarian/CONTROL b/ports/hungarian/CONTROL new file mode 100644 index 000000000..96dd5f799 --- /dev/null +++ b/ports/hungarian/CONTROL @@ -0,0 +1,3 @@ +Source: hungarian +Version: v0.1.3 +Description: C-implementation of the Hungarian Method: finding the optimal assignment (assigning a set of jobs to a set of machines) in O(n^3), where n=max{#jobs, #machines}. The implementation is a sligntly enhanced version of the implementation provided by the Stanford GraphBase diff --git a/ports/hungarian/LICENSE.txt b/ports/hungarian/LICENSE.txt new file mode 100644 index 000000000..9255ea6bf --- /dev/null +++ b/ports/hungarian/LICENSE.txt @@ -0,0 +1,24 @@ +/******************************************************************** + ******************************************************************** + ** + ** libhungarian by Cyrill Stachniss, 2004 + ** + ** + ** Solving the Minimum Assignment Problem using the + ** Hungarian Method. + ** + ** ** This file may be freely copied and distributed! ** + ** + ** Parts of the used code was originally provided by the + ** "Stanford GraphGase", but I made changes to this code. + ** As asked by the copyright node of the "Stanford GraphGase", + ** I hereby proclaim that this file are *NOT* part of the + ** "Stanford GraphGase" distrubition! + ** + ** This file is distributed in the hope that it will be useful, + ** but WITHOUT ANY WARRANTY; without even the implied + ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + ** PURPOSE. + ** + ******************************************************************** + ********************************************************************/ diff --git a/ports/hungarian/portfile.cmake b/ports/hungarian/portfile.cmake new file mode 100644 index 000000000..0d550756e --- /dev/null +++ b/ports/hungarian/portfile.cmake @@ -0,0 +1,31 @@ +include(vcpkg_common_functions) + +vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + +vcpkg_download_distfile(ARCHIVE + URLS "http://www2.informatik.uni-freiburg.de/~stachnis/misc/libhungarian-v0.1.3.tgz" + FILENAME "libhungarian-v0.1.3.tgz" + SHA512 1fa105e351c307c07bb96892c9d4c44b167d92cbed80962a8653ac35b8afe00fcf5dcc2d920b95671d6c3cd86745362a64dd8dc173623a8179006e2c7b2cbc69 +) + +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + NO_REMOVE_ONE_LEVEL +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +# Handle copyright +file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/hungarian RENAME copyright) diff --git a/ports/ismrmrd/CONTROL b/ports/ismrmrd/CONTROL index 3fe989da9..77d6e2e8d 100644 --- a/ports/ismrmrd/CONTROL +++ b/ports/ismrmrd/CONTROL @@ -1,4 +1,8 @@ Source: ismrmrd
-Version: 1.3.2-2
+Version: 1.3.2-3
Description: ISMRM Raw Data Format
Build-Depends: pugixml
+
+Feature: dataset
+Description: Dataset and file support
+Build-Depends: hdf5
\ No newline at end of file diff --git a/ports/ismrmrd/optional_hdf5_dependency.patch b/ports/ismrmrd/optional_hdf5_dependency.patch new file mode 100644 index 000000000..7c4772ed5 --- /dev/null +++ b/ports/ismrmrd/optional_hdf5_dependency.patch @@ -0,0 +1,77 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 456d4f4..3c235f2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,6 +7,7 @@ set (ISMRMRD_CMAKE_DIR ${PROJECT_SOURCE_DIR}/cmake CACHE PATH
+
+ # command line options
+ option(USE_SYSTEM_PUGIXML "Use pugixml installed on the system" OFF)
++option(USE_HDF5_DATASET_SUPPORT "Use HDF5 library for dataset support" OFF)
+
+ # and include it to the search list
+ list(APPEND CMAKE_MODULE_PATH ${ISMRMRD_CMAKE_DIR})
+@@ -91,18 +92,23 @@ endif()
+ set(ISMRMRD_VERSION_STRING ${ISMRMRD_VERSION_MAJOR}.${ISMRMRD_VERSION_MINOR}.${ISMRMRD_VERSION_PATCH})
+ set(ISMRMRD_SOVERSION ${ISMRMRD_VERSION_MAJOR}.${ISMRMRD_VERSION_MINOR})
+
+-# Find HDF5 for dataset support
+-find_package(HDF5 1.8 COMPONENTS C)
+-
+-if (HDF5_FOUND)
+- set (ISMRMRD_DATASET_SUPPORT true)
+- set (ISMRMRD_DATASET_SOURCES libsrc/dataset.c libsrc/dataset.cpp)
+- set (ISMRMRD_DATASET_INCLUDE_DIR ${HDF5_C_INCLUDE_DIR})
+- set (ISMRMRD_DATASET_LIBRARIES ${HDF5_LIBRARIES})
+-else (HDF5_FOUND)
++if (USE_HDF5_DATASET_SUPPORT)
++ # Find HDF5 for dataset support
++ find_package(HDF5 1.8 COMPONENTS C)
++
++ if (HDF5_FOUND)
++ set (ISMRMRD_DATASET_SUPPORT true)
++ set (ISMRMRD_DATASET_SOURCES libsrc/dataset.c libsrc/dataset.cpp)
++ set (ISMRMRD_DATASET_INCLUDE_DIR ${HDF5_C_INCLUDE_DIR})
++ set (ISMRMRD_DATASET_LIBRARIES ${HDF5_LIBRARIES})
++ elseif (USE_HDF5_DATASET_SUPPORT)
++ set (ISMRMRD_DATASET_SUPPORT false)
++ # Dataset and file support was explicitly requested, force failure rather than succeed without support.
++ message (FATAL_ERROR "HDF5 not found. Dataset and file support unavailable!")
++ endif (HDF5_FOUND)
++else (USE_HDF5_DATASET_SUPPORT)
+ set (ISMRMRD_DATASET_SUPPORT false)
+- message (WARNING "HDF5 not found. Dataset and file support unavailable!")
+-endif (HDF5_FOUND)
++endif (USE_HDF5_DATASET_SUPPORT)
+
+ # Generate the version.h header file
+ find_package(Git)
+@@ -127,7 +133,7 @@ install(FILES ${CMAKE_BINARY_DIR}/include/ismrmrd/version.h DESTINATION include/
+
+ # --- Main Library (begin) ----
+ # in windows, install the HDF5 dependencies
+-if (HDF5_FOUND AND WIN32 AND ISMRMRD_INSTALL_DEPENDENCIES)
++if (USE_HDF5_DATASET_SUPPORT AND WIN32 AND ISMRMRD_INSTALL_DEPENDENCIES)
+ if(DEFINED ENV{HDF5_ROOT})
+ set(HDF5_BIN_DIR $ENV{HDF5_ROOT}/bin)
+ else (DEFINED ENV{HDF5_ROOT})
+@@ -135,7 +141,7 @@ if (HDF5_FOUND AND WIN32 AND ISMRMRD_INSTALL_DEPENDENCIES)
+ endif (DEFINED ENV{HDF5_ROOT})
+ message("Install hdf5 libraries from ${HDF5_BIN_DIR} ")
+ install( DIRECTORY ${HDF5_BIN_DIR} DESTINATION bin/.. FILES_MATCHING PATTERN "*.dll" )
+-endif (HDF5_FOUND AND WIN32 AND ISMRMRD_INSTALL_DEPENDENCIES)
++endif (USE_HDF5_DATASET_SUPPORT AND WIN32 AND ISMRMRD_INSTALL_DEPENDENCIES)
+
+ # include directories for main library
+ set(ISMRMRD_TARGET_INCLUDE_DIRS
+@@ -199,9 +205,9 @@ install(FILES cmake/FindIsmrmrd.cmake cmake/FindFFTW3.cmake DESTINATION share/is
+ add_subdirectory(doc)
+
+ add_subdirectory(utilities)
+-if (HDF5_FOUND)
++if (USE_HDF5_DATASET_SUPPORT)
+ add_subdirectory(examples/c)
+-endif (HDF5_FOUND)
++endif (USE_HDF5_DATASET_SUPPORT)
+
+ # TODO: make this work on Windows
+ if (NOT WIN32)
diff --git a/ports/ismrmrd/portfile.cmake b/ports/ismrmrd/portfile.cmake index 1fda781b2..7bc30d028 100644 --- a/ports/ismrmrd/portfile.cmake +++ b/ports/ismrmrd/portfile.cmake @@ -10,12 +10,23 @@ vcpkg_from_github( REF v1.3.2
SHA512 eb806f71c4b183105b3270d658a68195e009c0f7ca37f54f76d650a4d5c83c44d26b5f12a4c47c608aae9990cd04f1204b0c57e6438ca34a271fd54880133106
HEAD_REF master
+ PATCHES
+ # Makes optional hdf5 dependency explicit
+ optional_hdf5_dependency.patch
)
+if ("dataset" IN_LIST FEATURES)
+ set(ENABLE_DATASET ON)
+else()
+ set(ENABLE_DATASET OFF)
+endif()
+
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
- OPTIONS -DUSE_SYSTEM_PUGIXML=ON
+ OPTIONS
+ -DUSE_SYSTEM_PUGIXML=ON
+ -DUSE_HDF5_DATASET_SUPPORT=${ENABLE_DATASET}
)
vcpkg_install_cmake()
diff --git a/ports/jemalloc/CONTROL b/ports/jemalloc/CONTROL index 5bdca6c43..7f6fa5ae2 100644 --- a/ports/jemalloc/CONTROL +++ b/ports/jemalloc/CONTROL @@ -1,4 +1,4 @@ Source: jemalloc -Version: 4.3.1-2 +Version: 4.3.1-3 Description: jemalloc is a general purpose malloc(3) implementation that emphasizes fragmentation avoidance and scalable concurrency support Build-Depends: diff --git a/ports/jemalloc/fix-static-build.patch b/ports/jemalloc/fix-static-build.patch new file mode 100644 index 000000000..3ede809a8 --- /dev/null +++ b/ports/jemalloc/fix-static-build.patch @@ -0,0 +1,25 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0b8959a..55e6a5f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -826,10 +826,16 @@ endif()
+ install(FILES include/jemalloc/jemalloc${install_suffix}.h
+ DESTINATION include/jemalloc)
+
+-install(TARGETS ${LIBJEMALLOCSO}
+- RUNTIME DESTINATION bin
+- LIBRARY DESTINATION lib
+- ARCHIVE DESTINATION lib)
++if (without-export)
++ install(TARGETS ${C_JETLIB}
++ LIBRARY DESTINATION lib
++ ARCHIVE DESTINATION lib)
++else()
++ install(TARGETS ${LIBJEMALLOCSO}
++ RUNTIME DESTINATION bin
++ LIBRARY DESTINATION lib
++ ARCHIVE DESTINATION lib)
++endif()
+ if (build-tests)
+ ##################################################################
+ # Common source for Unit, Integration and stress test libraries
diff --git a/ports/jemalloc/portfile.cmake b/ports/jemalloc/portfile.cmake index 527891666..3b99f21f5 100644 --- a/ports/jemalloc/portfile.cmake +++ b/ports/jemalloc/portfile.cmake @@ -11,19 +11,22 @@ vcpkg_from_github( REF jemalloc-cmake.4.3.1 SHA512 e94b62ec3a53acc0ab5acb247d7646bc172108e80f592bb41c2dd50d181cbbeb33d623adf28415ffc0a0e2de3818af2dfe4c04af75ac891ef5042bc5bb186886 HEAD_REF master -) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} PATCHES - "${CMAKE_CURRENT_LIST_DIR}/fix-cmakelists.patch" - "${CMAKE_CURRENT_LIST_DIR}/fix-utilities.patch" + fix-cmakelists.patch + fix-utilities.patch + fix-static-build.patch ) +if (VCPKG_CRT_LINKAGE STREQUAL "dynamic") + set(BUILD_STATIC_LIBRARY OFF) +else() + set(BUILD_STATIC_LIBRARY ON) +endif() vcpkg_configure_cmake( DISABLE_PARALLEL_CONFIGURE SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA - OPTIONS -DGIT_FOUND=OFF -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON + OPTIONS -DGIT_FOUND=OFF -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON -Dwithout-export=${BUILD_STATIC_LIBRARY} ) vcpkg_install_cmake() diff --git a/ports/json-dto/CONTROL b/ports/json-dto/CONTROL index 2e9197c2f..1d8b7b24b 100644 --- a/ports/json-dto/CONTROL +++ b/ports/json-dto/CONTROL @@ -1,4 +1,4 @@ Source: json-dto -Version: 0.2.6 +Version: 0.2.8 Description: A small header-only library for converting data between json representation and c++ structs. Build-Depends: rapidjson diff --git a/ports/json-dto/portfile.cmake b/ports/json-dto/portfile.cmake index ca228cfda..212ef87aa 100644 --- a/ports/json-dto/portfile.cmake +++ b/ports/json-dto/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_bitbucket( OUT_SOURCE_PATH SOURCE_PATH REPO sobjectizerteam/json_dto-0.2 - REF v.0.2.6 - SHA512 f6562b6177c941a9b898013eacb4bd78f2b8d460a82b773824bf51e106a92c27c52dca4ab6dd07a2d5e063ca3442a20c27dfd80bdcd78207e65f328b95972890 + REF v.0.2.8 + SHA512 50a2d8d31f4cf67bdf84a58bae5f95642f4be571e8e052a48830be119d5e3c4ddbb19c5ac97fc0f8383c9958d64ec9be4ce23019c1da4f2cbf4b8ddbf23f5ad7 ) vcpkg_configure_cmake( diff --git a/ports/jsonnet/CONTROL b/ports/jsonnet/CONTROL index 99901570d..49618f59e 100644 --- a/ports/jsonnet/CONTROL +++ b/ports/jsonnet/CONTROL @@ -1,3 +1,3 @@ Source: jsonnet -Version: 2018-11-01-1 +Version: 2018-11-01-2 Description: Jsonnet - The data templating language diff --git a/ports/jsonnet/portfile.cmake b/ports/jsonnet/portfile.cmake index f2d0bbb8f..ee3c43890 100644 --- a/ports/jsonnet/portfile.cmake +++ b/ports/jsonnet/portfile.cmake @@ -10,14 +10,14 @@ vcpkg_from_github( if (WIN32) vcpkg_execute_required_process( - COMMAND Powershell -Command "((Get-Content -Encoding Byte ${SOURCE_PATH}/stdlib/std.jsonnet) -join ',') + ',0' > ${SOURCE_PATH}/core/std.jsonnet.h" - WORKING_DIRECTORY ${SOURCE_PATH} + COMMAND Powershell -Command "((Get-Content -Encoding Byte \"${SOURCE_PATH}/stdlib/std.jsonnet\") -join ',') + ',0' > \"${SOURCE_PATH}/core/std.jsonnet.h\"" + WORKING_DIRECTORY "${SOURCE_PATH}" LOGNAME "std.jsonnet" ) else() vcpkg_execute_required_process( - COMMAND bash -c "((od -v -Anone -t u1 ${SOURCE_PATH}/stdlib/std.jsonnet | tr ' ' '\\n' | grep -v '^$' | tr '\\n' ',' ) && echo '0') > ${SOURCE_PATH}/core/std.jsonnet.h" - WORKING_DIRECTORY ${SOURCE_PATH} + COMMAND bash -c "((od -v -Anone -t u1 \"${SOURCE_PATH}/stdlib/std.jsonnet\" | tr ' ' '\\n' | grep -v '^$' | tr '\\n' ',' ) && echo '0') > \"${SOURCE_PATH}/core/std.jsonnet.h\"" + WORKING_DIRECTORY "${SOURCE_PATH}" LOGNAME "std.jsonnet" ) endif() diff --git a/ports/kd-soap/CONTROL b/ports/kd-soap/CONTROL new file mode 100644 index 000000000..65b8419e6 --- /dev/null +++ b/ports/kd-soap/CONTROL @@ -0,0 +1,4 @@ +Source: kd-soap
+Version: 1.7.0
+Description: A Qt-based client-side and server-side SOAP component http://www.kdab.com/products/kd-soap
+Build-Depends: qt5-base
diff --git a/ports/kd-soap/kd-saop.patch b/ports/kd-soap/kd-saop.patch new file mode 100644 index 000000000..975a1c9f7 --- /dev/null +++ b/ports/kd-soap/kd-saop.patch @@ -0,0 +1,12 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c3c824e..d7a1cce 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -168,6 +168,6 @@ if(${PROJECT_NAME}_IS_ROOT_PROJECT)
+ enable_testing()
+ add_subdirectory(testtools)
+ add_subdirectory(unittests)
++ add_subdirectory(examples)
+ endif()
+- add_subdirectory(examples)
+ endif()
diff --git a/ports/kd-soap/portfile.cmake b/ports/kd-soap/portfile.cmake new file mode 100644 index 000000000..2b49d114e --- /dev/null +++ b/ports/kd-soap/portfile.cmake @@ -0,0 +1,31 @@ +include(vcpkg_common_functions)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO KDAB/KDSoap
+ REF 66a7804f157f51bc62c193b63a28918236bd7424
+ SHA512 e9e2ac3ef714ebd5a85972c0eed613f88cc36f213df4fb938d61b58947972524f26f54a226f8e28ce47385cd859030a560781b4aebe3a25e672ac82b5477eeb8
+ HEAD_REF master
+)
+vcpkg_apply_patches(
+ SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/8236bd7424-79789c62ed
+ PATCHES "${CMAKE_CURRENT_LIST_DIR}/kd-saop.patch"
+)
+
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+)
+
+vcpkg_install_cmake()
+
+# Handle copyright
+file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/kd-soap RENAME copyright)
+file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools)
+file(RENAME ${CURRENT_PACKAGES_DIR}/bin/kdwsdl2cpp.exe ${CURRENT_PACKAGES_DIR}/tools/kdwsdl2cpp.exe)
+file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/kdwsdl2cpp.exe)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
diff --git a/ports/kinectsdk2/portfile.cmake b/ports/kinectsdk2/portfile.cmake index 05aa1fd2e..a4b89b521 100644 --- a/ports/kinectsdk2/portfile.cmake +++ b/ports/kinectsdk2/portfile.cmake @@ -12,6 +12,13 @@ include(vcpkg_common_functions) +string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) +if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) + message(WARNING "Kinectsdk2's buildsystem uses very long paths and may fail on your system.\n" + "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." + ) +endif() + if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm") message(FATAL_ERROR "This port does not currently support architecture: ${VCPKG_TARGET_ARCHITECTURE}") endif() diff --git a/ports/lemon/CONTROL b/ports/lemon/CONTROL index 04fec505c..08b739368 100644 --- a/ports/lemon/CONTROL +++ b/ports/lemon/CONTROL @@ -1,3 +1,4 @@ Source: lemon
-Version:
-Description:
+Version: 0
+Description: Deprecated port, use liblemon instead
+Build-Depends: liblemon
diff --git a/ports/lemon/portfile.cmake b/ports/lemon/portfile.cmake index a7509bde4..f599558f1 100644 --- a/ports/lemon/portfile.cmake +++ b/ports/lemon/portfile.cmake @@ -1,47 +1,3 @@ -# Common Ambient Variables:
-# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
-# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
-# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT}
-# PORT = current port name (zlib, etc)
-# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc)
-# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic)
-# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic)
-# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg>
-# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm)
-#
+set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
-include(vcpkg_common_functions)
-set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/lemon-1.3.1)
-vcpkg_download_distfile(ARCHIVE
- URLS "http://lemon.cs.elte.hu/pub/sources/lemon-1.3.1.tar.gz"
- FILENAME "lemon-1.3.1.tar.gz"
- SHA512 715eb45e790c908e41de4c13e68b7880e1d86c54eca53f896c95b6bc411ded504f3f768bed9d63562ed4adad53167fb3a7828c67456fdea645a5d0a94ae2e038
-)
-vcpkg_extract_source_archive(${ARCHIVE})
-vcpkg_apply_patches(
- SOURCE_PATH ${SOURCE_PATH}
- PATCHES ${CMAKE_CURRENT_LIST_DIR} remove-directory.patch)
-
-if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
- set(VCPKG_LIBRARY_LINKAGE static)
-endif()
-
-vcpkg_configure_cmake(
- SOURCE_PATH ${SOURCE_PATH}
- PREFER_NINJA # Disable this option if project cannot be built with Ninja
- # OPTIONS -DUSE_THIS_IN_ALL_BUILDS=1 -DUSE_THIS_TOO=2
- # OPTIONS_RELEASE -DOPTIMIZE=1
- # OPTIONS_DEBUG -DDEBUGGABLE=1
-)
-
-vcpkg_install_cmake()
-
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/cmake)
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/cmake)
-
-# Handle copyright
-file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/lemon RENAME copyright)
-
-# Post-build test for cmake libraries
-# vcpkg_test_cmake(PACKAGE_NAME lemon)
+message(WARNING "The lemon port is deprecated, use liblemon instead")
diff --git a/ports/lemon/remove-directory.patch b/ports/lemon/remove-directory.patch deleted file mode 100644 index bda2c51ae..000000000 --- a/ports/lemon/remove-directory.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 03e1cc7..edbd05f 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -256,11 +256,11 @@ ENDIF()
-
- ADD_SUBDIRECTORY(lemon)
- IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
-- ADD_SUBDIRECTORY(contrib)
-- ADD_SUBDIRECTORY(demo)
-- ADD_SUBDIRECTORY(tools)
-- ADD_SUBDIRECTORY(doc)
-- ADD_SUBDIRECTORY(test)
-+ # ADD_SUBDIRECTORY(contrib)
-+ # ADD_SUBDIRECTORY(demo)
-+ # ADD_SUBDIRECTORY(tools)
-+ # ADD_SUBDIRECTORY(doc)
-+ # ADD_SUBDIRECTORY(test)
- ENDIF()
-
- CONFIGURE_FILE(
diff --git a/ports/libharu/CONTROL b/ports/libharu/CONTROL index 623628ab8..c4f48ab3d 100644 --- a/ports/libharu/CONTROL +++ b/ports/libharu/CONTROL @@ -1,4 +1,4 @@ Source: libharu -Version: 2017-08-15-d84867ebf9f-4 +Version: 2017-08-15-d84867ebf9f-5 Description: libharu - free PDF library Build-Depends: zlib, libpng diff --git a/ports/libharu/fix-build-fail.patch b/ports/libharu/fix-build-fail.patch new file mode 100644 index 000000000..2f7066575 --- /dev/null +++ b/ports/libharu/fix-build-fail.patch @@ -0,0 +1,21 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 9d2a604..be8e964 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -79,11 +79,11 @@ if(LIBHPDF_STATIC)
+ LIBRARY DESTINATION lib
+ RUNTIME DESTINATION bin
+ )
+- if(WIN32 AND NOT CYGWIN)
+- foreach(addlib ${ADDITIONAL_LIBRARIES})
+- install(FILES ${addlib} DESTINATION lib)
+- endforeach(addlib)
+- endif(WIN32 AND NOT CYGWIN)
++ #if(WIN32 AND NOT CYGWIN)
++ #foreach(addlib ${ADDITIONAL_LIBRARIES})
++ #install(FILES ${addlib} DESTINATION lib)
++ #endforeach(addlib)
++ #endif(WIN32 AND NOT CYGWIN)
+ endif(LIBHPDF_STATIC)
+ if(LIBHPDF_SHARED)
+ add_library(${LIBHPDF_NAME} SHARED ${LIBHPDF_SRCS})
diff --git a/ports/libharu/portfile.cmake b/ports/libharu/portfile.cmake index c8e9250b9..42f85c2b4 100644 --- a/ports/libharu/portfile.cmake +++ b/ports/libharu/portfile.cmake @@ -5,6 +5,7 @@ vcpkg_from_github( REF d84867ebf9f3de6afd661d2cdaff102457fbc371 SHA512 789579dd52c1056ae90a4ce5360c26ba92cadae5341a3901c4159afe624129a1f628fa6412952a398e048b0e5040c93f7ed5b4e4bc620a22d897098298fe2a99 HEAD_REF master + PATCHES fix-build-fail.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" LIBHPDF_STATIC) diff --git a/ports/liblzma/CONTROL b/ports/liblzma/CONTROL index 20c26f980..c94576a3f 100644 --- a/ports/liblzma/CONTROL +++ b/ports/liblzma/CONTROL @@ -1,3 +1,3 @@ Source: liblzma
-Version: 5.2.4
+Version: 5.2.4-1
Description: Compression library with an API similar to that of zlib.
diff --git a/ports/liblzma/portfile.cmake b/ports/liblzma/portfile.cmake index 26b8bff78..5534b10e4 100644 --- a/ports/liblzma/portfile.cmake +++ b/ports/liblzma/portfile.cmake @@ -6,11 +6,8 @@ vcpkg_from_github( REF v5.2.4 SHA512 fce7dc65e77a9b89dbdd6192cb37efc39e3f2cf343f79b54d2dfcd845025dab0e1d5b0f59c264eab04e5cbaf914eeb4818d14cdaac3ae0c1c5de24418656a4b7 HEAD_REF master -) - -vcpkg_apply_patches( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/v5.2.3-b3437cea7b - PATCHES "${CMAKE_CURRENT_LIST_DIR}/enable-uwp-builds.patch" + PATCHES + enable-uwp-builds.patch ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) diff --git a/ports/libmikmod/CONTROL b/ports/libmikmod/CONTROL index c1dc45c3e..820a861c6 100644 --- a/ports/libmikmod/CONTROL +++ b/ports/libmikmod/CONTROL @@ -1,4 +1,4 @@ Source: libmikmod -Version: 3.3.11.1-1 +Version: 3.3.11.1-2 Description: Mikmod is a module player and library supporting many formats, including mod, s3m, it, and xm. Build-Depends: openal-soft diff --git a/ports/libmikmod/fix-missing-dll.patch b/ports/libmikmod/fix-missing-dll.patch new file mode 100644 index 000000000..a15c2400c --- /dev/null +++ b/ports/libmikmod/fix-missing-dll.patch @@ -0,0 +1,29 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 53a174e..b4d31d3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -856,11 +856,19 @@ INSTALL(
+ ARCHIVE DESTINATION "lib${LIB_SUFFIX}"
+ )
+
+-INSTALL(
+- FILES "${CMAKE_BINARY_DIR}/libmikmod-config"
+- PERMISSIONS GROUP_EXECUTE GROUP_READ OWNER_EXECUTE OWNER_READ OWNER_WRITE WORLD_EXECUTE WORLD_READ
+- DESTINATION "bin"
+-)
++IF(WIN32)
++ SET(LIB_SUFFIX_USED ".dll")
++ELSEIF(UNIX)
++ SET(LIB_SUFFIX_USED ".so")
++ELSEIF(APPLE)
++ SET(LIB_SUFFIX_USED ".dylib")
++ELSE()
++ SET(LIB_SUFFIX_USED)
++ENDIF()
++
++IF(NOT ENABLE_STATIC)
++ INSTALL(FILES "${CMAKE_BINARY_DIR}/mikmod${LIB_SUFFIX_USED}" DESTINATION "bin")
++ENDIF()
+
+ INSTALL(
+ FILES
diff --git a/ports/libmikmod/portfile.cmake b/ports/libmikmod/portfile.cmake index 1231f5bfa..3ff7ecb52 100644 --- a/ports/libmikmod/portfile.cmake +++ b/ports/libmikmod/portfile.cmake @@ -11,13 +11,19 @@ # include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libmikmod-3.3.11.1) + vcpkg_download_distfile(ARCHIVE URLS "https://downloads.sourceforge.net/project/mikmod/libmikmod/3.3.11.1/libmikmod-3.3.11.1.tar.gz" FILENAME "libmikmod-3.3.11.1.tar.gz" SHA512 f2439e2b691613847cd0787dd4e050116683ce7b05c215b8afecde5c6add819ea6c18e678e258c0a80786bef463f406072de15127f64368f694287a5e8e1a9de ) -vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_extract_source_archive_ex( + ARCHIVE ${ARCHIVE} + OUT_SOURCE_PATH SOURCE_PATH + PATCHES + fix-missing-dll.patch +) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} @@ -49,4 +55,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) if(VCPKG_LIBRARY_LINKAGE STREQUAL static) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) -endif()
\ No newline at end of file +endif() diff --git a/ports/libmspack/CONTROL b/ports/libmspack/CONTROL index b881f614f..cf08e5acc 100644 --- a/ports/libmspack/CONTROL +++ b/ports/libmspack/CONTROL @@ -1,4 +1,4 @@ Source: libmspack -Version: 0.6 +Version: 0.10.1 Build-Depends: Description: libmspack is a portable library for some loosely related Microsoft compression formats. diff --git a/ports/libmspack/portfile.cmake b/ports/libmspack/portfile.cmake index fe75e2edd..759f01724 100644 --- a/ports/libmspack/portfile.cmake +++ b/ports/libmspack/portfile.cmake @@ -1,14 +1,14 @@ include(vcpkg_common_functions) set(LIB_NAME libmspack) -set(LIB_VERSION 0.6alpha) +set(LIB_VERSION 0.10.1alpha) set(LIB_FILENAME ${LIB_NAME}-${LIB_VERSION}.tar.gz) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/${LIB_NAME}-${LIB_VERSION}) vcpkg_download_distfile(ARCHIVE URLS "https://www.cabextract.org.uk/libmspack/${LIB_FILENAME}" FILENAME "${LIB_FILENAME}" - SHA512 7ba4a584d335c2d703628a3c179bc0d323574632357cdfe04622f960dcc4ef970b5739799397b6802d44a312f7ed9d589b4be223facf044bbfdbfd76d9c7405d + SHA512 a7b5f7caa49190c5021f3e768b92f2e51cc0ce685c9ab6ed6fb36de885c73231b58d47a8a3b5c5aa5c9ac56c25c500eb683d84dbf11f09f97f6cb4fff5adc245 ) vcpkg_extract_source_archive(${ARCHIVE}) diff --git a/ports/libnice/CMakeLists.txt b/ports/libnice/CMakeLists.txt index 7454a0046..bde3a34ac 100644 --- a/ports/libnice/CMakeLists.txt +++ b/ports/libnice/CMakeLists.txt @@ -1,8 +1,14 @@ cmake_minimum_required(VERSION 3.0) -project(libnice C) +project(libnice + LANGUAGES C + VERSION 0.1.15) SET (this_target libnice) -add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS) +add_definitions( + -D_CRT_SECURE_NO_WARNINGS + -D_SCL_SECURE_NO_WARNINGS + -DHAVE_OPENSSL + -DPACKAGE_STRING="${PROJECT_VERSION}") configure_file(${CMAKE_SOURCE_DIR}/win32/vs9/config.h ${CMAKE_SOURCE_DIR}/config.h COPYONLY) configure_file(${CMAKE_SOURCE_DIR}/win32/vs9/libnice.def ${CMAKE_SOURCE_DIR}/libnice.def COPYONLY) @@ -13,6 +19,7 @@ find_library(GOBJECT_LIBRARY gobject-2.0) find_library(GIO_LIBRARY gio-2.0) find_library(IPHLPAPI_LIBRARY iphlpapi) find_library(WS2_32_LIB ws2_32) +find_package(OpenSSL REQUIRED) include_directories( ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/agent @@ -24,21 +31,22 @@ include_directories( SET (SRCS ./agent/address.c + ./agent/agent-enum-types.c ./agent/agent.c ./agent/candidate.c ./agent/component.c ./agent/conncheck.c ./agent/debug.c ./agent/discovery.c - ./agent/discovery.c ./agent/inputstream.c ./agent/interfaces.c ./agent/iostream.c ./agent/outputstream.c ./agent/pseudotcp.c ./agent/stream.c - ./random/random.c ./random/random-glib.c + ./random/random.c + ./random/test.c ./socket/http.c ./socket/pseudossl.c ./socket/socket.c @@ -47,12 +55,10 @@ SET (SRCS ./socket/tcp-bsd.c ./socket/tcp-passive.c ./socket/udp-bsd.c - ./socket/udp-turn.c ./socket/udp-turn-over-tcp.c + ./socket/udp-turn.c ./stun/debug.c - ./stun/md5.c ./stun/rand.c - ./stun/sha1.c ./stun/stun5389.c ./stun/stunagent.c ./stun/stuncrc32.c @@ -66,54 +72,56 @@ SET (SRCS ./libnice.def ) SET(HEADERS - ./config.h ./agent/address.h - ./agent/agent.h + ./agent/agent-enum-types.h ./agent/agent-priv.h + ./agent/agent.h ./agent/candidate.h ./agent/component.h ./agent/conncheck.h ./agent/debug.h ./agent/discovery.h - ./agent/discovery.h ./agent/inputstream.h ./agent/interfaces.h ./agent/iostream.h ./agent/outputstream.h ./agent/pseudotcp.h ./agent/stream.h - ./random/random.h + ./config.h + ./nice/nice.h ./random/random-glib.h + ./random/random.h ./socket/http.h ./socket/pseudossl.h + ./socket/socket-priv.h ./socket/socket.h ./socket/socks5.h ./socket/tcp-active.h ./socket/tcp-bsd.h ./socket/tcp-passive.h ./socket/udp-bsd.h - ./socket/udp-turn.h ./socket/udp-turn-over-tcp.h + ./socket/udp-turn.h ./stun/constants.h ./stun/debug.h - ./stun/md5.h ./stun/rand.h - ./stun/sha1.h ./stun/stun5389.h ./stun/stunagent.h ./stun/stuncrc32.h ./stun/stunhmac.h ./stun/stunmessage.h + ./stun/tools/stund.h ./stun/usages/bind.h ./stun/usages/ice.h ./stun/usages/timer.h ./stun/usages/turn.h ./stun/utils.h ./stun/win32_common.h + ./win32/vs9/config.h ) add_library(libnice ${SRCS} ${HEADERS}) set_target_properties(${PROJECT_NAME} PROPERTIES COMPILE_FLAGS "/wd4244 /wd4005 /wd4391 /wd4142 /wd4267") -target_link_libraries(libnice ${IPHLPAPI_LIBRARY} ${WS2_32_LIB} ${GLIB_LIBRARY} ${GOBJECT_LIBRARY} ${GIO_LIBRARY}) +target_link_libraries(libnice ${IPHLPAPI_LIBRARY} ${WS2_32_LIB} ${GLIB_LIBRARY} ${GOBJECT_LIBRARY} ${GIO_LIBRARY} OpenSSL::SSL) install(TARGETS libnice RUNTIME DESTINATION bin ARCHIVE DESTINATION lib diff --git a/ports/libnice/CONTROL b/ports/libnice/CONTROL index de7b0b67e..7a33f1423 100644 --- a/ports/libnice/CONTROL +++ b/ports/libnice/CONTROL @@ -1,4 +1,4 @@ Source: libnice -Version: 0.1.13-1 +Version: 0.1.15 Description: Libnice is an implementation of the IETF's Interactive Connectivity Establishment (ICE) standard (RFC 5245) and the Session Traversal Utilities for NAT (STUN) standard (RFC 5389). -Build-Depends: glib +Build-Depends: glib, openssl diff --git a/ports/libnice/portfile.cmake b/ports/libnice/portfile.cmake index 4d4a97bae..2c0f87afe 100644 --- a/ports/libnice/portfile.cmake +++ b/ports/libnice/portfile.cmake @@ -1,13 +1,15 @@ include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libnice-0.1.13) - -vcpkg_download_distfile(ARCHIVE - URLS "https://nice.freedesktop.org/releases/libnice-0.1.13.tar.gz" - FILENAME "libnice-0.1.13.tar.gz" - SHA512 c9bb81e8cd0b4e3673dba07ce08a16dd8821831339b44f1006510cdc09f9ae4c6eb7d43230711a2509867acb8d7df71821c411830dbf71c5a5d7e802f14a32c1 +vcpkg_download_distfile( + ARCHIVE + URLS "https://nice.freedesktop.org/releases/libnice-0.1.15.tar.gz" + FILENAME "libnice-0.1.15.tar.gz" + SHA512 60a8bcca06c0ab300dfabbf13e45aeac2085d553c420c5cc4d2fdeb46b449b2b9c9aee8015b0662c16bd1cecf5a49824b7e24951a8a0b66a87074cb00a619c0c ) -vcpkg_extract_source_archive(${ARCHIVE}) +vcpkg_extract_source_archive_ex( + ARCHIVE ${ARCHIVE} + OUT_SOURCE_PATH SOURCE_PATH + ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) diff --git a/ports/libqglviewer/CONTROL b/ports/libqglviewer/CONTROL index 7112016f5..c9e66ef18 100644 --- a/ports/libqglviewer/CONTROL +++ b/ports/libqglviewer/CONTROL @@ -1,4 +1,4 @@ Source: libqglviewer
-Version: 2.7.1
+Version: 2.7.1-1
Description: libQGLViewer is an open source C++ library based on Qt that eases the creation of OpenGL 3D viewers.
Build-Depends: qt5-base
diff --git a/ports/libqglviewer/portfile.cmake b/ports/libqglviewer/portfile.cmake index 52fb41ed4..f57092521 100644 --- a/ports/libqglviewer/portfile.cmake +++ b/ports/libqglviewer/portfile.cmake @@ -14,9 +14,19 @@ vcpkg_configure_qmake(SOURCE_PATH ${SOURCE_PATH}/QGLViewer/QGLViewer.pro) vcpkg_build_qmake()
file(INSTALL ${SOURCE_PATH}/QGLViewer DESTINATION ${CURRENT_PACKAGES_DIR}/include FILES_MATCHING PATTERN "*.h")
-file(INSTALL ${SOURCE_PATH}/QGLViewer/QGLViewer2.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin)
-file(INSTALL ${SOURCE_PATH}/QGLViewer/QGLViewer2.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
-file(INSTALL ${SOURCE_PATH}/QGLViewer/QGLViewerd2.dll ${SOURCE_PATH}/QGLViewer/QGLViewerd2.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin)
-file(INSTALL ${SOURCE_PATH}/QGLViewer/QGLViewerd2.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
+if(CMAKE_HOST_WIN32)
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
+ file(INSTALL ${SOURCE_PATH}/QGLViewer/QGLViewer2.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin)
+ file(INSTALL ${SOURCE_PATH}/QGLViewer/QGLViewerd2.dll ${SOURCE_PATH}/QGLViewer/QGLViewerd2.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin)
+ file(INSTALL ${SOURCE_PATH}/QGLViewer/QGLViewer2.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
+ file(INSTALL ${SOURCE_PATH}/QGLViewer/QGLViewerd2.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
+ else()
+ file(INSTALL ${SOURCE_PATH}/QGLViewer/QGLViewer.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
+ file(INSTALL ${SOURCE_PATH}/QGLViewer/QGLViewerd.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
+ endif()
+elseif(CMAKE_HOST_APPLE)
+ file(INSTALL ${SOURCE_PATH}/QGLViewer/libQGLViewer.a DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
+ file(INSTALL ${SOURCE_PATH}/QGLViewer/libQGLViewer.a DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
+endif()
file(INSTALL ${SOURCE_PATH}/LICENCE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libqglviewer RENAME copyright)
diff --git a/ports/libuv/CMakeLists.txt b/ports/libuv/CMakeLists.txt index 0f46ec07e..b51630d78 100644 --- a/ports/libuv/CMakeLists.txt +++ b/ports/libuv/CMakeLists.txt @@ -1,6 +1,8 @@ cmake_minimum_required(VERSION 3.5) project(libuv C) +find_package(Threads REQUIRED) + file(GLOB UV_SOURCES_COMMON src/*.c) file(GLOB UV_SOURCES_UNIX @@ -51,7 +53,7 @@ file(GLOB UV_SOURCES_WIN src/win/*.c) if(CMAKE_SYSTEM_NAME STREQUAL "Windows" OR CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") add_library(libuv ${UV_SOURCES_COMMON} ${UV_SOURCES_WIN}) target_compile_definitions(libuv PRIVATE WIN32_LEAN_AND_MEAN "_WIN32_WINNT=0x0600") - target_link_libraries(libuv iphlpapi psapi shell32 userenv ws2_32) + target_link_libraries(libuv PRIVATE iphlpapi psapi shell32 userenv ws2_32) elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin") add_library(libuv ${UV_SOURCES_COMMON} ${UV_SOURCES_UNIX} ${UV_SOURCES_DARWIN}) elseif(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") @@ -60,6 +62,7 @@ else() # Assume some Linux variant add_library(libuv ${UV_SOURCES_COMMON} ${UV_SOURCES_UNIX} ${UV_SOURCES_LINUX}) endif() +target_link_libraries(libuv PRIVATE Threads::Threads) target_include_directories(libuv PUBLIC $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>) set_target_properties(libuv PROPERTIES DEFINE_SYMBOL BUILDING_UV_SHARED) diff --git a/ports/libuv/CONTROL b/ports/libuv/CONTROL index 611be7070..8f452cb4f 100644 --- a/ports/libuv/CONTROL +++ b/ports/libuv/CONTROL @@ -1,3 +1,3 @@ Source: libuv -Version: 1.25.0 +Version: 1.27.0 Description: libuv is a multi-platform support library with a focus on asynchronous I/O. diff --git a/ports/libuv/portfile.cmake b/ports/libuv/portfile.cmake index 8179c28bb..d870d8e76 100644 --- a/ports/libuv/portfile.cmake +++ b/ports/libuv/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO libuv/libuv - REF v1.25.0 - SHA512 d1024f9193e2ad69cc670441b74ff7c63ca7d295e9a7a43c90da6781a39352687465bfe7e852d6e9085c21821bf8d11c10139c7229759fdce567d809c605acfd + REF v1.27.0 + SHA512 42dfb7bee21f3f875ae5e6e4531aff52cff59d4c000f9cee1bde1b12c127beb7adefd6d6a11c6f0180868ee5ef15351a21a36c10b1be0aa7bedc15f0c50f87e0 HEAD_REF v1.x ) diff --git a/ports/libwebp/CONTROL b/ports/libwebp/CONTROL index 9ffa6426d..ed3ff55ca 100644 --- a/ports/libwebp/CONTROL +++ b/ports/libwebp/CONTROL @@ -1,8 +1,7 @@ Source: libwebp -Version: 1.0.2-1 +Version: 1.0.2-2 Description: Lossy compression of digital photographic images. Build-Depends: opengl -Default-Features: all Feature: all Description: enable all webp features diff --git a/ports/luajit/CONTROL b/ports/luajit/CONTROL index 5a5ad6b91..e81524ec7 100644 --- a/ports/luajit/CONTROL +++ b/ports/luajit/CONTROL @@ -1,3 +1,3 @@ Source: luajit
-Version: 2.0.5
+Version: 2.0.5-1
Description: LuaJIT is a Just-In-Time (JIT) compiler for the Lua programming language.
diff --git a/ports/luajit/portfile.cmake b/ports/luajit/portfile.cmake index da68d3ad4..326929d17 100644 --- a/ports/luajit/portfile.cmake +++ b/ports/luajit/portfile.cmake @@ -73,12 +73,12 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) endif()
vcpkg_copy_pdbs()
-file(INSTALL ${SRC}/lua.h DESTINATION ${CURRENT_PACKAGES_DIR}/include)
-file(INSTALL ${SRC}/luajit.h DESTINATION ${CURRENT_PACKAGES_DIR}/include)
-file(INSTALL ${SRC}/luaconf.h DESTINATION ${CURRENT_PACKAGES_DIR}/include)
-file(INSTALL ${SRC}/lualib.h DESTINATION ${CURRENT_PACKAGES_DIR}/include)
-file(INSTALL ${SRC}/lauxlib.h DESTINATION ${CURRENT_PACKAGES_DIR}/include)
-file(INSTALL ${SRC}/lua.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include)
+file(INSTALL ${SRC}/lua.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/luajit)
+file(INSTALL ${SRC}/luajit.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/luajit)
+file(INSTALL ${SRC}/luaconf.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/luajit)
+file(INSTALL ${SRC}/lualib.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/luajit)
+file(INSTALL ${SRC}/lauxlib.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/luajit)
+file(INSTALL ${SRC}/lua.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include/luajit)
file(REMOVE "${SRC}/*.dll")
file(REMOVE "${SRC}/*.exe")
diff --git a/ports/mozjpeg/CONTROL b/ports/mozjpeg/CONTROL index 9e3f19b4c..2fa0f2d02 100644 --- a/ports/mozjpeg/CONTROL +++ b/ports/mozjpeg/CONTROL @@ -1,3 +1,3 @@ Source: mozjpeg -Version: 3.2-1 +Version: 3.2-2 Description: MozJPEG reduces file sizes of JPEG images while retaining quality and compatibility with the vast majority of the world's deployed decoders. It's compatible with libjpeg API and ABI, and can be used as a drop-in replacement for libjpeg. diff --git a/ports/mozjpeg/fix-install-error.patch b/ports/mozjpeg/fix-install-error.patch new file mode 100644 index 000000000..677ce9337 --- /dev/null +++ b/ports/mozjpeg/fix-install-error.patch @@ -0,0 +1,87 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ac0ebdb..483bf0f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -875,43 +875,51 @@ add_custom_target(installer
+ cjpeg djpeg jpegtran tjbench ${JAVA_DEPEND}
+ SOURCES mozjpeg.nsi)
+
++if(CMAKE_BUILD_TYPE STREQUAL "Debug")
++ set(REAL_BUILDS_PATH "Debug/")
++else()
++ set(REAL_BUILDS_PATH "Release/")
++endif()
++
+ if(WITH_TURBOJPEG)
+ if(ENABLE_SHARED)
+ install(TARGETS turbojpeg tjbench
+- ARCHIVE DESTINATION lib
+- LIBRARY DESTINATION lib
+- RUNTIME DESTINATION bin)
++ ARCHIVE DESTINATION lib/mozjpeg
++ LIBRARY DESTINATION lib/mozjpeg
++ RUNTIME DESTINATION tools/mozjpeg)
+ endif()
+ if(ENABLE_STATIC)
+- install(TARGETS turbojpeg-static ARCHIVE DESTINATION lib)
++ install(TARGETS turbojpeg-static
++ LIBRARY DESTINATION lib/mozjpeg
++ ARCHIVE DESTINATION lib/mozjpeg)
+ if(NOT ENABLE_SHARED)
+- install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/tjbench-static.exe
+- DESTINATION bin RENAME tjbench.exe)
++ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${REAL_BUILDS_PATH}mozjpeg/tjbench-static.exe
++ DESTINATION tools/mozjpeg RENAME tjbench.exe)
+ endif()
+ endif()
+- install(FILES ${CMAKE_SOURCE_DIR}/turbojpeg.h DESTINATION include)
++ install(FILES ${CMAKE_SOURCE_DIR}/turbojpeg.h DESTINATION include/mozjpeg)
+ endif()
+
+ if(ENABLE_STATIC)
+- install(TARGETS jpeg-static ARCHIVE DESTINATION lib)
++ install(TARGETS jpeg-static ARCHIVE DESTINATION lib/mozjpeg)
+ if(NOT ENABLE_SHARED)
+- install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/cjpeg-static.exe
+- DESTINATION bin RENAME cjpeg.exe)
+- install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/djpeg-static.exe
+- DESTINATION bin RENAME djpeg.exe)
+- install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/jpegtran-static.exe
+- DESTINATION bin RENAME jpegtran.exe)
++ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${REAL_BUILDS_PATH}mozjpeg/cjpeg-static.exe
++ DESTINATION tools/mozjpeg RENAME cjpeg.exe)
++ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${REAL_BUILDS_PATH}mozjpeg/djpeg-static.exe
++ DESTINATION tools/mozjpeg RENAME djpeg.exe)
++ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${REAL_BUILDS_PATH}mozjpeg/jpegtran-static.exe
++ DESTINATION tools/mozjpeg RENAME jpegtran.exe)
+ endif()
+ endif()
+
+-install(TARGETS rdjpgcom wrjpgcom RUNTIME DESTINATION bin)
++install(TARGETS rdjpgcom wrjpgcom RUNTIME DESTINATION tools/mozjpeg)
+
+ install(FILES ${CMAKE_SOURCE_DIR}/README.ijg ${CMAKE_SOURCE_DIR}/README-mozilla.txt
+ ${CMAKE_SOURCE_DIR}/example.c ${CMAKE_SOURCE_DIR}/libjpeg.txt
+ ${CMAKE_SOURCE_DIR}/structure.txt ${CMAKE_SOURCE_DIR}/usage.txt
+ ${CMAKE_SOURCE_DIR}/wizard.txt
+- DESTINATION doc)
++ DESTINATION share/mozjpeg)
+
+ install(FILES ${CMAKE_BINARY_DIR}/jconfig.h ${CMAKE_SOURCE_DIR}/jerror.h
+ ${CMAKE_SOURCE_DIR}/jmorecfg.h ${CMAKE_SOURCE_DIR}/jpeglib.h
+- DESTINATION include)
++ DESTINATION include/mozjpeg)
+diff --git a/sharedlib/CMakeLists.txt b/sharedlib/CMakeLists.txt
+index 268cc14..d067d2a 100644
+--- a/sharedlib/CMakeLists.txt
++++ b/sharedlib/CMakeLists.txt
+@@ -68,6 +68,6 @@ add_executable(jcstest ../jcstest.c)
+ target_link_libraries(jcstest jpeg)
+
+ install(TARGETS jpeg cjpeg djpeg jpegtran
+- ARCHIVE DESTINATION lib
+- LIBRARY DESTINATION lib
+- RUNTIME DESTINATION bin)
++ ARCHIVE DESTINATION lib/mozjpeg
++ LIBRARY DESTINATION lib/mozjpeg
++ RUNTIME DESTINATION tools/mozjpeg)
diff --git a/ports/mozjpeg/portfile.cmake b/ports/mozjpeg/portfile.cmake index 52011d394..70fc58dc4 100644 --- a/ports/mozjpeg/portfile.cmake +++ b/ports/mozjpeg/portfile.cmake @@ -6,6 +6,8 @@ vcpkg_from_github( REF v3.2 SHA512 d14789827a9f4f78139a3945d3169d37eb891758b5ab40ef19e99ebebb2fb6d7c3a05495de245bba54cfd913b153af352159aa9fc0218127f97819137e0f1ab8 HEAD_REF master + PATCHES + fix-install-error.patch ) vcpkg_find_acquire_program(NASM) @@ -13,9 +15,11 @@ get_filename_component(NASM_EXE_PATH ${NASM} DIRECTORY) set(ENV{PATH} "$ENV{PATH};${NASM_EXE_PATH}") if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - set(OPTIONS "-DENABLE_SHARED=FALSE") + set(ENABLE_STATIC_BUILD ON) + set(ENABLE_SHARED_BUILD OFF) else() - set(OPTIONS "-DENABLE_STATIC=FALSE") + set(ENABLE_STATIC_BUILD OFF) + set(ENABLE_SHARED_BUILD ON) endif() string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "dynamic" WITH_CRT_DLL) @@ -23,7 +27,8 @@ string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "dynamic" WITH_CRT_DLL) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} OPTIONS - ${OPTIONS} + -DDENABLE_SHARED=${ENABLE_SHARED_BUILD} + -DENABLE_STATIC=${ENABLE_STATIC_BUILD} -DWITH_CRT_DLL=${WITH_CRT_DLL} ) @@ -31,15 +36,7 @@ vcpkg_install_cmake() #remove extra debug files file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/doc) -file(GLOB DEBUGEXES ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) -file(REMOVE ${DEBUGEXES}) - -#move exes to tools -file(GLOB EXES ${CURRENT_PACKAGES_DIR}/bin/*.exe) -file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/mozjpeg) -file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/mozjpeg) -file(REMOVE ${EXES}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/mozjpeg) diff --git a/ports/nlohmann-json/CONTROL b/ports/nlohmann-json/CONTROL index d1d9b689b..5d25a4eaa 100644 --- a/ports/nlohmann-json/CONTROL +++ b/ports/nlohmann-json/CONTROL @@ -1,3 +1,3 @@ Source: nlohmann-json -Version: 3.5.0-5 +Version: 3.6.1 Description: JSON for Modern C++ diff --git a/ports/nlohmann-json/portfile.cmake b/ports/nlohmann-json/portfile.cmake index ea95cad97..fb492c08c 100644 --- a/ports/nlohmann-json/portfile.cmake +++ b/ports/nlohmann-json/portfile.cmake @@ -1,6 +1,6 @@ include(vcpkg_common_functions) -set(SOURCE_VERSION 3.5.0) +set(SOURCE_VERSION 3.6.1) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/nlohmann-json-v${SOURCE_VERSION}) file(MAKE_DIRECTORY ${SOURCE_PATH}) @@ -15,11 +15,11 @@ function(download_src SUBPATH SHA512) file(COPY ${FILE} DESTINATION ${SUBPATH_DIR}) endfunction() -download_src(CMakeLists.txt c763a16ff8026f049041e4461040416278d51751a6ac37ed1f4bfb565c748f2307e121fa6f71c2420d30ceb231cfb68b3f502cb8c3750371c1bf90e1f651578f) -download_src(LICENSE.MIT 0fdb404547467f4523579acde53066badf458504d33edbb6e39df0ae145ed27d48a720189a60c225c0aab05f2aa4ce4050dcb241b56dc693f7ee9f54c8728a75) +download_src(CMakeLists.txt ea5775c8eca3f387d152e6adadeb5e5454b7bce2bb45b305019248def2714b85b959196cb97f25b175ebebd044f179bcffa5ec62b0373bee3a8ca135f2988054) +download_src(LICENSE.MIT 44e6d9510dd66195211aa8ce3e6eef55be524e82c5864f3bfb85f2ac1215529c8ca370c8746de61ad5739e5af1633a5985085dacd1ffe220cd21d06433936801) download_src(nlohmann_json.natvis 9bce6758db0e54777394a4e718e60a281952b15f0c6dc6a6ad4a6d023c958b5515b2d39b7d4c66c03f0d3fdfdc1d6c23afb8b8419f1345c9d44d7b9a9ee2582b) download_src(cmake/config.cmake.in 7caab6166baa891f77f5b632ac4a920e548610ec41777b885ec51fe68d3665ffe91984dd2881caf22298b5392dfbd84b526fda252467bb66de9eb90e6e6ade5a) -download_src(single_include/nlohmann/json.hpp 6e8df9c0a8b5e74cc03f1c7620820215d43b642e213d30481830e5608c8196455dab5a5b604758c25dc6f45bd394fc0be6c8f8712a6498e96b3fd2e7d388d3c0) +download_src(single_include/nlohmann/json.hpp 17ad2911f054235002e273a34087f91122586de475792e9a41b8fa5cd0df3341867a976d702e2bb99459583d393afaabb481823700260bc19fb64eae544fc0bd) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} diff --git a/ports/octomap/CONTROL b/ports/octomap/CONTROL index 21c72834f..f6633ea07 100644 --- a/ports/octomap/CONTROL +++ b/ports/octomap/CONTROL @@ -1,3 +1,3 @@ Source: octomap -Version: cefed0c1d79afafa5aeb05273cf1246b093b771c-3 +Version: cefed0c1d79afafa5aeb05273cf1246b093b771c-4 Description: An Efficient Probabilistic 3D Mapping Framework Based on Octrees diff --git a/ports/octomap/portfile.cmake b/ports/octomap/portfile.cmake index e07551dbe..5155c31bb 100644 --- a/ports/octomap/portfile.cmake +++ b/ports/octomap/portfile.cmake @@ -25,23 +25,28 @@ vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/octomap) -file(RENAME ${CURRENT_PACKAGES_DIR}/bin/binvox2bt.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/binvox2bt.exe) -file(RENAME ${CURRENT_PACKAGES_DIR}/bin/bt2vrml.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/bt2vrml.exe) -file(RENAME ${CURRENT_PACKAGES_DIR}/bin/compare_octrees.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/compare_octrees.exe) -file(RENAME ${CURRENT_PACKAGES_DIR}/bin/convert_octree.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/convert_octree.exe) -file(RENAME ${CURRENT_PACKAGES_DIR}/bin/edit_octree.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/edit_octree.exe) -file(RENAME ${CURRENT_PACKAGES_DIR}/bin/eval_octree_accuracy.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/eval_octree_accuracy.exe) -file(RENAME ${CURRENT_PACKAGES_DIR}/bin/graph2tree.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/graph2tree.exe) -file(RENAME ${CURRENT_PACKAGES_DIR}/bin/log2graph.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/log2graph.exe) - -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/binvox2bt.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/bt2vrml.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/compare_octrees.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/convert_octree.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/edit_octree.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/eval_octree_accuracy.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/graph2tree.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/log2graph.exe) +if(WIN32) + file(RENAME ${CURRENT_PACKAGES_DIR}/bin/binvox2bt.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/binvox2bt.exe) + file(RENAME ${CURRENT_PACKAGES_DIR}/bin/bt2vrml.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/bt2vrml.exe) + file(RENAME ${CURRENT_PACKAGES_DIR}/bin/compare_octrees.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/compare_octrees.exe) + file(RENAME ${CURRENT_PACKAGES_DIR}/bin/convert_octree.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/convert_octree.exe) + file(RENAME ${CURRENT_PACKAGES_DIR}/bin/edit_octree.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/edit_octree.exe) + file(RENAME ${CURRENT_PACKAGES_DIR}/bin/eval_octree_accuracy.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/eval_octree_accuracy.exe) + file(RENAME ${CURRENT_PACKAGES_DIR}/bin/graph2tree.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/graph2tree.exe) + file(RENAME ${CURRENT_PACKAGES_DIR}/bin/log2graph.exe ${CURRENT_PACKAGES_DIR}/tools/octomap/log2graph.exe) + + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/binvox2bt.exe) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/bt2vrml.exe) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/compare_octrees.exe) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/convert_octree.exe) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/edit_octree.exe) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/eval_octree_accuracy.exe) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/graph2tree.exe) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/log2graph.exe) +else() + file(RENAME ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/tools/octomap) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) +endif() vcpkg_fixup_cmake_targets(CONFIG_PATH share/octomap) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) diff --git a/ports/ompl/portfile.cmake b/ports/ompl/portfile.cmake index b0814e3b1..f03c3dd15 100644 --- a/ports/ompl/portfile.cmake +++ b/ports/ompl/portfile.cmake @@ -12,6 +12,13 @@ include(vcpkg_common_functions)
+string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH)
+if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32)
+ message(WARNING "Ompl's buildsystem uses very long paths and may fail on your system.\n"
+ "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command."
+ )
+endif()
+
set(OMPL_VERSION 1.4.1)
vcpkg_download_distfile(ARCHIVE
URLS "https://github.com/ompl/ompl/archive/${OMPL_VERSION}.zip"
diff --git a/ports/open62541/CONTROL b/ports/open62541/CONTROL new file mode 100644 index 000000000..abf413d79 --- /dev/null +++ b/ports/open62541/CONTROL @@ -0,0 +1,3 @@ +Source: open62541 +Version: 0.3.0 +Description: open62541 is an open source C (C99) implementation of OPC UA licensed under the Mozilla Public License v2.0. diff --git a/ports/open62541/portfile.cmake b/ports/open62541/portfile.cmake new file mode 100644 index 000000000..951ad9b48 --- /dev/null +++ b/ports/open62541/portfile.cmake @@ -0,0 +1,69 @@ +include(vcpkg_common_functions) + +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + message("${PORT} currently requires the following tools from the system package manager:\n python-six\n\nThis can be installed on Ubuntu systems via apt-get install python-six python3-six (depending on your current python default interpreter)") +endif() + +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + message(FATAL_ERROR "${PORT} does not currently support UWP") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO open62541/open62541 + REF v0.3.0 + SHA512 67766d226e1b900c0c37309099ecdbe987d10888ebf43f9066b21cf79f64d34e6ac30c2671a4901892f044859da4e8dbaa9fed5a49c633f73fef3bec75774050 + HEAD_REF master +) + +file(READ ${SOURCE_PATH}/CMakeLists.txt OPEN62541_CMAKELISTS) +string(REPLACE + "RUNTIME DESTINATION \${CMAKE_INSTALL_PREFIX}" + "RUNTIME DESTINATION \${BIN_INSTALL_DIR}" + OPEN62541_CMAKELISTS "${OPEN62541_CMAKELISTS}") +file(WRITE ${SOURCE_PATH}/CMakeLists.txt "${OPEN62541_CMAKELISTS}") + +if(CMAKE_HOST_WIN32) + set(EXECUTABLE_SUFFIX ".exe") +else() + set(EXECUTABLE_SUFFIX "") +endif() + +vcpkg_find_acquire_program(PYTHON3) +get_filename_component(PYTHON3_DIR "${PYTHON3}" DIRECTORY) +vcpkg_add_to_path("${PYTHON3_DIR}") +if(NOT EXISTS ${PYTHON3_DIR}/easy_install${EXECUTABLE_SUFFIX}) + if(NOT EXISTS ${PYTHON3_DIR}/Scripts/pip${EXECUTABLE_SUFFIX}) + vcpkg_download_distfile(GET_PIP + URLS "https://bootstrap.pypa.io/get-pip.py" + FILENAME "tools/python/python3/get-pip.py" + SHA512 fdbcef1037dca7cc914e2304af657ebd08239cd18c3e79786dc25c8ea39957674e012d7ea8ae2c99006e4b61d3a5e24669ac5771dc186697fd9fdb40b6cc07ae + ) + execute_process(COMMAND ${PYTHON3_DIR}/python${EXECUTABLE_SUFFIX} ${PYTHON3_DIR}/get-pip.py) + endif() + execute_process(COMMAND ${PYTHON3_DIR}/Scripts/pip${EXECUTABLE_SUFFIX} install six) +else() + execute_process(COMMAND ${PYTHON3_DIR}/easy_install${EXECUTABLE_SUFFIX} six) +endif() + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS_DEBUG + -DCMAKE_DEBUG_POSTFIX=d +) + +vcpkg_install_cmake() + +if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake/${PORT}) + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT}) +else() + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake) +endif() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/open62541/tools) + +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/open62541) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/open62541/LICENSE ${CURRENT_PACKAGES_DIR}/share/open62541/copyright) diff --git a/ports/openblas/CONTROL b/ports/openblas/CONTROL index ed1206a0a..980b87fb6 100644 --- a/ports/openblas/CONTROL +++ b/ports/openblas/CONTROL @@ -1,3 +1,3 @@ Source: openblas -Version: 0.3.5 +Version: 0.3.5-1 Description: OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. diff --git a/ports/openblas/fix-space-path.patch b/ports/openblas/fix-space-path.patch new file mode 100644 index 000000000..1ceacd90a --- /dev/null +++ b/ports/openblas/fix-space-path.patch @@ -0,0 +1,45 @@ +diff --git a/cmake/prebuild.cmake b/cmake/prebuild.cmake
+index fc66eb0..ffaffcf 100644
+--- a/cmake/prebuild.cmake
++++ b/cmake/prebuild.cmake
+@@ -296,14 +296,14 @@ else(NOT CMAKE_CROSSCOMPILING)
+
+ set(GETARCH_DIR "${PROJECT_BINARY_DIR}/getarch_build")
+ set(GETARCH_BIN "getarch${CMAKE_EXECUTABLE_SUFFIX}")
+- file(MAKE_DIRECTORY ${GETARCH_DIR})
+- configure_file(${TARGET_CONF_TEMP} ${GETARCH_DIR}/${TARGET_CONF} COPYONLY)
++ file(MAKE_DIRECTORY "${GETARCH_DIR}")
++ configure_file(${TARGET_CONF_TEMP} "${GETARCH_DIR}/${TARGET_CONF}" COPYONLY)
+ if (NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "WindowsStore")
+- try_compile(GETARCH_RESULT ${GETARCH_DIR}
++ try_compile(GETARCH_RESULT "${GETARCH_DIR}"
+ SOURCES ${GETARCH_SRC}
+- COMPILE_DEFINITIONS ${EXFLAGS} ${GETARCH_FLAGS} -I${GETARCH_DIR} -I"${PROJECT_SOURCE_DIR}" -I"${PROJECT_BINARY_DIR}"
++ COMPILE_DEFINITIONS ${EXFLAGS} ${GETARCH_FLAGS} -I"${GETARCH_DIR}" -I"${PROJECT_SOURCE_DIR}" -I"${PROJECT_BINARY_DIR}"
+ OUTPUT_VARIABLE GETARCH_LOG
+- COPY_FILE ${PROJECT_BINARY_DIR}/${GETARCH_BIN}
++ COPY_FILE "${PROJECT_BINARY_DIR}/${GETARCH_BIN}"
+ )
+
+ if (NOT ${GETARCH_RESULT})
+@@ -324,14 +324,14 @@ execute_process(COMMAND "${BLASHELPER_BINARY_DIR}/${GETARCH_BIN}" 1 OUTPUT_VARIA
+
+ set(GETARCH2_DIR "${PROJECT_BINARY_DIR}/getarch2_build")
+ set(GETARCH2_BIN "getarch_2nd${CMAKE_EXECUTABLE_SUFFIX}")
+- file(MAKE_DIRECTORY ${GETARCH2_DIR})
+- configure_file(${TARGET_CONF_TEMP} ${GETARCH2_DIR}/${TARGET_CONF} COPYONLY)
++ file(MAKE_DIRECTORY "${GETARCH2_DIR}")
++ configure_file(${TARGET_CONF_TEMP} "${GETARCH2_DIR}/${TARGET_CONF}" COPYONLY)
+ if (NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "WindowsStore")
+- try_compile(GETARCH2_RESULT ${GETARCH2_DIR}
+- SOURCES ${PROJECT_SOURCE_DIR}/getarch_2nd.c
+- COMPILE_DEFINITIONS ${EXFLAGS} ${GETARCH_FLAGS} ${GETARCH2_FLAGS} -I${GETARCH2_DIR} -I"${PROJECT_SOURCE_DIR}" -I"${PROJECT_BINARY_DIR}"
++ try_compile(GETARCH2_RESULT "${GETARCH2_DIR}"
++ SOURCES "${PROJECT_SOURCE_DIR}/getarch_2nd.c"
++ COMPILE_DEFINITIONS ${EXFLAGS} ${GETARCH_FLAGS} ${GETARCH2_FLAGS} -I"${GETARCH2_DIR}" -I"${PROJECT_SOURCE_DIR}" -I"${PROJECT_BINARY_DIR}"
+ OUTPUT_VARIABLE GETARCH2_LOG
+- COPY_FILE ${PROJECT_BINARY_DIR}/${GETARCH2_BIN}
++ COPY_FILE "${PROJECT_BINARY_DIR}/${GETARCH2_BIN}"
+ )
+
+ if (NOT ${GETARCH2_RESULT})
diff --git a/ports/openblas/portfile.cmake b/ports/openblas/portfile.cmake index ef4e5e177..8ea8665e9 100644 --- a/ports/openblas/portfile.cmake +++ b/ports/openblas/portfile.cmake @@ -27,11 +27,9 @@ vcpkg_from_github( REF v0.3.5 SHA512 91b3074eb922453bf843158b4281cde65db9e8bbdd7590e75e9e6cdcb486157f7973f2936f327bb3eb4f1702ce0ba51ae6729d8d4baf2d986c50771e8f696df0 HEAD_REF develop -) - -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES "${CMAKE_CURRENT_LIST_DIR}/uwp.patch" + PATCHES + uwp.patch + fix-space-path.patch ) find_program(GIT NAMES git git.cmd) diff --git a/ports/opencv/portfile.cmake b/ports/opencv/portfile.cmake index 7c6594e1b..9ea245ed3 100644 --- a/ports/opencv/portfile.cmake +++ b/ports/opencv/portfile.cmake @@ -383,6 +383,11 @@ file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules-debug.cmake "${OPE file(RENAME ${CURRENT_PACKAGES_DIR}/debug/share/opencv/OpenCVModules.cmake ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake) +file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake OPENCV_MODULES) +string(REPLACE "${CURRENT_INSTALLED_DIR}" + "\${_VCPKG_INSTALLED_DIR}/\${VCPKG_TARGET_TRIPLET}" OPENCV_MODULES "${OPENCV_MODULES}") +file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake "${OPENCV_MODULES}") + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/openmvg/CONTROL b/ports/openmvg/CONTROL index 261fd901f..ce974a9d6 100644 --- a/ports/openmvg/CONTROL +++ b/ports/openmvg/CONTROL @@ -1,4 +1,4 @@ Source: openmvg
-Version: 1.4-0
+Version: 1.4-1
Description: open Multiple View Geometry library. Basis for 3D computer vision and Structure from Motion.
-Build-Depends: coinutils, clp, osi, lemon, flann, eigen3, ceres, cereal, libjpeg-turbo, tiff, libpng, zlib
+Build-Depends: coinutils, clp, osi, liblemon, flann, eigen3, ceres, cereal, libjpeg-turbo, tiff, libpng, zlib
diff --git a/ports/openmvg/portfile.cmake b/ports/openmvg/portfile.cmake index fd91a237d..26480bb3d 100644 --- a/ports/openmvg/portfile.cmake +++ b/ports/openmvg/portfile.cmake @@ -11,6 +11,14 @@ #
include(vcpkg_common_functions)
+
+string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH)
+if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32)
+ message(WARNING "Openmvg's buildsystem uses very long paths and may fail on your system.\n"
+ "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command."
+ )
+endif()
+
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO openMVG/openMVG
diff --git a/ports/osg/CONTROL b/ports/osg/CONTROL index 2cca0cdaa..e78458d25 100644 --- a/ports/osg/CONTROL +++ b/ports/osg/CONTROL @@ -1,5 +1,5 @@ Source: osg -Version: 3.6.2 +Version: 3.6.2-1 Description: The OpenSceneGraph is an open source high performance 3D graphics toolkit. Build-Depends: freetype, jasper, openexr, zlib, gdal, giflib, libjpeg-turbo, libpng, tiff diff --git a/ports/osg/portfile.cmake b/ports/osg/portfile.cmake index e72b5807b..98a0ec293 100644 --- a/ports/osg/portfile.cmake +++ b/ports/osg/portfile.cmake @@ -11,10 +11,6 @@ # include(vcpkg_common_functions) -if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - message(STATUS "Warning: Static building will not support load data through plugins.") - set(VCPKG_LIBRARY_LINKAGE dynamic) -endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH @@ -24,15 +20,24 @@ vcpkg_from_github( HEAD_REF master PATCHES "${CMAKE_CURRENT_LIST_DIR}/collada.patch" + "${CMAKE_CURRENT_LIST_DIR}/static.patch" ) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + set(OSG_DYNAMIC OFF) +else() + set(OSG_DYNAMIC ON) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} # PREFER_NINJA # Disable this option if project cannot be built with Ninja OPTIONS -DOSG_USE_UTF8_FILENAME=ON - # OPTIONS_RELEASE -DOPTIMIZE=1 - # OPTIONS_DEBUG -DDEBUGGABLE=1 + -DDYNAMIC_OPENSCENEGRAPH=${OSG_DYNAMIC} + -DDYNAMIC_OPENTHREADS=${OSG_DYNAMIC} + -DBUILD_OSG_EXAMPLES=ON + -DBUILD_OSG_APPLICATIONS=ON ) vcpkg_install_cmake() @@ -59,3 +64,11 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/osgPlugins-3.6.2/) # Handle copyright file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/osg) file(RENAME ${CURRENT_PACKAGES_DIR}/share/osg/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/osg/copyright) + +#Cleanup +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/pkgconfig ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +endif()
\ No newline at end of file diff --git a/ports/osg/static.patch b/ports/osg/static.patch new file mode 100644 index 000000000..c7278d282 --- /dev/null +++ b/ports/osg/static.patch @@ -0,0 +1,7 @@ +--- a/src/osgPlugins/curl/CMakeLists.txt
++++ b/src/osgPlugins/curl/CMakeLists.txt
+@@ -35,3 +35,3 @@
+ ADD_DEFINITIONS(-DCURL_STATICLIB)
+- SET(TARGET_EXTERNAL_LIBRARIES ${TARGET_EXTERNAL_LIBRARIES} ws2_32 winmm wldap32)
++ SET(TARGET_EXTERNAL_LIBRARIES ${TARGET_EXTERNAL_LIBRARIES} ws2_32 winmm wldap32 crypt32)
+ ENDIF()
diff --git a/ports/parallel-hashmap/CONTROL b/ports/parallel-hashmap/CONTROL new file mode 100644 index 000000000..8935060a4 --- /dev/null +++ b/ports/parallel-hashmap/CONTROL @@ -0,0 +1,3 @@ +Source: parallel-hashmap +Version: 1.1.0 +Description: A header-only, very fast and memory-friendly hash map family. diff --git a/ports/parallel-hashmap/portfile.cmake b/ports/parallel-hashmap/portfile.cmake new file mode 100644 index 000000000..9c2c02289 --- /dev/null +++ b/ports/parallel-hashmap/portfile.cmake @@ -0,0 +1,24 @@ +#header-only library +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO greg7mdp/parallel-hashmap + REF 1.1.0 + SHA512 ff9497d2a8009c9aa955f50e66269e5963a86d8593e3eb07ef968a8ea5e162fea7e145d6d4d9e7aa91380b49f22166d1a08445fa40d02f43327e4c39612f52d9 + HEAD_REF master +) + +# Use greg7mdp/parallel-hashmap's own build process, skipping examples and tests +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) +vcpkg_install_cmake() + +# Delete redundant directories +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/share/doc) + +# Put the licence file where vcpkg expects it +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/parallel-hashmap) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/parallel-hashmap/LICENSE ${CURRENT_PACKAGES_DIR}/share/parallel-hashmap/copyright) diff --git a/ports/pbc/CONTROL b/ports/pbc/CONTROL index a8ee10486..ba09843de 100644 --- a/ports/pbc/CONTROL +++ b/ports/pbc/CONTROL @@ -1,4 +1,4 @@ Source: pbc -Version: 0.5.14 +Version: 0.5.14-1 Build-Depends: mpir Description: Pairing-Based Crypto library provides low-level routines for pairing-based cryptosystems. diff --git a/ports/pbc/windows.patch b/ports/pbc/windows.patch index 5b790767a..ea4942cde 100644 --- a/ports/pbc/windows.patch +++ b/ports/pbc/windows.patch @@ -1,3 +1,25 @@ +diff --git "a/include/pbc_curve.h" "b/include/pbc_curve.h" +--- "a/include/pbc_curve.h" ++++ "b/include/pbc_curve.h" +@@ -60,7 +60,9 @@ + + void field_curve_set_quotient_cmp(field_ptr c, mpz_t quotient_cmp); + ++#ifdef __GNUC__ + #pragma GCC visibility push(hidden) ++#endif + // Internal: + + element_ptr curve_x_coord(element_t e); +@@ -74,6 +76,8 @@ + void curve_set_si(element_t R, long int x, long int y); + void curve_set_gen_no_cofac(element_ptr a); + ++#ifdef __GNUC__ + #pragma GCC visibility pop ++#endif + + #endif //__PBC_CURVE_H__ diff --git "a/include/pbc_vc_compat.win32.h" "b/include/pbc_vc_compat.win32.h" index 27d3bba..7f772d4 100644 --- "a/include/pbc_vc_compat.win32.h" diff --git a/ports/pcre2/CONTROL b/ports/pcre2/CONTROL index 79982525a..37f3a6da3 100644 --- a/ports/pcre2/CONTROL +++ b/ports/pcre2/CONTROL @@ -1,3 +1,3 @@ Source: pcre2 -Version: 10.30-2 +Version: 10.30-3 Description: PCRE2 is a re-working of the original Perl Compatible Regular Expressions library diff --git a/ports/pcre2/portfile.cmake b/ports/pcre2/portfile.cmake index 34e4cf726..e2f5a702a 100644 --- a/ports/pcre2/portfile.cmake +++ b/ports/pcre2/portfile.cmake @@ -1,12 +1,16 @@ set(PCRE2_VERSION 10.30) include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/pcre2-${PCRE2_VERSION}) + vcpkg_download_distfile(ARCHIVE URLS "https://ftp.pcre.org/pub/pcre/pcre2-${PCRE2_VERSION}.zip" "https://sourceforge.net/projects/pcre/files/pcre2/${PCRE2_VERSION}/pcre2-${PCRE2_VERSION}.zip/download" FILENAME "pcre2-${PCRE2_VERSION}.zip" SHA512 03e570b946ac29498a114b27e715a0fcf25702bfc9623f9fc085ee8a3214ab3c303baccb9c0af55da6916e8ce40d931d97f1ee9628690563041a943f0aa2bc54) -vcpkg_extract_source_archive(${ARCHIVE}) +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + PATCHES fix-space.patch +) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} @@ -20,9 +24,6 @@ vcpkg_configure_cmake( -DPCRE2_BUILD_TESTS=OFF -DPCRE2_BUILD_PCRE2GREP=OFF) -vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/fix-space.patch) - vcpkg_install_cmake() file(READ ${CURRENT_PACKAGES_DIR}/include/pcre2.h PCRE2_H) diff --git a/ports/pdal/no-source-dir-writes.patch b/ports/pdal/0002-no-source-dir-writes.patch index f7ec12f6b..f7ec12f6b 100644 --- a/ports/pdal/no-source-dir-writes.patch +++ b/ports/pdal/0002-no-source-dir-writes.patch diff --git a/ports/pdal/0003-fix-copy-vendor.patch b/ports/pdal/0003-fix-copy-vendor.patch new file mode 100644 index 000000000..a29ad9018 --- /dev/null +++ b/ports/pdal/0003-fix-copy-vendor.patch @@ -0,0 +1,50 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 43e446a..c4c7d6f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -339,6 +339,30 @@ install(DIRECTORY ${PDAL_FILTERS_DIR}
+ install(FILES ${DIMENSION_OUTFILE} ${pdal_features_hpp}
+ DESTINATION include/pdal
+ )
++# Install vendor headers
++install(DIRECTORY ${PDAL_VENDOR_ARBITER_DIR}
++ DESTINATION include/pdal/vendor
++ FILES_MATCHING PATTERN "*.hpp"
++ PATTERN "private" EXCLUDE
++)
++
++install(DIRECTORY ${PDAL_VENDOR_JSONCPP_DIR}
++ DESTINATION include/pdal/vendor
++ FILES_MATCHING PATTERN "*.h"
++ PATTERN "private" EXCLUDE
++)
++
++install(DIRECTORY ${PDAL_VENDOR_KAZHDAN_DIR}
++ DESTINATION include/pdal/vendor
++ FILES_MATCHING PATTERN "*.h"
++ PATTERN "private" EXCLUDE
++)
++
++install(DIRECTORY ${PDAL_VENDOR_NANOFLANN_DIR}
++ DESTINATION include/pdal/vendor
++ FILES_MATCHING PATTERN "*.hpp"
++ PATTERN "private" EXCLUDE
++)
+
+ #
+ # CPACK
+diff --git a/cmake/directories.cmake b/cmake/directories.cmake
+index f079ec7..8e366e8 100644
+--- a/cmake/directories.cmake
++++ b/cmake/directories.cmake
+@@ -11,4 +11,7 @@ set(PDAL_KERNELS_DIR ${ROOT_DIR}/kernels)
+ set(PDAL_FILTERS_DIR ${ROOT_DIR}/filters)
+ set(PDAL_IO_DIR ${ROOT_DIR}/io)
+ set(PDAL_VENDOR_DIR ${ROOT_DIR}/vendor)
+-
++set(PDAL_VENDOR_ARBITER_DIR ${PDAL_VENDOR_DIR}/arbiter)
++set(PDAL_VENDOR_JSONCPP_DIR ${PDAL_VENDOR_DIR}/jsoncpp)
++set(PDAL_VENDOR_KAZHDAN_DIR ${PDAL_VENDOR_DIR}/kazhdan)
++set(PDAL_VENDOR_NANOFLANN_DIR ${PDAL_VENDOR_DIR}/nanoflann)
+
+\ No newline at end of file
diff --git a/ports/pdal/CONTROL b/ports/pdal/CONTROL index ebb658c90..743f77c8e 100644 --- a/ports/pdal/CONTROL +++ b/ports/pdal/CONTROL @@ -1,4 +1,4 @@ Source: pdal
-Version: 1.7.1-3
+Version: 1.7.1-4
Description: PDAL - Point Data Abstraction Library is a library for manipulating point cloud data.
Build-Depends: gdal, geos, jsoncpp, libgeotiff, laszip
diff --git a/ports/pdal/portfile.cmake b/ports/pdal/portfile.cmake index cbcb97ced..6ab78024f 100644 --- a/ports/pdal/portfile.cmake +++ b/ports/pdal/portfile.cmake @@ -2,7 +2,6 @@ # # NOTE: update the version string for new PDAL release set(PDAL_VERSION_STR "1.7.1") -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/PDAL-${PDAL_VERSION_STR}-src) include(vcpkg_common_functions) @@ -11,13 +10,14 @@ vcpkg_download_distfile(ARCHIVE FILENAME "PDAL-${PDAL_VERSION_STR}-src.tar.gz" SHA512 e3e63bb05930c1a28c4f46c7edfaa8e9ea20484f1888d845b660a29a76f1dd1daea3db30a98607be0c2eeb86930ec8bfd0965d5d7d84b07a4fe4cb4512da9b09 ) -vcpkg_extract_source_archive(${ARCHIVE}) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} +vcpkg_extract_source_archive_ex( + ARCHIVE ${ARCHIVE} + OUT_SOURCE_PATH SOURCE_PATH PATCHES - ${CMAKE_CURRENT_LIST_DIR}/0001-win32_compiler_options.cmake.patch - ${CMAKE_CURRENT_LIST_DIR}/no-source-dir-writes.patch + 0001-win32_compiler_options.cmake.patch + 0002-no-source-dir-writes.patch + 0003-fix-copy-vendor.patch ) file(REMOVE "${SOURCE_PATH}/pdal/gitsha.cpp") diff --git a/ports/physfs/CONTROL b/ports/physfs/CONTROL index 5d5d69755..3900d77a8 100644 --- a/ports/physfs/CONTROL +++ b/ports/physfs/CONTROL @@ -1,4 +1,4 @@ Source: physfs -Version: 3.0.1-1 +Version: 3.0.2 Description: a library to provide abstract access to various archives Build-Depends: zlib diff --git a/ports/physfs/physfs.3.0.1.GetUserProfileDirectory.patch b/ports/physfs/physfs.3.0.1.GetUserProfileDirectory.patch deleted file mode 100644 index 4338e52e5..000000000 --- a/ports/physfs/physfs.3.0.1.GetUserProfileDirectory.patch +++ /dev/null @@ -1,25 +0,0 @@ - -diff -r a29fef4a20fd -r ece6769c0676 src/physfs_platform_windows.c ---- a/src/physfs_platform_windows.c Wed May 16 19:54:51 2018 -0400 -+++ b/src/physfs_platform_windows.c Wed Oct 03 22:40:57 2018 -0400 -@@ -566,7 +566,6 @@ - else - { - DWORD psize = 0; -- WCHAR dummy = 0; - LPWSTR wstr = NULL; - BOOL rc = 0; - -@@ -575,7 +574,7 @@ - * psize. Also note that the second parameter can't be - * NULL or the function fails. - */ -- rc = pGetDir(accessToken, &dummy, &psize); -+ rc = pGetDir(accessToken, NULL, &psize); - GOTO_IF(rc, PHYSFS_ERR_OS_ERROR, done); /* should have failed! */ - - /* Allocate memory for the profile directory */ - - - - diff --git a/ports/physfs/portfile.cmake b/ports/physfs/portfile.cmake index feee3b456..92f1cd4ee 100644 --- a/ports/physfs/portfile.cmake +++ b/ports/physfs/portfile.cmake @@ -1,17 +1,15 @@ include(vcpkg_common_functions) -set(PHYSFS_VERSION 3.0.1) +set(PHYSFS_VERSION 3.0.2) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/physfs-${PHYSFS_VERSION}) vcpkg_download_distfile(ARCHIVE URLS "https://icculus.org/physfs/downloads/physfs-${PHYSFS_VERSION}.tar.bz2" FILENAME "physfs-${PHYSFS_VERSION}.tar.bz2" - SHA512 ddf3b075ccb506da5e9a1ce96001be402752b9b777c2e816a85d48aff3626ff0886ea43eb07bd300fe3a9f59b9a002f54d822c51d483a4ee94b38378534c1879 + SHA512 4024b6c3348e0b6fc1036aac330192112dfe17de3e3d14773be9f06e9a062df5a1006869f21162b4e0b584989f463788a35e64186b1913225c073fea62754472 ) vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH ARCHIVE ${ARCHIVE} REF ${PHYSFS_VERSION} - PATCHES - physfs.3.0.1.GetUserProfileDirectory.patch # Fixes GetUserProfileDirectory issue on Win10 build 1809(+?); See: https://hg.icculus.org/icculus/physfs/rev/ece6769c0676 ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" PHYSFS_STATIC) diff --git a/ports/protobuf/CONTROL b/ports/protobuf/CONTROL index 88bc7d3ee..6cd33935c 100644 --- a/ports/protobuf/CONTROL +++ b/ports/protobuf/CONTROL @@ -1,5 +1,5 @@ Source: protobuf -Version: 3.6.1.3-1 +Version: 3.7.1 Description: Protocol Buffers - Google's data interchange format Feature: zlib diff --git a/ports/protobuf/disable-lite.patch b/ports/protobuf/disable-lite.patch index ceb34671c..3a372e68f 100644 --- a/ports/protobuf/disable-lite.patch +++ b/ports/protobuf/disable-lite.patch @@ -1,11 +1,11 @@ diff --git a/cmake/install.cmake b/cmake/install.cmake
-index 82036cb..378db2d 100644
+index 9b2ae93c..7c9670a3 100644
--- a/cmake/install.cmake
+++ b/cmake/install.cmake
-@@ -15,10 +15,12 @@ foreach(_library ${_protobuf_libraries})
- PROPERTY INTERFACE_INCLUDE_DIRECTORIES
- $<BUILD_INTERFACE:${protobuf_source_dir}/src>
- $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
+@@ -22,10 +22,12 @@ foreach(_library ${_protobuf_libraries})
+ set_property(TARGET ${_library}
+ PROPERTY INSTALL_RPATH "@loader_path")
+ endif()
+ if(NOT "${_library}" STREQUAL "libprotobuf-lite")
install(TARGETS ${_library} EXPORT protobuf-targets
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${_library}
@@ -15,8 +15,8 @@ index 82036cb..378db2d 100644 endforeach()
if (protobuf_BUILD_PROTOC_BINARIES)
-@@ -26,7 +28,7 @@ if (protobuf_BUILD_PROTOC_BINARIES)
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT protoc)
+@@ -40,7 +42,7 @@ if (protobuf_BUILD_PROTOC_BINARIES)
+ endif()
endif (protobuf_BUILD_PROTOC_BINARIES)
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/protobuf.pc ${CMAKE_CURRENT_BINARY_DIR}/protobuf-lite.pc DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
@@ -24,7 +24,7 @@ index 82036cb..378db2d 100644 file(STRINGS extract_includes.bat.in _extract_strings
REGEX "^copy")
-@@ -107,12 +109,12 @@ configure_file(protobuf-options.cmake
+@@ -121,12 +123,12 @@ configure_file(protobuf-options.cmake
# Allows the build directory to be used as a find directory.
if (protobuf_BUILD_PROTOC_BINARIES)
diff --git a/ports/protobuf/portfile.cmake b/ports/protobuf/portfile.cmake index 32e8ccd91..9e0bc15d7 100644 --- a/ports/protobuf/portfile.cmake +++ b/ports/protobuf/portfile.cmake @@ -3,13 +3,12 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/protobuf - REF v3.6.1.3 - SHA512 9eadb46c7daa19e612516958169bc90943b38b429a4b2cf2171b66b57f50a2f8a9b66cbf58bdd44517af414b78e0f3ab2e1361891dc60ecd098185da2638d37e + REF v3.7.1 + SHA512 7d4cfabd4bd55926336a3baafa0bc1f1f15380b1b2af945f70a2bb3ba24c6ac6567f49c492326d6d1c43a488166bff178f9266377758a05d8541d8b242f4f80f HEAD_REF master PATCHES fix-uwp.patch disable-lite.patch - version-rc-msvc.patch ) if(CMAKE_HOST_WIN32 AND NOT VCPKG_TARGET_ARCHITECTURE MATCHES "x64" AND NOT VCPKG_TARGET_ARCHITECTURE MATCHES "x86") diff --git a/ports/protobuf/version-rc-msvc.patch b/ports/protobuf/version-rc-msvc.patch deleted file mode 100644 index b24a862d9..000000000 --- a/ports/protobuf/version-rc-msvc.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/cmake/protoc.cmake b/cmake/protoc.cmake
-index 9bf6f5a..b58a12a 100644
---- a/cmake/protoc.cmake
-+++ b/cmake/protoc.cmake
-@@ -2,9 +2,11 @@ set(protoc_files
- ${protobuf_source_dir}/src/google/protobuf/compiler/main.cc
- )
-
-+if(MSVC)
- set(protoc_rc_files
- ${CMAKE_CURRENT_BINARY_DIR}/version.rc
- )
-+endif()
-
- add_executable(protoc ${protoc_files} ${protoc_rc_files})
- target_link_libraries(protoc libprotobuf libprotoc)
diff --git a/ports/python3/0001-Static-library.patch b/ports/python3/0001-Static-library.patch deleted file mode 100644 index b5666ba40..000000000 --- a/ports/python3/0001-Static-library.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- a/PCbuild/pythoncore.vcxproj -+++ b/PCbuild/pythoncore.vcxproj -@@ -41,7 +41,7 @@ - <Import Project="python.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <PropertyGroup Label="Configuration"> -- <ConfigurationType>DynamicLibrary</ConfigurationType> -+ <ConfigurationType>StaticLibrary</ConfigurationType> - <UseOfMfc>false</UseOfMfc> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> -@@ -67,13 +67,25 @@ - <ClCompile> - <AdditionalOptions>/Zm200 %(AdditionalOptions)</AdditionalOptions> - <AdditionalIncludeDirectories>$(PySourcePath)Python;$(PySourcePath)Modules\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> -- <PreprocessorDefinitions>_USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions)</PreprocessorDefinitions> -+ <PreprocessorDefinitions>_USRDLL;Py_BUILD_CORE;Py_NO_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions)</PreprocessorDefinitions> - </ClCompile> - <Link> - <AdditionalDependencies>version.lib;shlwapi.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies> - <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories);$(PySourcePath)PC\external\$(PlatformToolset)\$(ArchName)</AdditionalLibraryDirectories> - <BaseAddress>0x1e000000</BaseAddress> - </Link> -+ <Lib> -+ <TargetMachine Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">MachineX86</TargetMachine> -+ </Lib> -+ <Lib> -+ <TargetMachine Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'">MachineX86</TargetMachine> -+ </Lib> -+ <Lib> -+ <TargetMachine Condition="'$(Configuration)|$(Platform)'=='PGUpdate|Win32'">MachineX86</TargetMachine> -+ </Lib> -+ <Lib> -+ <TargetMachine Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MachineX86</TargetMachine> -+ </Lib> - </ItemDefinitionGroup> - <ItemGroup> - <ClInclude Include="..\Include\abstract.h" /> --- diff --git a/ports/python3/0002-Static-CRT.patch b/ports/python3/0002-Static-CRT.patch deleted file mode 100644 index 8f63aa092..000000000 --- a/ports/python3/0002-Static-CRT.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- a/PCbuild/pythoncore.vcxproj -+++ b/PCbuild/pythoncore.vcxproj -@@ -68,6 +68,10 @@ - <AdditionalOptions>/Zm200 %(AdditionalOptions)</AdditionalOptions> - <AdditionalIncludeDirectories>$(PySourcePath)Python;$(PySourcePath)Modules\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreprocessorDefinitions>_USRDLL;Py_BUILD_CORE;Py_NO_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions)</PreprocessorDefinitions> -+ <RuntimeLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">MultiThreadedDebug</RuntimeLibrary> -+ <RuntimeLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">MultiThreadedDebug</RuntimeLibrary> -+ <RuntimeLibrary Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MultiThreaded</RuntimeLibrary> -+ <RuntimeLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MultiThreaded</RuntimeLibrary> - </ClCompile> - <Link> - <AdditionalDependencies>version.lib;shlwapi.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies> --- - diff --git a/ports/python3/0003-Fix-header-for-static-linkage.patch b/ports/python3/0003-Fix-header-for-static-linkage.patch deleted file mode 100644 index 99e56d29c..000000000 --- a/ports/python3/0003-Fix-header-for-static-linkage.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/PC/pyconfig.h b/PC/pyconfig.h -index 64e7aec..aa36745 100644 ---- a/PC/pyconfig.h -+++ b/PC/pyconfig.h -@@ -274,6 +274,7 @@ typedef int pid_t; - - /* For Windows the Python core is in a DLL by default. Test - Py_NO_ENABLE_SHARED to find out. Also support MS_NO_COREDLL for b/w compat */ -+#define Py_NO_ENABLE_SHARED - #if !defined(MS_NO_COREDLL) && !defined(Py_NO_ENABLE_SHARED) - # define Py_ENABLE_SHARED 1 /* standard symbol for shared library */ - # define MS_COREDLL /* deprecated old symbol */ --- - diff --git a/ports/python3/0004-Fix-iomodule-for-RS4-SDK.patch b/ports/python3/0004-Fix-iomodule-for-RS4-SDK.patch deleted file mode 100644 index a0efc8d1c..000000000 --- a/ports/python3/0004-Fix-iomodule-for-RS4-SDK.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/Modules/_io/_iomodule.c b/Modules/_io/_iomodule.c
---- a/Modules/_io/_iomodule.c
-+++ b/Modules/_io/_iomodule.c
-@@ -21,7 +21,7 @@
- #endif /* HAVE_SYS_STAT_H */
-
- #ifdef MS_WINDOWS
--#include <consoleapi.h>
-+#include <windows.h>
- #endif
-
- /* Various interned strings */
diff --git a/ports/python3/0005-Fix-DefaultWindowsSDKVersion.patch b/ports/python3/0005-Fix-DefaultWindowsSDKVersion.patch deleted file mode 100644 index 13f7b39e0..000000000 --- a/ports/python3/0005-Fix-DefaultWindowsSDKVersion.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/PCbuild/python.props b/PCbuild/python.props
---- a/PCbuild/python.props
-+++ b/PCbuild/python.props
-@@ -76,7 +76,7 @@
- -->
- <_RegistryVersion>$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion)</_RegistryVersion>
- <_RegistryVersion Condition="$(_RegistryVersion) == ''">$(Registry:HKEY_LOCAL_MACHINE\WOW6432Node\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion)</_RegistryVersion>
-- <DefaultWindowsSDKVersion>10.0.15063.0</DefaultWindowsSDKVersion>
-+ <DefaultWindowsSDKVersion Condition="$(_RegistryVersion) == '10.0.15063'">10.0.15063.0</DefaultWindowsSDKVersion>
- <DefaultWindowsSDKVersion Condition="$(_RegistryVersion) == '10.0.14393'">10.0.14393.0</DefaultWindowsSDKVersion>
- <DefaultWindowsSDKVersion Condition="$(_RegistryVersion) == '10.0.10586'">10.0.10586.0</DefaultWindowsSDKVersion>
- <DefaultWindowsSDKVersion Condition="$(_RegistryVersion) == '10.0.10240'">10.0.10240.0</DefaultWindowsSDKVersion>
diff --git a/ports/python3/CONTROL b/ports/python3/CONTROL index f37197e83..db8f63766 100644 --- a/ports/python3/CONTROL +++ b/ports/python3/CONTROL @@ -1,3 +1,3 @@ Source: python3 -Version: 3.6.4-5 +Version: 3.7.3 Description: The Python programming language as an embeddable library
\ No newline at end of file diff --git a/ports/python3/Microsoft.VisualStudio.Setup.Configuration.Native.patch b/ports/python3/Microsoft.VisualStudio.Setup.Configuration.Native.patch deleted file mode 100644 index 50b728340..000000000 --- a/ports/python3/Microsoft.VisualStudio.Setup.Configuration.Native.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj
-index 0f01852..6e63711 100644
---- a/PCbuild/pythoncore.vcxproj
-+++ b/PCbuild/pythoncore.vcxproj
-@@ -71,7 +71,7 @@
- </ClCompile>
- <Link>
- <AdditionalDependencies>version.lib;shlwapi.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories);$(PySourcePath)PC\external\$(PlatformToolset)\$(ArchName)</AdditionalLibraryDirectories>
-+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories);$(PySourcePath)PC\external\v140\$(ArchName)</AdditionalLibraryDirectories>
- <BaseAddress>0x1e000000</BaseAddress>
- </Link>
- </ItemDefinitionGroup>
diff --git a/ports/python3/dev16.patch b/ports/python3/dev16.patch deleted file mode 100644 index 38a968729..000000000 --- a/ports/python3/dev16.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/PCbuild/pyproject.props b/PCbuild/pyproject.props
-index 9a096bc..0647cf8 100644
---- a/PCbuild/pyproject.props
-+++ b/PCbuild/pyproject.props
-@@ -94,9 +94,9 @@
- Inputs="$(PySourcePath)Include\patchlevel.h"
- Outputs="$(IntDir)pythonnt_rc.h">
- <WriteLinesToFile File="$(IntDir)pythonnt_rc.h" Overwrite="true" Encoding="ascii"
-- Lines='/* This file created by pyproject.props /t:GeneratePythonNtRcH */
--#define FIELD3 $(Field3Value)
--#define MS_DLL_ID "$(SysWinVer)"
-+ Lines='/* This file created by pyproject.props /t:GeneratePythonNtRcH */;
-+#define FIELD3 $(Field3Value);
-+#define MS_DLL_ID "$(SysWinVer)";
- #define PYTHON_DLL_NAME "$(TargetName)$(TargetExt)"
- ' />
- <ItemGroup>
diff --git a/ports/python3/portfile.cmake b/ports/python3/portfile.cmake index 308f0aa37..809b825f2 100644 --- a/ports/python3/portfile.cmake +++ b/ports/python3/portfile.cmake @@ -4,8 +4,8 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic AND VCPKG_CRT_LINKAGE STREQUAL static endif() set(PYTHON_VERSION_MAJOR 3) -set(PYTHON_VERSION_MINOR 6) -set(PYTHON_VERSION_PATCH 4) +set(PYTHON_VERSION_MINOR 7) +set(PYTHON_VERSION_PATCH 3) set(PYTHON_VERSION ${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.${PYTHON_VERSION_PATCH}) include(vcpkg_common_functions) @@ -14,13 +14,8 @@ vcpkg_from_github( OUT_SOURCE_PATH TEMP_SOURCE_PATH REPO python/cpython REF v${PYTHON_VERSION} - SHA512 32cca5e344ee66f08712ab5533e5518f724f978ec98d985f7612d0bd8d7f5cac25625363c9eead192faf1806d4ea3393515f72ba962a2a0bed26261e56d8c637 + SHA512 023960a2f570fe7178d3901df0c3c33346466906b6d55c73ef7947c19619dbab62efc42c7262a0539bc5e31543b1113eb7a088d4615ad7557a0707bdaca27940 HEAD_REF master - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/0004-Fix-iomodule-for-RS4-SDK.patch - ${CMAKE_CURRENT_LIST_DIR}/0005-Fix-DefaultWindowsSDKVersion.patch - dev16.patch - Microsoft.VisualStudio.Setup.Configuration.Native.patch ) # We need per-triplet directories because we need to patch the project files differently based on the linkage @@ -29,21 +24,6 @@ set(SOURCE_PATH "${TEMP_SOURCE_PATH}-Lib-${VCPKG_LIBRARY_LINKAGE}-crt-${VCPKG_CR file(REMOVE_RECURSE ${SOURCE_PATH}) file(RENAME "${TEMP_SOURCE_PATH}" ${SOURCE_PATH}) -if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/0001-Static-library.patch - ) -endif() -if (VCPKG_CRT_LINKAGE STREQUAL static) - vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/0002-Static-CRT.patch - ) -endif() - if (VCPKG_TARGET_ARCHITECTURE MATCHES "x86") set(BUILD_ARCH "Win32") set(OUT_DIR "win32") @@ -58,14 +38,6 @@ vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/PCBuild/pythoncore.vcxproj PLATFORM ${BUILD_ARCH}) -if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/0003-Fix-header-for-static-linkage.patch - ) -endif() - file(GLOB HEADERS ${SOURCE_PATH}/Include/*.h) file(COPY ${HEADERS} ${SOURCE_PATH}/PC/pyconfig.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}) diff --git a/ports/qscintilla/CONTROL b/ports/qscintilla/CONTROL index 59b75c8c1..41b86bba9 100644 --- a/ports/qscintilla/CONTROL +++ b/ports/qscintilla/CONTROL @@ -1,4 +1,4 @@ Source: qscintilla -Version: 2.10-7 +Version: 2.10-8 Description: QScintilla is a port to Qt of the Scintilla editing component. Features syntax highlighting, code-completion and much more (Barebone build without python bindings (missing dependeny PyQt) and without QtDesigner plugin) -Build-Depends: qt5-base +Build-Depends: qt5-base, qt5-macextras (osx), qt5-winextras (windows) diff --git a/ports/qscintilla/portfile.cmake b/ports/qscintilla/portfile.cmake index 71778e402..8e241cfef 100644 --- a/ports/qscintilla/portfile.cmake +++ b/ports/qscintilla/portfile.cmake @@ -27,38 +27,32 @@ vcpkg_configure_qmake( DEFINES+=SCI_NAMESPACE ) -vcpkg_build_qmake( - RELEASE_TARGETS release - DEBUG_TARGETS debug -) +if(CMAKE_HOST_WIN32) + vcpkg_build_qmake( + RELEASE_TARGETS release + DEBUG_TARGETS debug + ) +else() + vcpkg_build_qmake() +endif() file(GLOB HEADER_FILES ${SOURCE_PATH}/Qt4Qt5/Qsci/*) file(COPY ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/Qsci) -configure_file( - ${RELEASE_DIR}/release/qscintilla2_qt5.lib - ${CURRENT_PACKAGES_DIR}/lib/qscintilla2.lib - COPYONLY -) - -configure_file( - ${DEBUG_DIR}/debug/qscintilla2_qt5.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/qscintilla2.lib - COPYONLY -) - -if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - file(COPY - ${RELEASE_DIR}/release/qscintilla2_qt5.dll - DESTINATION ${CURRENT_PACKAGES_DIR}/bin - ) - - file(COPY - ${DEBUG_DIR}/debug/qscintilla2_qt5.dll - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin - ) +if(CMAKE_HOST_WIN32) + configure_file(${RELEASE_DIR}/release/qscintilla2_qt5.lib ${CURRENT_PACKAGES_DIR}/lib/qscintilla2.lib COPYONLY) + configure_file(${DEBUG_DIR}/debug/qscintilla2_qt5.lib ${CURRENT_PACKAGES_DIR}/debug/lib/qscintilla2.lib COPYONLY) + + if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + file(COPY ${RELEASE_DIR}/release/qscintilla2_qt5.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + file(COPY ${DEBUG_DIR}/debug/qscintilla2_qt5.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + endif() +elseif(CMAKE_HOST_APPLE) + configure_file(${RELEASE_DIR}/libqscintilla2_qt5.a ${CURRENT_PACKAGES_DIR}/lib/libqscintilla2.a COPYONLY) + configure_file(${DEBUG_DIR}/libqscintilla2_qt5.a ${CURRENT_PACKAGES_DIR}/debug/lib/libqscintilla2.a COPYONLY) endif() + vcpkg_copy_pdbs() # Handle copyright diff --git a/ports/qt5-base/CONTROL b/ports/qt5-base/CONTROL index 4fd30be4c..8d1e6b8f6 100644 --- a/ports/qt5-base/CONTROL +++ b/ports/qt5-base/CONTROL @@ -1,4 +1,4 @@ Source: qt5-base
Version: 5.12.1-3
Description: Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components.
-Build-Depends: zlib, libjpeg-turbo, libpng, freetype, pcre2, harfbuzz (!osx), sqlite3, libpq, double-conversion, openssl
+Build-Depends: zlib, libjpeg-turbo, libpng, freetype, pcre2, harfbuzz, sqlite3, libpq, double-conversion, openssl
diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake index ce2252622..4b8869196 100644 --- a/ports/qt5-base/portfile.cmake +++ b/ports/qt5-base/portfile.cmake @@ -50,6 +50,7 @@ set(CORE_OPTIONS -system-pcre
-system-doubleconversion
-system-sqlite
+ -system-harfbuzz
-no-fontconfig
-nomake examples
-nomake tests
@@ -70,7 +71,6 @@ if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore OPTIONS
${CORE_OPTIONS}
-mp
- -system-harfbuzz
-opengl desktop # other options are "-no-opengl", "-opengl angle", and "-opengl desktop"
OPTIONS_RELEASE
LIBJPEG_LIBS="-ljpeg"
@@ -94,7 +94,6 @@ elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") PLATFORM "linux-g++"
OPTIONS
${CORE_OPTIONS}
- -system-harfbuzz
OPTIONS_RELEASE
"LIBJPEG_LIBS=${CURRENT_INSTALLED_DIR}/lib/libjpeg.a"
"QMAKE_LIBS_PRIVATE+=${CURRENT_INSTALLED_DIR}/lib/libpng16.a"
@@ -121,7 +120,6 @@ configure_qt( PLATFORM "macx-clang"
OPTIONS
${CORE_OPTIONS}
- -no-harfbuzz
OPTIONS_RELEASE
"LIBJPEG_LIBS=${CURRENT_INSTALLED_DIR}/lib/libjpeg.a"
"QMAKE_LIBS_PRIVATE+=${CURRENT_INSTALLED_DIR}/lib/libpng16.a"
@@ -131,6 +129,7 @@ configure_qt( "FREETYPE_LIBS=${CURRENT_INSTALLED_DIR}/lib/libfreetype.a"
"PSQL_LIBS=${CURRENT_INSTALLED_DIR}/lib/libpq.a ${CURRENT_INSTALLED_DIR}/lib/libssl.a ${CURRENT_INSTALLED_DIR}/lib/libcrypto.a -ldl -lpthread"
"SQLITE_LIBS=${CURRENT_INSTALLED_DIR}/lib/libsqlite3.a -ldl -lpthread"
+ "HARFBUZZ_LIBS=${CURRENT_INSTALLED_DIR}/lib/libharfbuzz.a -framework ApplicationServices"
OPTIONS_DEBUG
"LIBJPEG_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libjpeg.a"
"QMAKE_LIBS_PRIVATE+=${CURRENT_INSTALLED_DIR}/debug/lib/libpng16d.a"
@@ -140,6 +139,7 @@ configure_qt( "FREETYPE_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libfreetyped.a"
"PSQL_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libpqd.a ${CURRENT_INSTALLED_DIR}/debug/lib/libssl.a ${CURRENT_INSTALLED_DIR}/debug/lib/libcrypto.a -ldl -lpthread"
"SQLITE_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libsqlite3.a -ldl -lpthread"
+ "HARFBUZZ_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libharfbuzz.a -framework ApplicationServices"
)
endif()
@@ -218,5 +218,7 @@ endforeach() file(COPY ${CMAKE_CURRENT_LIST_DIR}/qtdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/plugins)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/qtdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/debug/plugins)
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/qt5core)
+
file(INSTALL ${SOURCE_PATH}/LICENSE.LGPLv3 DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
#
\ No newline at end of file diff --git a/ports/qt5-base/vcpkg-cmake-wrapper.cmake b/ports/qt5-base/vcpkg-cmake-wrapper.cmake new file mode 100644 index 000000000..64496cec0 --- /dev/null +++ b/ports/qt5-base/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,66 @@ +_find_package(${ARGS})
+
+function(add_qt_library _target)
+ foreach(_lib IN LISTS ARGN)
+ find_library(${_lib}_LIBRARY_DEBUG NAMES ${_lib}d PATH_SUFFIXES plugins/platforms)
+ find_library(${_lib}_LIBRARY_RELEASE NAMES ${_lib} PATH_SUFFIXES plugins/platforms)
+ set_property(TARGET ${_target} APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+ \$<\$<NOT:\$<CONFIG:DEBUG>>:${${_lib}_LIBRARY_RELEASE}>\$<\$<CONFIG:DEBUG>:${${_lib}_LIBRARY_DEBUG}>)
+ endforeach()
+endfunction()
+
+get_target_property(_target_type Qt5::Core TYPE)
+if("${_target_type}" STREQUAL "STATIC_LIBRARY")
+ find_package(ZLIB)
+ find_package(JPEG)
+ find_package(PNG)
+ find_package(Freetype)
+ find_package(sqlite3 CONFIG)
+ find_package(PostgreSQL MODULE REQUIRED)
+ find_package(double-conversion CONFIG)
+ find_package(OpenSSL)
+ find_package(harfbuzz CONFIG)
+
+ set_property(TARGET Qt5::Core APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+ ZLIB::ZLIB JPEG::JPEG PNG::PNG Freetype::Freetype sqlite3 harfbuzz::harfbuzz
+ ${PostgreSQL_LIBRARY} double-conversion::double-conversion OpenSSL::SSL OpenSSL::Crypto
+ )
+
+ add_qt_library(Qt5::Core
+ pcre2-16
+ Qt5ThemeSupport
+ Qt5EventDispatcherSupport
+ Qt5PlatformCompositorSupport
+ Qt5FontDatabaseSupport)
+
+ if(MSVC)
+ set_property(TARGET Qt5::Core APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+ Netapi32.lib Ws2_32.lib Mincore.lib Winmm.lib Iphlpapi.lib Wtsapi32.lib Dwmapi.lib)
+
+ add_qt_library(Qt5::Core Qt5WindowsUIAutomationSupport qwindows qdirect2d)
+
+ elseif(APPLE)
+ set_property(TARGET Qt5::Core APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+ "-weak_framework DiskArbitration" "-weak_framework IOKit" "-weak_framework Foundation" "-weak_framework CoreServices"
+ "-weak_framework AppKit" "-weak_framework Security" "-weak_framework ApplicationServices"
+ "-weak_framework CoreFoundation" "-weak_framework SystemConfiguration"
+ "-weak_framework Carbon"
+ "-weak_framework QuartzCore"
+ "-weak_framework CoreVideo"
+ "-weak_framework Metal"
+ "-weak_framework CoreText"
+ "-weak_framework ApplicationServices"
+ "-weak_framework CoreGraphics"
+ "-weak_framework OpenGL"
+ "-weak_framework AGL"
+ "-weak_framework ImageIO"
+ "z" "m"
+ cups)
+ add_qt_library(Qt5::Core
+ Qt5GraphicsSupport
+ Qt5ClipboardSupport
+ Qt5AccessibilitySupport
+ qcocoa)
+ endif()
+
+endif()
\ No newline at end of file diff --git a/ports/qt5-macextras/CONTROL b/ports/qt5-macextras/CONTROL new file mode 100644 index 000000000..8344c9240 --- /dev/null +++ b/ports/qt5-macextras/CONTROL @@ -0,0 +1,4 @@ +Source: qt5-macextras +Version: 5.12.1 +Description: Qt5 Mac Extras Module. Provides platform-specific APIs for mac. +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5-macextras/portfile.cmake b/ports/qt5-macextras/portfile.cmake new file mode 100644 index 000000000..ed8e2bb5b --- /dev/null +++ b/ports/qt5-macextras/portfile.cmake @@ -0,0 +1,5 @@ +include(vcpkg_common_functions) + +include(${CURRENT_INSTALLED_DIR}/share/qt5modularscripts/qt_modular_library.cmake) + +qt_modular_library(qtmacextras 0d307b85e09fd97f36c5ee333297ceda4c709f6dc995dba4e8b8c1a85bd95c83ed80ee641e13e05fe3b965060c7847ba1835b7e6d9099a03c8bf9f2c4bae1ded) diff --git a/ports/qt5-modularscripts/CONTROL b/ports/qt5-modularscripts/CONTROL index eedb58432..f8e6f4894 100644 --- a/ports/qt5-modularscripts/CONTROL +++ b/ports/qt5-modularscripts/CONTROL @@ -1,3 +1,3 @@ Source: qt5-modularscripts -Version: 2019-02-02 +Version: 2019-03-21 Description: Vcpkg helpers to package qt5 modules diff --git a/ports/qt5-modularscripts/qt_modular_library.cmake b/ports/qt5-modularscripts/qt_modular_library.cmake index fc3ebdef0..9f6d23fa1 100644 --- a/ports/qt5-modularscripts/qt_modular_library.cmake +++ b/ports/qt5-modularscripts/qt_modular_library.cmake @@ -1,6 +1,6 @@ set(_qt5base_port_dir "${CMAKE_CURRENT_LIST_DIR}") -function(qt_modular_library NAME HASH) +function(qt_modular_fetch_library NAME HASH TARGET_SOURCE_PATH) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) if(BUILDTREES_PATH_LENGTH GREATER 45) message(WARNING "Qt5's buildsystem uses very long paths and may fail on your system.\n" @@ -23,6 +23,10 @@ function(qt_modular_library NAME HASH) REF ${FULL_VERSION} ) + set(${TARGET_SOURCE_PATH} ${SOURCE_PATH} PARENT_SCOPE) +endfunction() + +function(qt_modular_build_library SOURCE_PATH) # This fixes issues on machines with default codepages that are not ASCII compatible, such as some CJK encodings set(ENV{_CL_} "/utf-8") @@ -139,5 +143,9 @@ function(qt_modular_library NAME HASH) set(LICENSE_PATH "${SOURCE_PATH}/LICENSE.GPL3-EXCEPT") endif() file(INSTALL ${LICENSE_PATH} DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +endfunction() +function(qt_modular_library NAME HASH) + qt_modular_fetch_library(${NAME} ${HASH} TARGET_SOURCE_PATH) + qt_modular_build_library(${TARGET_SOURCE_PATH}) endfunction() diff --git a/ports/qt5-mqtt/CONTROL b/ports/qt5-mqtt/CONTROL new file mode 100644 index 000000000..0b99078fb --- /dev/null +++ b/ports/qt5-mqtt/CONTROL @@ -0,0 +1,5 @@ +Source: qt5-mqtt
+Version: 5.12.1
+Description: Qt5 MQTT module.
+Build-Depends: qt5-modularscripts, qt5-base
+
diff --git a/ports/qt5-mqtt/portfile.cmake b/ports/qt5-mqtt/portfile.cmake new file mode 100644 index 000000000..8c797abb0 --- /dev/null +++ b/ports/qt5-mqtt/portfile.cmake @@ -0,0 +1,21 @@ +include(vcpkg_common_functions)
+
+include(${CURRENT_INSTALLED_DIR}/share/qt5modularscripts/qt_modular_library.cmake)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO qt/qtmqtt
+ REF v5.12.1
+ SHA512 c6f4000a032caaf5224ca6fe2442f22eddc26e3e53cc101885c717b706156cada716e45ff92d267928b87e1e5ceae5e81694f4b7c289d9836e75f27fd012de42
+ HEAD_REF dev
+)
+
+# Qt module builds from a git repository require a .git entry to invoke syncqt
+file(WRITE "${SOURCE_PATH}/.git" "repocontent")
+
+# syncqt is a PERL script
+vcpkg_find_acquire_program(PERL)
+get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY)
+set(ENV{PATH} "${PERL_EXE_PATH};$ENV{PATH}")
+
+qt_modular_build_library(${SOURCE_PATH})
diff --git a/ports/qt5-purchasing/CONTROL b/ports/qt5-purchasing/CONTROL index 35d617b68..0c2df22e9 100644 --- a/ports/qt5-purchasing/CONTROL +++ b/ports/qt5-purchasing/CONTROL @@ -1,4 +1,4 @@ Source: qt5-purchasing
Version: 5.12.1
Description: Qt5 Purchasing Module - Enables in-app purchase of products in Qt applications.
-Build-Depends: qt5-modularscripts, qt5-base
+Build-Depends: qt5-modularscripts, qt5-base, qt5-declarative
diff --git a/ports/qt5/CONTROL b/ports/qt5/CONTROL index 6b4b9129b..fe0698293 100644 --- a/ports/qt5/CONTROL +++ b/ports/qt5/CONTROL @@ -1,4 +1,4 @@ Source: qt5 -Version: 5.12.1-1 +Version: 5.12.1-2 Description: Qt5 Application Framework -Build-Depends: qt5-3d, qt5-activeqt, qt5-base, qt5-charts, qt5-datavis3d, qt5-declarative, qt5-gamepad, qt5-graphicaleffects, qt5-imageformats, qt5-location, qt5-multimedia, qt5-networkauth, qt5-purchasing, qt5-quickcontrols, qt5-quickcontrols2, qt5-script, qt5-scxml, qt5-sensors, qt5-serialport, qt5-speech, qt5-svg, qt5-tools, qt5-virtualkeyboard, qt5-webchannel, qt5-websockets, qt5-winextras, qt5-xmlpatterns +Build-Depends: qt5-3d, qt5-activeqt, qt5-base, qt5-charts, qt5-datavis3d, qt5-declarative, qt5-gamepad, qt5-graphicaleffects, qt5-imageformats, qt5-location, qt5-multimedia, qt5-mqtt, qt5-networkauth, qt5-purchasing, qt5-quickcontrols, qt5-quickcontrols2, qt5-script, qt5-scxml, qt5-sensors, qt5-serialport, qt5-speech, qt5-svg, qt5-tools, qt5-virtualkeyboard, qt5-webchannel, qt5-websockets, qt5-winextras (windows), qt5-macextras (osx), qt5-xmlpatterns diff --git a/ports/rttr/CONTROL b/ports/rttr/CONTROL index 50aa21724..cb4eb9557 100644 --- a/ports/rttr/CONTROL +++ b/ports/rttr/CONTROL @@ -1,3 +1,3 @@ Source: rttr -Version: 0.9.5-3 +Version: 0.9.6-0 Description: an easy and intuitive way to use reflection in C++ diff --git a/ports/rttr/disable-unit-tests.patch b/ports/rttr/disable-unit-tests.patch deleted file mode 100644 index b27f01661..000000000 --- a/ports/rttr/disable-unit-tests.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index b9fd698..bcaebfe 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -31,7 +31,9 @@ - ############################################# - - add_subdirectory (rttr) -+if(UNIT_TESTS) - add_subdirectory (unit_tests) -+endif() - - if (${BUILD_BENCHMARKS}) - add_subdirectory (benchmarks) diff --git a/ports/rttr/fix-directory-output.patch b/ports/rttr/fix-directory-output.patch index b83fc455c..8fd8ed0c7 100644 --- a/ports/rttr/fix-directory-output.patch +++ b/ports/rttr/fix-directory-output.patch @@ -1,10 +1,13 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index d64ee41..e33e7bf 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -76,4 +76,4 @@ add_subdirectory(src) - add_subdirectory(doc) +diff --git a/CMake/config.cmake b/CMake/config.cmake +index a718199..eab64c2 100644 +--- a/CMake/config.cmake ++++ b/CMake/config.cmake +@@ -47,7 +47,7 @@ set(CMAKE_EXECUTABLE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin") # here we specify the installation directory --set(CMAKE_INSTALL_PREFIX ${RTTR_INSTALL_DIR} CACHE PATH "RTTR install prefix" FORCE) -+set(CMAKE_INSTALL_PREFIX ${RTTR_INSTALL_DIR} CACHE PATH "RTTR install prefix") + if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) +- set(CMAKE_INSTALL_PREFIX "${PROJECT_BINARY_DIR}/install" CACHE PATH "RTTR install prefix" FORCE) ++ #set(CMAKE_INSTALL_PREFIX "${PROJECT_BINARY_DIR}/install" CACHE PATH "RTTR install prefix") + endif() + + # in order to group in visual studio the targets into solution filters diff --git a/ports/rttr/portfile.cmake b/ports/rttr/portfile.cmake index 8ce171cc6..ceef04449 100644 --- a/ports/rttr/portfile.cmake +++ b/ports/rttr/portfile.cmake @@ -10,12 +10,11 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO rttrorg/rttr - REF v0.9.5 - SHA512 b451f24fd4bdc4b7d9ecabdb6fd261744852e68357ec36573109354a25f2bf494908b9d4174602b59dd5005c42ba8edc3b35ec1d1386384db421805ac9994608 + REF v0.9.6 + SHA512 5c94f037b319568d351ee6d25f1404adce00b40598dce4a331789d5357c059e50aae3894f90e60d37307b7e96f4672ae09d3798bbe47f796ef2044f1ac6f9e50 HEAD_REF master PATCHES fix-directory-output.patch - disable-unit-tests.patch remove-owner-read-perms.patch ) @@ -24,11 +23,18 @@ vcpkg_configure_cmake( PREFER_NINJA OPTIONS -DBUILD_BENCHMARKS=OFF + -DBUILD_UNIT_TESTS=OFF ) vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) +if(UNIX) + vcpkg_fixup_cmake_targets(CONFIG_PATH share/rttr/cmake) +elseif(WIN32) + vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) +else() + message(FATAL_ERROR "RTTR does not support this platform") +endif() #Handle copyright file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/rttr) diff --git a/ports/rttr/remove-owner-read-perms.patch b/ports/rttr/remove-owner-read-perms.patch index 918de14cc..3fc98422d 100644 --- a/ports/rttr/remove-owner-read-perms.patch +++ b/ports/rttr/remove-owner-read-perms.patch @@ -1,41 +1,44 @@ -diff --git a/CMake/config.cmake b/CMake/config.cmake
-index 1d753b3..393e3d0 100644
---- a/CMake/config.cmake
-+++ b/CMake/config.cmake
-@@ -131,4 +131,4 @@ install(
-
- install(FILES "${LICENSE_FILE}" "${README_FILE}"
- DESTINATION "."
-- PERMISSIONS OWNER_READ)
-+ )
-diff --git a/CMake/utility.cmake b/CMake/utility.cmake
-index 9dbc172..c37671e 100644
---- a/CMake/utility.cmake
-+++ b/CMake/utility.cmake
-@@ -165,7 +165,7 @@ function(loadFolder FOLDER _HEADER_FILES _SOURCE_FILES)
- # we don't want to install header files which are marked as private
- if (${shouldInstall})
- if (NOT ${FULL_HEADER_PATH} MATCHES ".*_p.h$")
-- install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}" PERMISSIONS OWNER_READ)
-+ install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}")
- endif()
- endif()
- endforeach()
-diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
-index ec10eaf..454c41e 100644
---- a/doc/CMakeLists.txt
-+++ b/doc/CMakeLists.txt
-@@ -127,11 +127,11 @@ add_custom_target(doc ALL
- install(DIRECTORY "${DOXYGEN_OUTPUT_DIRECTORY}/${DOXYGEN_CUSTOM_HTML_DIR}"
- DESTINATION "${DOXYGEN_DOC_INSTALL_DIR}"
- PATTERN "*.*"
-- PERMISSIONS OWNER_READ)
-+ )
-
- install(FILES "${DOXYGEN_OUTPUT_DIRECTORY}/${DOXYGEN_INDEX_FILE}"
- DESTINATION "${DOXYGEN_DOC_INSTALL_DIR}"
-- PERMISSIONS OWNER_READ)
-+ )
-
- #########################################################################################
-
+diff --git a/CMake/config.cmake b/CMake/config.cmake +index 4483900..dfef016 100644 +--- a/CMake/config.cmake ++++ b/CMake/config.cmake +@@ -171,6 +171,5 @@ if (BUILD_INSTALLER) + COMPONENT Devel) + + install(FILES "${LICENSE_FILE}" "${README_FILE}" +- DESTINATION ${RTTR_ADDITIONAL_FILES_INSTALL_DIR} +- PERMISSIONS OWNER_READ) ++ DESTINATION ${RTTR_ADDITIONAL_FILES_INSTALL_DIR}) + endif() +diff --git a/CMake/utility.cmake b/CMake/utility.cmake +index 7e1f677..a3932ae 100644 +--- a/CMake/utility.cmake ++++ b/CMake/utility.cmake +@@ -165,7 +165,7 @@ function(loadFolder FOLDER _HEADER_FILES _SOURCE_FILES) + getNameOfDir(CMAKE_CURRENT_SOURCE_DIR DIRNAME) + if (${shouldInstall}) + if (NOT ${FULL_HEADER_PATH} MATCHES ".*_p.h$") # we don't want to install header files which are marked as private +- install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}" PERMISSIONS OWNER_READ) ++ install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}") + endif() + endif() + endforeach() +diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt +index bacb280..a92d642 100644 +--- a/doc/CMakeLists.txt ++++ b/doc/CMakeLists.txt +@@ -132,12 +132,10 @@ set_target_properties(doc PROPERTIES FOLDER "Documentation") + + install(DIRECTORY "${DOXYGEN_OUTPUT_DIRECTORY}/${DOXYGEN_CUSTOM_HTML_DIR}" + DESTINATION "${DOXYGEN_DOC_INSTALL_DIR}" +- PATTERN "*.*" +- PERMISSIONS OWNER_READ) ++ PATTERN "*.*") + + install(FILES "${DOXYGEN_OUTPUT_DIRECTORY}/${DOXYGEN_INDEX_FILE}" +- DESTINATION "${DOXYGEN_DOC_INSTALL_DIR}" +- PERMISSIONS OWNER_READ) ++ DESTINATION "${DOXYGEN_DOC_INSTALL_DIR}") + + ######################################################################################### + diff --git a/ports/sdl1/CONTROL b/ports/sdl1/CONTROL index 483813f51..9d9e856f6 100644 --- a/ports/sdl1/CONTROL +++ b/ports/sdl1/CONTROL @@ -1,3 +1,3 @@ Source: sdl1 -Version: 1.2.15-3 +Version: 1.2.15-4 Description: Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. diff --git a/ports/sdl1/portfile.cmake b/ports/sdl1/portfile.cmake index de2d855e6..c3e580fbb 100644 --- a/ports/sdl1/portfile.cmake +++ b/ports/sdl1/portfile.cmake @@ -1,7 +1,5 @@ include(vcpkg_common_functions) -vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY ONLY_DYNAMIC_CRT) - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO SDL-Mirror/SDL @@ -17,6 +15,14 @@ file(COPY ${CMAKE_CURRENT_LIST_DIR}/SDLmain.vcxproj DESTINATION ${SOURCE_PATH}/V configure_file(${SOURCE_PATH}/include/SDL_config.h.default ${SOURCE_PATH}/include/SDL_config.h COPYONLY) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/static-build.patch + ) +endif() + # This text file gets copied as a library, and included as one in the package file(REMOVE_RECURSE ${SOURCE_PATH}/src/hermes/COPYING.LIB) diff --git a/ports/sdl1/static-build.patch b/ports/sdl1/static-build.patch new file mode 100644 index 000000000..89bc39ddc --- /dev/null +++ b/ports/sdl1/static-build.patch @@ -0,0 +1,74 @@ +--- a/VisualC/SDL/SDL.vcxproj Sun Mar 31 11:28:40 2019
++++ b/VisualC/SDL/SDL.vcxproj Sun Mar 31 19:00:00 2019
+@@ -26,3 +26,3 @@
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+- <ConfigurationType>DynamicLibrary</ConfigurationType>
++ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v141</PlatformToolset>
+@@ -31,3 +31,3 @@
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+- <ConfigurationType>DynamicLibrary</ConfigurationType>
++ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v141</PlatformToolset>
+@@ -36,3 +36,3 @@
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+- <ConfigurationType>DynamicLibrary</ConfigurationType>
++ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v141</PlatformToolset>
+@@ -41,3 +41,3 @@
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+- <ConfigurationType>DynamicLibrary</ConfigurationType>
++ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v141</PlatformToolset>
+@@ -100,3 +100,3 @@
+ <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_DEBUG;_WINDOWS;_WIN32_WINNT=0x0400;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
++ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+@@ -137,3 +137,3 @@
+ <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_DEBUG;_WINDOWS;_WIN32_WINNT=0x0400;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
++ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+@@ -176,3 +176,3 @@
+ <StringPooling>true</StringPooling>
+- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+@@ -213,3 +213,3 @@
+ <StringPooling>true</StringPooling>
+- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+--- a/VisualC/SDLmain/SDLmain.vcxproj Sun Mar 31 11:28:40 2019
++++ b/VisualC/SDLmain/SDLmain.vcxproj Sun Mar 31 19:00:00 2019
+@@ -123,3 +123,3 @@
+ <StringPooling>true</StringPooling>
+- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+@@ -140,3 +140,3 @@
+ <StringPooling>true</StringPooling>
+- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+@@ -154,3 +154,3 @@
+ <StringPooling>true</StringPooling>
+- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+@@ -171,3 +171,3 @@
+ <StringPooling>true</StringPooling>
+- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+@@ -184,3 +184,3 @@
+ <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
++ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <PrecompiledHeader />
+@@ -200,3 +200,3 @@
+ <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
++ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <PrecompiledHeader />
diff --git a/ports/sdl2-image/CMakeLists.txt b/ports/sdl2-image/CMakeLists.txt index 6f9a843ac..1c1d27ce8 100644 --- a/ports/sdl2-image/CMakeLists.txt +++ b/ports/sdl2-image/CMakeLists.txt @@ -48,6 +48,15 @@ add_library(SDL2_image version.rc ) +if (APPLE) + target_sources(SDL2_image PRIVATE + IMG_ImageIO.m + ) + target_compile_options(SDL2_image BEFORE PRIVATE + "-x" "objective-c" + ) +endif() + set_target_properties(SDL2_image PROPERTIES DEFINE_SYMBOL SDL2_EXPORTS) foreach(FORMAT ${SUPPORTED_FORMATS}) @@ -94,12 +103,19 @@ endif() install(TARGETS SDL2_image + EXPORT SDL2_image RUNTIME DESTINATION bin ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) install(FILES SDL_image.h DESTINATION include/SDL2 CONFIGURATIONS Release) +install(EXPORT SDL2_image + DESTINATION share/sdl2-image/ + FILE sdl2-image-config.cmake + NAMESPACE SDL2:: +) + message(STATUS "Link-time dependencies:") message(STATUS " " ${SDL_LIBRARY}) diff --git a/ports/sdl2-image/CONTROL b/ports/sdl2-image/CONTROL index 93edd3909..189470e6d 100644 --- a/ports/sdl2-image/CONTROL +++ b/ports/sdl2-image/CONTROL @@ -1,5 +1,5 @@ Source: sdl2-image -Version: 2.0.4 +Version: 2.0.4-1 Build-Depends: sdl2, libpng Description: SDL_image is an image file loading library. It loads images as SDL surfaces and textures, and supports the following formats: BMP, GIF, JPEG, LBM, PCX, PNG, PNM, TGA, TIFF, WEBP, XCF, XPM, XV diff --git a/ports/sdl2-image/portfile.cmake b/ports/sdl2-image/portfile.cmake index 5262bdc50..4d02e93f4 100644 --- a/ports/sdl2-image/portfile.cmake +++ b/ports/sdl2-image/portfile.cmake @@ -44,6 +44,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH "share/sdl2-image") +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + # Handle copyright file(COPY ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2-image) file(RENAME ${CURRENT_PACKAGES_DIR}/share/sdl2-image/COPYING.txt ${CURRENT_PACKAGES_DIR}/share/sdl2-image/copyright) diff --git a/ports/sdl2-mixer/CMakeLists.txt b/ports/sdl2-mixer/CMakeLists.txt index c8934abd3..b38847fbb 100644 --- a/ports/sdl2-mixer/CMakeLists.txt +++ b/ports/sdl2-mixer/CMakeLists.txt @@ -78,18 +78,25 @@ add_library(SDL2_mixer if(WIN32) list(APPEND SDL_MIXER_DEFINES MUSIC_MID_NATIVE) target_sources(SDL2_mixer PRIVATE music_nativemidi.c native_midi/native_midi_common.c native_midi/native_midi_win32.c) + target_link_libraries(SDL2_mixer ${SDL_MIXER_LIBRARIES} Winmm) endif() set_target_properties(SDL2_mixer PROPERTIES DEFINE_SYMBOL SDL2_EXPORTS) target_compile_definitions(SDL2_mixer PRIVATE ${SDL_MIXER_DEFINES}) target_include_directories(SDL2_mixer PRIVATE ${SDL_MIXER_INCLUDES} ./native_midi) -target_link_libraries(SDL2_mixer ${SDL_MIXER_LIBRARIES} Winmm) install(TARGETS SDL2_mixer + EXPORT SDL2_mixer RUNTIME DESTINATION bin ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +install(EXPORT SDL2_mixer + DESTINATION share/sdl2-mixer/ + FILE sdl2-mixer-config.cmake + NAMESPACE SDL2:: +) + if(NOT SDL_MIXER_SKIP_HEADERS) install(FILES SDL_mixer.h DESTINATION include/SDL2) endif() diff --git a/ports/sdl2-mixer/CONTROL b/ports/sdl2-mixer/CONTROL index 5e209401d..206e922a6 100644 --- a/ports/sdl2-mixer/CONTROL +++ b/ports/sdl2-mixer/CONTROL @@ -1,5 +1,5 @@ Source: sdl2-mixer -Version: 2.0.4 +Version: 2.0.4-1 Description: Multi-channel audio mixer library for SDL. Build-Depends: sdl2 diff --git a/ports/sdl2-mixer/portfile.cmake b/ports/sdl2-mixer/portfile.cmake index cfc76055f..0b1b6dcea 100644 --- a/ports/sdl2-mixer/portfile.cmake +++ b/ports/sdl2-mixer/portfile.cmake @@ -54,5 +54,8 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets(CONFIG_PATH "share/sdl2-mixer") +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + file(COPY ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2-mixer) file(RENAME ${CURRENT_PACKAGES_DIR}/share/sdl2-mixer/COPYING.txt ${CURRENT_PACKAGES_DIR}/share/sdl2-mixer/copyright) diff --git a/ports/sdl2-net/CMakeLists.txt b/ports/sdl2-net/CMakeLists.txt index 5ee86e9bd..bb697bb46 100644 --- a/ports/sdl2-net/CMakeLists.txt +++ b/ports/sdl2-net/CMakeLists.txt @@ -13,13 +13,23 @@ add_library(SDL2_net SDLnet.c SDLnetselect.c SDLnetTCP.c SDLnetUDP.c version.rc) set_target_properties(SDL2_net PROPERTIES DEFINE_SYMBOL SDL2_EXPORTS) target_compile_definitions(SDL2_net PRIVATE _WINSOCK_DEPRECATED_NO_WARNINGS) target_include_directories(SDL2_net PRIVATE ${SDL_INCLUDE_DIR}/SDL2) -target_link_libraries(SDL2_net ${SDL_LIBRARY} ws2_32 iphlpapi) + +if (WIN32) + target_link_libraries(SDL2_net ${SDL_LIBRARY} ws2_32 iphlpapi) +endif() install(TARGETS SDL2_net + EXPORT SDL2_net RUNTIME DESTINATION bin ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +install(EXPORT SDL2_net + DESTINATION "share/sdl2-net" + FILE sdl2-net-config.cmake + NAMESPACE SDL2:: +) + if(NOT DEFINED SDL_NET_SKIP_HEADERS) install(FILES SDL_net.h DESTINATION include/SDL2) endif() diff --git a/ports/sdl2-net/CONTROL b/ports/sdl2-net/CONTROL index ff239d5a4..56ee980be 100644 --- a/ports/sdl2-net/CONTROL +++ b/ports/sdl2-net/CONTROL @@ -1,4 +1,4 @@ Source: sdl2-net -Version: 2.0.1-4 +Version: 2.0.1-5 Description: Networking library for SDL Build-Depends: sdl2 diff --git a/ports/sdl2-net/portfile.cmake b/ports/sdl2-net/portfile.cmake index 11d626f0d..2a8928e16 100644 --- a/ports/sdl2-net/portfile.cmake +++ b/ports/sdl2-net/portfile.cmake @@ -18,5 +18,8 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets(CONFIG_PATH "share/sdl2-net") +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + file(COPY ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2-net) file(RENAME ${CURRENT_PACKAGES_DIR}/share/sdl2-net/COPYING.txt ${CURRENT_PACKAGES_DIR}/share/sdl2-net/copyright) diff --git a/ports/sdl2-ttf/CMakeLists.txt b/ports/sdl2-ttf/CMakeLists.txt index 2954a1e20..94e14e391 100644 --- a/ports/sdl2-ttf/CMakeLists.txt +++ b/ports/sdl2-ttf/CMakeLists.txt @@ -8,18 +8,25 @@ find_package(Freetype REQUIRED) add_library(SDL2_ttf SDL_ttf.c version.rc) set_target_properties(SDL2_ttf PROPERTIES DEFINE_SYMBOL SDL2_EXPORTS) -target_include_directories(SDL2_ttf PRIVATE ${SDL_INCLUDE_DIR}/SDL2 ${FREETYPE_INCLUDE_DIR_ft2build}) -target_link_libraries(SDL2_ttf ${SDL_LIBRARY} ${FREETYPE_LIBRARY}) +target_include_directories(SDL2_ttf PRIVATE ${SDL_INCLUDE_DIR}/SDL2 ${FREETYPE_INCLUDE_DIRS}) +target_link_libraries(SDL2_ttf ${SDL_LIBRARY} ${FREETYPE_LIBRARIES}) install(TARGETS SDL2_ttf + EXPORT SDL2_ttf RUNTIME DESTINATION bin ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +INSTALL(EXPORT SDL2_ttf + DESTINATION "share/sdl2-ttf" + FILE sdl2-ttf-config.cmake + NAMESPACE SDL2:: +) + if(NOT DEFINED SDL_TTF_SKIP_HEADERS) install(FILES SDL_ttf.h DESTINATION include/SDL2) endif() message(STATUS "Link-time dependencies:") message(STATUS " " ${SDL_LIBRARY}) -message(STATUS " " ${FREETYPE_LIBRARY}) +message(STATUS " " ${FREETYPE_LIBRARIES}) diff --git a/ports/sdl2-ttf/CONTROL b/ports/sdl2-ttf/CONTROL index 78207393e..d2c77ea42 100644 --- a/ports/sdl2-ttf/CONTROL +++ b/ports/sdl2-ttf/CONTROL @@ -1,4 +1,4 @@ Source: sdl2-ttf -Version: 2.0.15 +Version: 2.0.15-1 Description: A library for rendering TrueType fonts with SDL Build-Depends: sdl2, freetype diff --git a/ports/sdl2-ttf/portfile.cmake b/ports/sdl2-ttf/portfile.cmake index 2efd91116..55451dcf1 100644 --- a/ports/sdl2-ttf/portfile.cmake +++ b/ports/sdl2-ttf/portfile.cmake @@ -25,5 +25,8 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets(CONFIG_PATH "share/sdl2-ttf") +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + file(COPY ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2-ttf) file(RENAME ${CURRENT_PACKAGES_DIR}/share/sdl2-ttf/COPYING.txt ${CURRENT_PACKAGES_DIR}/share/sdl2-ttf/copyright) diff --git a/ports/sdl2/CONTROL b/ports/sdl2/CONTROL index 05e9d6363..1bd6ec930 100644 --- a/ports/sdl2/CONTROL +++ b/ports/sdl2/CONTROL @@ -1,5 +1,5 @@ Source: sdl2 -Version: 2.0.9-1 +Version: 2.0.9-2 Description: Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. Feature: vulkan diff --git a/ports/sdl2/SDL-2.0.9-bug-4391-fix.patch b/ports/sdl2/SDL-2.0.9-bug-4391-fix.patch new file mode 100644 index 000000000..f8fc64bda --- /dev/null +++ b/ports/sdl2/SDL-2.0.9-bug-4391-fix.patch @@ -0,0 +1,75 @@ +# HG changeset patch +# User Sam Lantinga <slouken@libsdl.org> +# Date 1542691020 28800 +# Node ID 9091b20040cf04cdc348d290ca22373b36364c39 +# Parent 144400e4630d885d2eb0761b7174433b4c0d90bb +Fixed bug 4391 - hid_enumerate() sometimes causes game to freeze for a few seconds + +Daniel Gibson + +Even though my game (dhewm3) doesn't use SDL_INIT_JOYSTICK, SDL_PumpEvent() calls SDL_JoystickUpdate() which ends up calling hid_enumerate() every three seconds, and sometimes on my Win7 box hid_enumerate() takes about 5 seconds, which causes the whole game to freeze for that time. + +diff -r 144400e4630d -r 9091b20040cf include/SDL_bits.h +--- a/include/SDL_bits.h Sun Nov 18 19:28:20 2018 +0300 ++++ b/include/SDL_bits.h Mon Nov 19 21:17:00 2018 -0800 +@@ -101,6 +101,15 @@ + #endif + } + ++SDL_FORCE_INLINE SDL_bool ++SDL_HasExactlyOneBitSet32(Uint32 x) ++{ ++ if (x && !(x & (x - 1))) { ++ return SDL_TRUE; ++ } ++ return SDL_FALSE; ++} ++ + /* Ends C function definitions when using C++ */ + #ifdef __cplusplus + } +diff -r 144400e4630d -r 9091b20040cf src/SDL.c +--- a/src/SDL.c Sun Nov 18 19:28:20 2018 +0300 ++++ b/src/SDL.c Mon Nov 19 21:17:00 2018 -0800 +@@ -348,6 +348,12 @@ + int num_subsystems = SDL_arraysize(SDL_SubsystemRefCount); + Uint32 initialized = 0; + ++ /* Fast path for checking one flag */ ++ if (SDL_HasExactlyOneBitSet32(flags)) { ++ int subsystem_index = SDL_MostSignificantBitIndex32(flags); ++ return SDL_SubsystemRefCount[subsystem_index] ? flags : 0; ++ } ++ + if (!flags) { + flags = SDL_INIT_EVERYTHING; + } +diff -r 144400e4630d -r 9091b20040cf src/joystick/SDL_joystick.c +--- a/src/joystick/SDL_joystick.c Sun Nov 18 19:28:20 2018 +0300 ++++ b/src/joystick/SDL_joystick.c Mon Nov 19 21:17:00 2018 -0800 +@@ -1016,6 +1016,10 @@ + int i; + SDL_Joystick *joystick; + ++ if (!SDL_WasInit(SDL_INIT_JOYSTICK)) { ++ return; ++ } ++ + SDL_LockJoysticks(); + + if (SDL_updating_joystick) { +diff -r 144400e4630d -r 9091b20040cf src/sensor/SDL_sensor.c +--- a/src/sensor/SDL_sensor.c Sun Nov 18 19:28:20 2018 +0300 ++++ b/src/sensor/SDL_sensor.c Mon Nov 19 21:17:00 2018 -0800 +@@ -505,6 +505,10 @@ + int i; + SDL_Sensor *sensor; + ++ if (!SDL_WasInit(SDL_INIT_SENSOR)) { ++ return; ++ } ++ + SDL_LockSensors(); + + if (SDL_updating_sensor) { + diff --git a/ports/sdl2/portfile.cmake b/ports/sdl2/portfile.cmake index 294d37449..468560575 100644 --- a/ports/sdl2/portfile.cmake +++ b/ports/sdl2/portfile.cmake @@ -10,6 +10,7 @@ vcpkg_from_github( export-symbols-only-in-shared-build.patch fix-x86-windows.patch enable-winrt-cmake.patch + SDL-2.0.9-bug-4391-fix.patch # See: https://bugzilla.libsdl.org/show_bug.cgi?id=4391 # Can be removed once SDL 2.0.10 is released ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" SDL_STATIC) diff --git a/ports/sf2cute/CONTROL b/ports/sf2cute/CONTROL new file mode 100644 index 000000000..7d850c694 --- /dev/null +++ b/ports/sf2cute/CONTROL @@ -0,0 +1,6 @@ +Source: sf2cute
+Version: 0.2.0
+Description: C++14 Library for SoundFont 2
+
+Feature: example
+Description: Installs an example application
\ No newline at end of file diff --git a/ports/sf2cute/portfile.cmake b/ports/sf2cute/portfile.cmake new file mode 100644 index 000000000..5a99ca11b --- /dev/null +++ b/ports/sf2cute/portfile.cmake @@ -0,0 +1,43 @@ +include(vcpkg_common_functions)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO gocha/sf2cute
+ REF v0.2
+ HEAD_REF master
+ SHA512 721762556c392a134500fa110ec849a60d1285a57e4e8d9cacb6281bed02f5658a14694efcccb8248719558b45db89da5ad53c56990bb9c263a9760fe0d99b8f
+)
+
+set(BUILD_EXAMPLE OFF)
+
+if("example" IN_LIST FEATURES)
+ set(BUILD_EXAMPLE ON)
+endif()
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS_DEBUG
+ -DSF2CUTE_EXAMPLES_INSTALL_DIR=tools/sf2cute
+ OPTIONS_RELEASE
+ -DSF2CUTE_INSTALL_EXAMPLES=${BUILD_EXAMPLE}
+ -DSF2CUTE_EXAMPLES_INSTALL_DIR=${CURRENT_PACKAGES_DIR}/tools/sf2cute
+)
+
+vcpkg_install_cmake()
+vcpkg_copy_pdbs()
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+
+# move the .cmake files from the given directory to the expected directory by vcpkg
+vcpkg_fixup_cmake_targets(CONFIG_PATH share/sf2cute)
+
+# Handle copyright
+file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/sf2cute RENAME copyright)
+
+if(BUILD_EXAMPLE)
+ vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/sf2cute)
+endif()
+
+# Post-build test for cmake libraries
+vcpkg_test_cmake(PACKAGE_NAME sf2cute)
diff --git a/ports/signalrclient/0002_fix-compile-error.patch b/ports/signalrclient/0002_fix-compile-error.patch new file mode 100644 index 000000000..bcda3646b --- /dev/null +++ b/ports/signalrclient/0002_fix-compile-error.patch @@ -0,0 +1,34 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 91c2300..2439fec 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,6 +5,8 @@ if(NOT WIN32)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fPIC -L -lcpprest")
+ endif()
+
++find_package(OpenSSL REQUIRED)
++
+ set(CPPREST_INCLUDE_DIR "" CACHE FILEPATH "Path to casablanca include dir")
+
+ include_directories (
+@@ -22,6 +24,7 @@ if(NOT DISABLE_TESTS)
+ add_subdirectory(test)
+ endif()
+
++
+ if(BUILD_SHARED_LIBS)
+ install(FILES include/signalrclient/_exports.h DESTINATION include/signalrclient)
+ else()
+diff --git a/src/signalrclient/CMakeLists.txt b/src/signalrclient/CMakeLists.txt
+index db141eb..c4306d8 100644
+--- a/src/signalrclient/CMakeLists.txt
++++ b/src/signalrclient/CMakeLists.txt
+@@ -32,7 +32,7 @@ add_definitions(-DUNICODE -D_UNICODE)
+
+ add_library (signalrclient ${SOURCES})
+
+-target_link_libraries(signalrclient ${CPPREST_SO})
++target_link_libraries(signalrclient ${CPPREST_SO} OpenSSL::SSL OpenSSL::Crypto)
+
+ install(
+ TARGETS signalrclient
diff --git a/ports/signalrclient/CONTROL b/ports/signalrclient/CONTROL index 0b53a8fb2..c7bb1ea4a 100644 --- a/ports/signalrclient/CONTROL +++ b/ports/signalrclient/CONTROL @@ -1,4 +1,4 @@ Source: signalrclient -Version: 1.0.0-beta1-4 -Build-Depends: cpprestsdk +Version: 1.0.0-beta1-5 +Build-Depends: cpprestsdk, openssl Description: C++ client for SignalR. diff --git a/ports/signalrclient/portfile.cmake b/ports/signalrclient/portfile.cmake index c1dc9b508..e3b6e7c4d 100644 --- a/ports/signalrclient/portfile.cmake +++ b/ports/signalrclient/portfile.cmake @@ -7,13 +7,14 @@ vcpkg_from_github( SHA512 b38f6f946f1499080071949cbcf574405118f9acfb469441e5b5b0df3e5f0d277a83b30e0d613dc5e54732b9071e3273dac1ee65129f994d5a60eef0e45bdf6c HEAD_REF master PATCHES - ${CMAKE_CURRENT_LIST_DIR}/0001_cmake.patch + 0001_cmake.patch + 0002_fix-compile-error.patch ) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} OPTIONS_DEBUG - -DCPPREST_SO=${CURRENT_INSTALLED_DIR}/debug/lib/cpprest_2_10.lib + -DCPPREST_SO=${CURRENT_INSTALLED_DIR}/debug/lib/cpprest_2_10d.lib OPTIONS_RELEASE -DCPPREST_SO=${CURRENT_INSTALLED_DIR}/lib/cpprest_2_10.lib OPTIONS diff --git a/ports/tbb/CONTROL b/ports/tbb/CONTROL index 22956077e..496c8c20f 100644 --- a/ports/tbb/CONTROL +++ b/ports/tbb/CONTROL @@ -1,3 +1,3 @@ Source: tbb -Version: 2019_U3-1 +Version: 2019_U4 Description: Intel's Threading Building Blocks. diff --git a/ports/tbb/portfile.cmake b/ports/tbb/portfile.cmake index 14d70deb5..3050a38a9 100644 --- a/ports/tbb/portfile.cmake +++ b/ports/tbb/portfile.cmake @@ -10,9 +10,9 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO 01org/tbb - REF 2019_U3 - SHA512 b6eaaea95658c4d49e6894811eb9ca38541820462bf1b606db16ca697af4329a94627d8ae01a73f2b07567280865b3ea92ca0ce091fa95dd3551cebbdd35976d - HEAD_REF tbb_2018 + REF 2019_U4 + SHA512 f8ba92663c822e36f68f2b1837aa66d4fc285abe8c0c9b501f6cc31d3186d39b193588e49988e488beb9d400a1c3aa3fe72580f428e7ceca3581e649f28ae59e + HEAD_REF tbb_2019 ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) @@ -87,3 +87,4 @@ file(COPY ${SOURCE_PATH}/LICENSE ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${C file(RENAME ${CURRENT_PACKAGES_DIR}/share/tbb/LICENSE ${CURRENT_PACKAGES_DIR}/share/tbb/copyright) vcpkg_test_cmake(PACKAGE_NAME TBB) +# diff --git a/ports/tiff/CONTROL b/ports/tiff/CONTROL index bc4310ba7..97d25bcdb 100644 --- a/ports/tiff/CONTROL +++ b/ports/tiff/CONTROL @@ -1,4 +1,4 @@ Source: tiff -Version: 4.0.10-3 +Version: 4.0.10-4 Build-Depends: zlib, libjpeg-turbo, liblzma (!uwp) Description: A library that supports the manipulation of TIFF image files diff --git a/ports/tiff/portfile.cmake b/ports/tiff/portfile.cmake index d51d772ca..3a0ee0b8a 100644 --- a/ports/tiff/portfile.cmake +++ b/ports/tiff/portfile.cmake @@ -2,6 +2,8 @@ include(vcpkg_common_functions) set(LIBTIFF_VERSION 4.0.10) +vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + vcpkg_download_distfile(ARCHIVE URLS "http://download.osgeo.org/libtiff/tiff-${LIBTIFF_VERSION}.tar.gz" FILENAME "tiff-${LIBTIFF_VERSION}.tar.gz" diff --git a/ports/uvw/CMakeLists.txt b/ports/uvw/CMakeLists.txt new file mode 100644 index 000000000..f359b7351 --- /dev/null +++ b/ports/uvw/CMakeLists.txt @@ -0,0 +1,25 @@ +cmake_minimum_required(VERSION 3.8)
+project(uvw)
+
+find_package(unofficial-libuv CONFIG REQUIRED)
+
+add_library(uvw INTERFACE)
+target_link_libraries(uvw INTERFACE unofficial::libuv::libuv)
+
+install(TARGETS uvw
+ EXPORT uvw
+ INCLUDES DESTINATION include/)
+
+install(EXPORT uvw
+ DESTINATION "share/uvw"
+ FILE uvw-targets.cmake
+ NAMESPACE uvw::)
+
+install(DIRECTORY
+ src/uvw/
+ DESTINATION include/uvw/)
+
+install(FILES
+ src/uvw.hpp
+ DESTINATION include/
+)
diff --git a/ports/uvw/CONTROL b/ports/uvw/CONTROL index 0a055ad8b..59926f1a9 100644 --- a/ports/uvw/CONTROL +++ b/ports/uvw/CONTROL @@ -1,3 +1,4 @@ Source: uvw -Version: 1.11.3 +Version: 1.15.0 Description: Header-only, event based, tiny and easy to use libuv wrapper in modern C++. <https://github.com/skypjack/uvw> +Build-Depends: libuv diff --git a/ports/uvw/portfile.cmake b/ports/uvw/portfile.cmake index e7d2c9b00..0fca53590 100644 --- a/ports/uvw/portfile.cmake +++ b/ports/uvw/portfile.cmake @@ -4,19 +4,23 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO skypjack/uvw - REF v1.11.2_libuv-v1.23 - SHA512 0125233645351b94acb1b42f1632365a60892c64f00b27f04ae76fa523c4ee32c9910f0fcfb160b15269bfb0b5ae0c0f8b46d83a1ca9f9fc661b75eecb7a04d3 + REF v1.15.0_libuv-v1.27 + SHA512 acf1f1bdbc34ec5d040514ca08c99ee05b5bbb112828a4acf5f4c50e1910d2c74864a0793d4087b7a4a0704dd2ba1a973f65cee032fffea9247009be9cd0243c ) -file(INSTALL - ${SOURCE_PATH}/src/uvw - DESTINATION ${CURRENT_PACKAGES_DIR}/include +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA ) +vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH "share/uvw") file(INSTALL - ${SOURCE_PATH}/src/uvw.hpp - DESTINATION ${CURRENT_PACKAGES_DIR}/include + ${CMAKE_CURRENT_LIST_DIR}/uvw-config.cmake + DESTINATION ${CURRENT_PACKAGES_DIR}/share/uvw/ ) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) # Handle copyright/readme/package files file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/uvw RENAME copyright) diff --git a/ports/uvw/uvw-config.cmake b/ports/uvw/uvw-config.cmake new file mode 100644 index 000000000..1fdc98f53 --- /dev/null +++ b/ports/uvw/uvw-config.cmake @@ -0,0 +1,2 @@ +find_package(unofficial-libuv CONFIG REQUIRED)
+include ("${CMAKE_CURRENT_LIST_DIR}/uvw-targets.cmake")
diff --git a/ports/xalan-c/portfile.cmake b/ports/xalan-c/portfile.cmake index e5a9a6654..afd1b38bc 100644 --- a/ports/xalan-c/portfile.cmake +++ b/ports/xalan-c/portfile.cmake @@ -1,5 +1,12 @@ include(vcpkg_common_functions) +string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) +if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) + message(WARNING "Xalan-c's buildsystem uses very long paths and may fail on your system.\n" + "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." + ) +endif() + vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY ONLY_DYNAMIC_CRT) set(XALANC_VERSION 1.11) diff --git a/ports/xerces-c/CONTROL b/ports/xerces-c/CONTROL index 63b4e9ad1..dc204b51b 100644 --- a/ports/xerces-c/CONTROL +++ b/ports/xerces-c/CONTROL @@ -1,5 +1,5 @@ Source: xerces-c -Version: 3.2.2-7 +Version: 3.2.2-8 Description: Xerces-C++ is a XML parser, for parsing, generating, manipulating, and validating XML documents using the DOM, SAX, and SAX2 APIs. Feature: icu diff --git a/ports/xerces-c/portfile.cmake b/ports/xerces-c/portfile.cmake index aa5700121..017cb7cab 100644 --- a/ports/xerces-c/portfile.cmake +++ b/ports/xerces-c/portfile.cmake @@ -45,6 +45,12 @@ string(REPLACE ) file(WRITE ${CURRENT_PACKAGES_DIR}/share/xercesc/XercesCConfigInternal.cmake "${_contents}") +configure_file( + ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake + ${CURRENT_PACKAGES_DIR}/share/xercesc + @ONLY +) + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share" diff --git a/ports/xerces-c/vcpkg-cmake-wrapper.cmake b/ports/xerces-c/vcpkg-cmake-wrapper.cmake new file mode 100644 index 000000000..c6cfff8a4 --- /dev/null +++ b/ports/xerces-c/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,9 @@ +_find_package(${ARGS})
+
+if (APPLE)
+ if (TARGET XercesC::XercesC)
+ set_property(TARGET XercesC::XercesC APPEND PROPERTY INTERFACE_LINK_LIBRARIES "-framework CoreServices" "-framework CoreFoundation" curl)
+ list(APPEND XercesC_LIBRARIES "-framework CoreServices" "-framework CoreFoundation" curl)
+ endif()
+endif()
+
diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index d8dd10b2b..1642bf3b4 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -136,7 +136,9 @@ function(vcpkg_find_acquire_program VAR) set(PATHS "${DOWNLOADS}/tools/nuget") set(BREW_PACKAGE_NAME "nuget") set(URL "https://dist.nuget.org/win-x86-commandline/v4.8.1/nuget.exe") - set(HASH 42CB744338AF8DECC033A75BCE5B4C4DF28E102BAFC45F9A8BA86D7BC010F5B43EBACAE80D7B28C4F85AC900EEFC2A349620AE65F27F6CA1C21C53B63B92924B) + set(ARCHIVE "nuget.exe") + set(NOEXTRACT ON) + set(HASH 42cb744338af8decc033a75bce5b4c4df28e102bafc45f9a8ba86d7bc010f5b43ebacae80d7b28c4f85ac900eefc2a349620ae65f27f6ca1c21c53b63b92924b) elseif(VAR MATCHES "MESON") set(PROGNAME meson) set(REQUIRED_INTERPRETER PYTHON3) diff --git a/scripts/cmake/vcpkg_test_cmake.cmake b/scripts/cmake/vcpkg_test_cmake.cmake index f02f0cf07..20343bf64 100644 --- a/scripts/cmake/vcpkg_test_cmake.cmake +++ b/scripts/cmake/vcpkg_test_cmake.cmake @@ -16,58 +16,64 @@ ## Indicates that the library expects to be found via built-in CMake targets. ## function(vcpkg_test_cmake) - cmake_parse_arguments(_tc "MODULE" "PACKAGE_NAME" "" ${ARGN}) + # The following issues need to be addressed before re-enabling this function. + # 1. Use the actual vcpkg toolchain file. + # 2. Select a generator in the same method as vcpkg_configure_cmake() as though the PREFER_NINJA flag was always passed. + # 3. Fully emulate the toolchain file for the just-built package (just adding it to CMAKE_PREFIX_PATH is not enough). + return() - if(NOT DEFINED _tc_PACKAGE_NAME) - message(FATAL_ERROR "PACKAGE_NAME must be specified") - endif() - if(_tc_MODULE) - set(PACKAGE_TYPE MODULE) - else() - set(PACKAGE_TYPE CONFIG) - endif() + cmake_parse_arguments(_tc "MODULE" "PACKAGE_NAME" "" ${ARGN}) - if(VCPKG_PLATFORM_TOOLSET STREQUAL "v142") - message(STATUS "Skipping CMake integration test due to v142 / CMake interaction issues") - return() - endif() + if(NOT DEFINED _tc_PACKAGE_NAME) + message(FATAL_ERROR "PACKAGE_NAME must be specified") + endif() + if(_tc_MODULE) + set(PACKAGE_TYPE MODULE) + else() + set(PACKAGE_TYPE CONFIG) + endif() - message(STATUS "Performing CMake integration test") - file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test) - file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test) + if(VCPKG_PLATFORM_TOOLSET STREQUAL "v142") + message(STATUS "Skipping CMake integration test due to v142 / CMake interaction issues") + return() + endif() - #Generate Dummy source + message(STATUS "Performing CMake integration test") + file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test) + file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test) + + #Generate Dummy source # set(VCPKG_TEST_SOURCE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test/CMakeIntegration.cpp) # file(WRITE ${VCPKG_TEST_SOURCE} "int main() \{\n") # file(APPEND ${VCPKG_TEST_SOURCE} "return 0;}") - # Generate test source CMakeLists.txt - set(VCPKG_TEST_CMAKELIST ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test/CMakeLists.txt) - file(WRITE ${VCPKG_TEST_CMAKELIST} "cmake_minimum_required(VERSION 3.10)\n") - file(APPEND ${VCPKG_TEST_CMAKELIST} "set(CMAKE_PREFIX_PATH \"${CURRENT_PACKAGES_DIR};${CURRENT_INSTALLED_DIR}\")\n") - file(APPEND ${VCPKG_TEST_CMAKELIST} "\n") - file(APPEND ${VCPKG_TEST_CMAKELIST} "find_package(${_tc_PACKAGE_NAME} ${PACKAGE_TYPE} REQUIRED)\n") - #To properly test if the package is actually working haveway correctly we have to link all targets of a package to - #a test executable and than actually build it. This will not discover if every symbol exported by the library is available/linked - #but it will doscover if all files which are linked by a target actual exist. Problem is: How to discover all targets? + # Generate test source CMakeLists.txt + set(VCPKG_TEST_CMAKELIST ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test/CMakeLists.txt) + file(WRITE ${VCPKG_TEST_CMAKELIST} "cmake_minimum_required(VERSION 3.10)\n") + file(APPEND ${VCPKG_TEST_CMAKELIST} "set(CMAKE_PREFIX_PATH \"${CURRENT_PACKAGES_DIR};${CURRENT_INSTALLED_DIR}\")\n") + file(APPEND ${VCPKG_TEST_CMAKELIST} "\n") + file(APPEND ${VCPKG_TEST_CMAKELIST} "find_package(${_tc_PACKAGE_NAME} ${PACKAGE_TYPE} REQUIRED)\n") + #To properly test if the package is actually working haveway correctly we have to link all targets of a package to + #a test executable and than actually build it. This will not discover if every symbol exported by the library is available/linked + #but it will doscover if all files which are linked by a target actual exist. Problem is: How to discover all targets? # file(APPEND ${VCPKG_TEST_CMAKELIST} "add_executable(${_tc_PACKAGE_NAME}_exe ${VCPKG_TEST_SOURCE})\n") # file(APPEND ${VCPKG_TEST_CMAKELIST} "target_link_libraries(${_tc_PACKAGE_NAME}_exe PRIVATE ${_tc_PACKAGE_NAME})\n") - if(DEFINED _VCPKG_CMAKE_GENERATOR) - set(VCPKG_CMAKE_TEST_GENERATOR "${_VCPKG_CMAKE_GENERATOR}") - else() - set(VCPKG_CMAKE_TEST_GENERATOR Ninja) - endif() + if(DEFINED _VCPKG_CMAKE_GENERATOR) + set(VCPKG_CMAKE_TEST_GENERATOR "${_VCPKG_CMAKE_GENERATOR}") + else() + set(VCPKG_CMAKE_TEST_GENERATOR Ninja) + endif() - # Run cmake config with a generated CMakeLists.txt - set(LOGPREFIX "${CURRENT_BUILDTREES_DIR}/test-cmake-${TARGET_TRIPLET}") - execute_process( - COMMAND ${CMAKE_COMMAND} -G ${VCPKG_CMAKE_TEST_GENERATOR} . - OUTPUT_FILE "${LOGPREFIX}-out.log" - ERROR_FILE "${LOGPREFIX}-err.log" - RESULT_VARIABLE error_code - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test - ) - if(error_code) - message(FATAL_ERROR "CMake integration test failed; unable to find_package(${_tc_PACKAGE_NAME} ${PACKAGE_TYPE} REQUIRED)") - endif() + # Run cmake config with a generated CMakeLists.txt + set(LOGPREFIX "${CURRENT_BUILDTREES_DIR}/test-cmake-${TARGET_TRIPLET}") + execute_process( + COMMAND ${CMAKE_COMMAND} -G ${VCPKG_CMAKE_TEST_GENERATOR} . + OUTPUT_FILE "${LOGPREFIX}-out.log" + ERROR_FILE "${LOGPREFIX}-err.log" + RESULT_VARIABLE error_code + WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test + ) + if(error_code) + message(FATAL_ERROR "CMake integration test failed; unable to find_package(${_tc_PACKAGE_NAME} ${PACKAGE_TYPE} REQUIRED)") + endif() endfunction() diff --git a/toolsrc/include/vcpkg/base/files.h b/toolsrc/include/vcpkg/base/files.h index b24778308..b07ff25b3 100644 --- a/toolsrc/include/vcpkg/base/files.h +++ b/toolsrc/include/vcpkg/base/files.h @@ -2,7 +2,7 @@ #include <vcpkg/base/expected.h> -#if defined(_WIN32) || defined(__cpp_lib_filesystem) +#if defined(_WIN32) #include <filesystem> #else #include <experimental/filesystem> @@ -10,12 +10,7 @@ namespace fs { -// VS2015 (_MSC_VER 1900) uses std::experimental::filesystem -#if (defined(_MSC_VER) && _MSC_VER > 1900) || defined(__cpp_lib_filesystem) - namespace stdfs = std::filesystem; -#else namespace stdfs = std::experimental::filesystem; -#endif using stdfs::copy_options; using stdfs::file_status; diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index 90b9c34b3..6ddf17496 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -178,6 +178,19 @@ namespace vcpkg::System L"ANDROID_NDK_HOME", }; + const Optional<std::string> keep_vars = System::get_environment_variable("VCPKG_KEEP_ENV_VARS"); + const auto k = keep_vars.get(); + + if (k && !k->empty()) + { + auto vars = Strings::split(*k, ";"); + + for (auto&& var : vars) + { + env_wstrings.push_back(Strings::to_utf16(var.c_str())); + } + } + std::wstring env_cstr; for (auto&& env_wstring : env_wstrings) |
