mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-01-14 13:40:47 +08:00
[vcpkg macos ci] Switch to using our own base boxes, to fix bringing up mac machines (#13619)
* [vcpkg ci:osx] Remove brew install * add instructions for creating a new vagrant box * fix the vagrant scripts for the new box * finish fixing the setup * [mecab jxrlib] fix ports for CI mecab needed to use an actual ref that wasn't master, and jxrlib needed a patch for xcode 12 CLTs. Additionally, this fixes the mecab version to be a date, the date of the last commit, since `1.0` is not the correct version (mecab doesn't have released versions) * [many ports] fix compile with Xcode 12 CLTs This mostly means fixing errors on implicit-function-declaration, and removing some Werrors * alac-decoder * apr * argtable2 * arrow * hyperscan * mcpp * minizip * mosquitto * stormlib * [many ports] even more Xcode 12 CLT fixes * [jxrlib darknet] fix the last ports! (hopefully) * CRs, plus minor wip changes to osx scripts
This commit is contained in:
parent
c1acea1f04
commit
4cbbcbddfd
@ -18,6 +18,8 @@ set (SRCS
|
||||
|
||||
if(MSVC)
|
||||
add_compile_options(/W4 -D_CRT_SECURE_NO_WARNINGS -DTARGET_OS_WIN32)
|
||||
else()
|
||||
add_compile_options(-Wno-error=implicit-function-declaration)
|
||||
endif()
|
||||
|
||||
include_directories(.)
|
||||
|
@ -1,4 +1,5 @@
|
||||
Source: alac-decoder
|
||||
Version: 0.2-3
|
||||
Version: 0.2
|
||||
Port-Version: 4
|
||||
Homepage: https://distfiles.macports.org/alac_decoder
|
||||
Description: ALAC C implementation of a decoder, written from reverse engineering the file format
|
||||
|
@ -1,6 +1,6 @@
|
||||
Source: apr
|
||||
Version: 1.7.0
|
||||
Port-Version: 2
|
||||
Port-Version: 3
|
||||
Homepage: https://apr.apache.org/
|
||||
Description: The Apache Portable Runtime (APR) is a C library that forms a system portability layer that covers many operating systems.
|
||||
Supports: !uwp
|
||||
|
@ -64,6 +64,7 @@ else()
|
||||
else()
|
||||
message(STATUS "Configuring apr")
|
||||
endif()
|
||||
set(ENV{CFLAGS} "$ENV{CFLAGS} -Wno-error=implicit-function-declaration")
|
||||
vcpkg_configure_make(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
NO_DEBUG
|
||||
|
@ -1,5 +1,14 @@
|
||||
From 6594abbd953d0e26105fd6c982990eb702f27804 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 15:22:00 -0700
|
||||
Subject: [PATCH 1/2] fix install dirs
|
||||
|
||||
---
|
||||
src/CMakeLists.txt | 11 +++++++----
|
||||
1 file changed, 7 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 3427487..a9b8be0 100644
|
||||
index 773c4c8..03e112c 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -1,5 +1,4 @@
|
||||
@ -15,10 +24,12 @@ index 3427487..a9b8be0 100644
|
||||
|
||||
-INSTALL( TARGETS argtable2 ARCHIVE DESTINATION lib)
|
||||
-SET_TARGET_PROPERTIES( argtable2 PROPERTIES DEBUG_POSTFIX d )
|
||||
\ No newline at end of file
|
||||
+INSTALL(TARGETS argtable2
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+INSTALL(TARGETS argtable2
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+)
|
||||
+INSTALL(FILES argtable2.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
60
ports/argtable2/0002-include-correct-headers.patch
Normal file
60
ports/argtable2/0002-include-correct-headers.patch
Normal file
@ -0,0 +1,60 @@
|
||||
From 271423adb2900c8bf4aad5d73d7ef1efbb5c35d8 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 15:17:18 -0700
|
||||
Subject: [PATCH 2/2] include correct headers
|
||||
|
||||
---
|
||||
src/arg_date.c | 4 +++-
|
||||
src/arg_int.c | 1 +
|
||||
src/getopt.c | 1 +
|
||||
3 files changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/arg_date.c b/src/arg_date.c
|
||||
index 22b59e2..5004b42 100644
|
||||
--- a/src/arg_date.c
|
||||
+++ b/src/arg_date.c
|
||||
@@ -37,6 +37,8 @@ USA.
|
||||
#include <strings.h>
|
||||
#endif
|
||||
|
||||
+#include <string.h>
|
||||
+
|
||||
#include "argtable2.h"
|
||||
|
||||
/* local error codes */
|
||||
@@ -112,7 +114,7 @@ static void errorfn(struct arg_date *parent, FILE *fp, int errorcode, const char
|
||||
char buff[200];
|
||||
|
||||
fprintf(fp,"illegal timestamp format \"%s\"\n",argval);
|
||||
- bzero(&tm,sizeof(tm));
|
||||
+ memset(&tm, 0, sizeof(tm));
|
||||
strptime("1999-12-31 23:59:59","%F %H:%M:%S",&tm);
|
||||
strftime(buff, sizeof(buff), parent->format, &tm);
|
||||
printf("correct format is \"%s\"\n", buff);
|
||||
diff --git a/src/arg_int.c b/src/arg_int.c
|
||||
index 29c20e5..bc10012 100644
|
||||
--- a/src/arg_int.c
|
||||
+++ b/src/arg_int.c
|
||||
@@ -30,6 +30,7 @@ USA.
|
||||
|
||||
#include "argtable2.h"
|
||||
#include <limits.h>
|
||||
+#include <ctype.h>
|
||||
|
||||
/* local error codes */
|
||||
enum {EMINCOUNT=1,EMAXCOUNT,EBADINT,EOVERFLOW};
|
||||
diff --git a/src/getopt.c b/src/getopt.c
|
||||
index b208529..b13acc6 100644
|
||||
--- a/src/getopt.c
|
||||
+++ b/src/getopt.c
|
||||
@@ -47,6 +47,7 @@
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
+#include <string.h>
|
||||
|
||||
/* Comment out all this code if we are using the GNU C Library, and are not
|
||||
actually compiling the library itself. This code is part of the GNU C
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -1,4 +1,5 @@
|
||||
Source: argtable2
|
||||
Version: 2.13-7
|
||||
Version: 2.13
|
||||
Port-Version: 8
|
||||
Homepage: http://argtable.sourceforge.net
|
||||
Description: Argtable is an ANSI C library for parsing GNU style command line options with a minimum of fuss.
|
||||
|
@ -6,7 +6,9 @@ vcpkg_from_sourceforge(
|
||||
REF argtable-2.13
|
||||
FILENAME "argtable2-13.tar.gz"
|
||||
SHA512 3d8303f3ba529e3241d918c0127a16402ece951efb964d14a06a3a7d29a252812ad3c44e96da28798871e9923e73a2cfe7ebc84139c1397817d632cae25c4585
|
||||
PATCHES fix-install-dirs.patch
|
||||
PATCHES
|
||||
0001-fix-install-dirs.patch
|
||||
0002-include-correct-headers.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
|
@ -1,5 +1,6 @@
|
||||
Source: arrow
|
||||
Version: 1.0.1
|
||||
Port-Version: 1
|
||||
Build-Depends: boost-system, boost-filesystem, boost-multiprecision, boost-algorithm, flatbuffers, rapidjson, zlib, lz4, brotli, bzip2, zstd, snappy, gflags, thrift, double-conversion, glog, uriparser, openssl, utf8proc
|
||||
Homepage: https://github.com/apache/arrow
|
||||
Description: Apache Arrow is a columnar in-memory analytics layer designed to accelerate big data. It houses a set of canonical in-memory representations of flat and hierarchical data along with multiple language-bindings for structure manipulation. It also provides IPC and common algorithm implementations.
|
||||
|
@ -44,6 +44,7 @@ vcpkg_configure_cmake(
|
||||
-DARROW_WITH_BROTLI=ON
|
||||
-DARROW_WITH_UTF8PROC=ON
|
||||
-DPARQUET_REQUIRE_ENCRYPTION=ON
|
||||
-DBUILD_WARNING_LEVEL=PRODUCTION
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
@ -1,3 +1,4 @@
|
||||
Source: bde
|
||||
Version: 3.2.0.0-1
|
||||
Version: 3.2.0.0
|
||||
Port-Version: 2
|
||||
Description: Basic Development Environment - a set of foundational C++ libraries used at Bloomberg.
|
||||
|
@ -1,5 +1,3 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
set(CONFIGURE_COMMON_ARGS ${CONFIGURE_COMMON_ARGS} --library-type=static)
|
||||
|
||||
@ -58,8 +56,10 @@ elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
||||
else()
|
||||
message(FATAL_ERROR "Unsupported target architecture: ${VCPKG_TARGET_ARCHITECTURE}")
|
||||
endif()
|
||||
if(NOT VCPKG_CMAKE_SYSTEM_NAME)
|
||||
if(VCPKG_TARGET_IS_WINDOWS)
|
||||
set(CONFIGURE_COMMON_ARGS ${CONFIGURE_COMMON_ARGS} --msvc-runtime-type=static)
|
||||
else()
|
||||
set(ENV{CFLAGS} "$ENV{CFLAGS} -Wno-error=implicit-function-declaration")
|
||||
endif()
|
||||
|
||||
# Configure debug
|
||||
|
@ -2,27 +2,22 @@ diff --git a/src/binn.c b/src/binn.c
|
||||
index ef32f35..d12d473 100644
|
||||
--- a/src/binn.c
|
||||
+++ b/src/binn.c
|
||||
@@ -142,8 +142,8 @@ BINN_PRIVATE void copy_be64(u64 *pdest, u64 *psource) {
|
||||
@@ -142,8 +142,14 @@ BINN_PRIVATE void copy_be64(u64 *pdest, u64 *psource) {
|
||||
/***************************************************************************/
|
||||
|
||||
#ifndef WIN32
|
||||
-#define stricmp strcasecmp
|
||||
-#define strnicmp strncasecmp
|
||||
+#define _stricmp strcasecmp
|
||||
+#define _strnicmp strncasecmp
|
||||
#define stricmp strcasecmp
|
||||
#define strnicmp strncasecmp
|
||||
+#define sprintf_s(b, n, ...) sprintf(b, __VA_ARGS__)
|
||||
+#define strcpy_s(b, n, s) strcpy(b, s)
|
||||
+#else
|
||||
+#define stricmp _stricmp
|
||||
+#define strnicmp _strnicmp
|
||||
+#define strdup _strdup
|
||||
#endif
|
||||
|
||||
BINN_PRIVATE BOOL IsValidBinnHeader(void *pbuf, int *ptype, int *pcount, int *psize, int *pheadersize);
|
||||
@@ -614,7 +614,7 @@ BINN_PRIVATE unsigned char * SearchForKey(unsigned char *p, int header_size, int
|
||||
if (p > plimit) break;
|
||||
// Compare if the strings are equal.
|
||||
if (len > 0) {
|
||||
- if (strnicmp((char*)p, key, len) == 0) { // note that there is no null terminator here
|
||||
+ if (_strnicmp((char*)p, key, len) == 0) { // note that there is no null terminator here
|
||||
if (keylen == len) {
|
||||
p += len;
|
||||
return p;
|
||||
@@ -1582,6 +1582,7 @@ BINN_PRIVATE BOOL binn_read_pair(int expected_type, void *ptr, int pos, int *pid
|
||||
@@ -1582,6 +1588,7 @@ BINN_PRIVATE BOOL binn_read_pair(int expected_type, void *ptr, int pos, int *pid
|
||||
base = p;
|
||||
plimit = p + size - 1;
|
||||
p += header_size;
|
||||
@ -30,40 +25,16 @@ index ef32f35..d12d473 100644
|
||||
|
||||
for (i = 0; i < count; i++) {
|
||||
switch (type) {
|
||||
@@ -3147,15 +3148,15 @@ BINN_PRIVATE BOOL is_bool_str(char *str, BOOL *pbool) {
|
||||
|
||||
if (str == NULL || pbool == NULL) return FALSE;
|
||||
|
||||
- if (stricmp(str, "true") == 0) goto loc_true;
|
||||
- if (stricmp(str, "yes") == 0) goto loc_true;
|
||||
- if (stricmp(str, "on") == 0) goto loc_true;
|
||||
- //if (stricmp(str, "1") == 0) goto loc_true;
|
||||
+ if (_stricmp(str, "true") == 0) goto loc_true;
|
||||
+ if (_stricmp(str, "yes") == 0) goto loc_true;
|
||||
+ if (_stricmp(str, "on") == 0) goto loc_true;
|
||||
+ //if (_stricmp(str, "1") == 0) goto loc_true;
|
||||
|
||||
- if (stricmp(str, "false") == 0) goto loc_false;
|
||||
- if (stricmp(str, "no") == 0) goto loc_false;
|
||||
- if (stricmp(str, "off") == 0) goto loc_false;
|
||||
- //if (stricmp(str, "0") == 0) goto loc_false;
|
||||
+ if (_stricmp(str, "false") == 0) goto loc_false;
|
||||
+ if (_stricmp(str, "no") == 0) goto loc_false;
|
||||
+ if (_stricmp(str, "off") == 0) goto loc_false;
|
||||
+ //if (_stricmp(str, "0") == 0) goto loc_false;
|
||||
|
||||
if (is_integer(str)) {
|
||||
vint = atoi64(str);
|
||||
@@ -3333,7 +3334,7 @@ char * APIENTRY binn_get_str(binn *value) {
|
||||
@@ -3333,7 +3340,7 @@ char * APIENTRY binn_get_str(binn *value) {
|
||||
|
||||
if (type_family(value->type) == BINN_FAMILY_INT) {
|
||||
if (copy_int_value(value->ptr, &vint, value->type, BINN_INT64) == FALSE) return NULL;
|
||||
- sprintf(buf, "%" INT64_FORMAT, vint);
|
||||
+ sprintf_s(buf, "%" INT64_FORMAT, vint);
|
||||
+ sprintf_s(buf, sizeof buf, "%" INT64_FORMAT, vint);
|
||||
goto loc_convert_value;
|
||||
}
|
||||
|
||||
@@ -3341,15 +3342,15 @@ char * APIENTRY binn_get_str(binn *value) {
|
||||
@@ -3341,14 +3348,14 @@ char * APIENTRY binn_get_str(binn *value) {
|
||||
case BINN_FLOAT:
|
||||
value->vdouble = value->vfloat;
|
||||
case BINN_DOUBLE:
|
||||
@ -81,13 +52,3 @@ index ef32f35..d12d473 100644
|
||||
+ strcpy_s(buf, sizeof buf, "false");
|
||||
goto loc_convert_value;
|
||||
}
|
||||
|
||||
@@ -3358,7 +3359,7 @@ char * APIENTRY binn_get_str(binn *value) {
|
||||
loc_convert_value:
|
||||
|
||||
//value->vint64 = 0;
|
||||
- value->ptr = strdup(buf);
|
||||
+ value->ptr = _strdup(buf);
|
||||
if (value->ptr == NULL) return NULL;
|
||||
value->freefn = free;
|
||||
value->type = BINN_STRING;
|
||||
|
@ -1,3 +1,4 @@
|
||||
Source: binn
|
||||
Version: 2.0
|
||||
Description: Binn is a binary data serialization format designed to be compact, fast and easy to use.
|
||||
Port-Version: 1
|
||||
Description: Binn is a binary data serialization format designed to be compact, fast and easy to use.
|
||||
|
40
ports/cfitsio/0001-correct-headers-for-getcwd.patch
Normal file
40
ports/cfitsio/0001-correct-headers-for-getcwd.patch
Normal file
@ -0,0 +1,40 @@
|
||||
From 67400fcbd3ab2f7e68a8e7a60139b1b615debae2 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Wed, 23 Sep 2020 10:27:43 -0700
|
||||
Subject: [PATCH] correct headers for getcwd
|
||||
|
||||
---
|
||||
fitsio.h | 3 +++
|
||||
group.c | 2 +-
|
||||
2 files changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/fitsio.h b/fitsio.h
|
||||
index ec26d9d..792bb95 100644
|
||||
--- a/fitsio.h
|
||||
+++ b/fitsio.h
|
||||
@@ -39,6 +39,9 @@ SERVICES PROVIDED HEREUNDER."
|
||||
#define CFITSIO_MAJOR 3
|
||||
#define CFITSIO_SONAME 5
|
||||
|
||||
+/* Required for getcwd() */
|
||||
+#define _POSIX_C_SOURCE 200112L
|
||||
+
|
||||
/* the SONAME is incremented in a new release if the binary shared */
|
||||
/* library (on linux and Mac systems) is not backward compatible */
|
||||
/* with the previous release of CFITSIO */
|
||||
diff --git a/group.c b/group.c
|
||||
index 9326c57..cec0f6a 100644
|
||||
--- a/group.c
|
||||
+++ b/group.c
|
||||
@@ -24,7 +24,7 @@
|
||||
#include <direct.h> /* defines the getcwd function on Windows PCs */
|
||||
#endif
|
||||
|
||||
-#if defined(unix) || defined(__unix__) || defined(__unix) || defined(HAVE_UNISTD_H)
|
||||
+#if defined(unix) || defined(__unix__) || defined(__unix) || defined(__APPLE__) || defined(HAVE_UNISTD_H)
|
||||
#include <unistd.h> /* needed for getcwd prototype on unix machines */
|
||||
#endif
|
||||
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -1,4 +1,5 @@
|
||||
Source: cfitsio
|
||||
Version: 3.410-3
|
||||
Version: 3.410
|
||||
Port-Version: 4
|
||||
Homepage: https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c
|
||||
Description: Library of C and Fortran subroutines for reading and writing data files in FITS (Flexible Image Transport System) data format
|
||||
|
@ -1,5 +1,3 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio3410.tar.gz"
|
||||
FILENAME "cfitsio3410.tar.gz"
|
||||
@ -9,6 +7,8 @@ vcpkg_download_distfile(ARCHIVE
|
||||
vcpkg_extract_source_archive_ex(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
ARCHIVE ${ARCHIVE}
|
||||
PATCHES
|
||||
0001-correct-headers-for-getcwd.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
|
@ -1,5 +1,6 @@
|
||||
Source: chromium-base
|
||||
Version: 86.0.4199.1
|
||||
Port-Version: 1
|
||||
Homepage: https://chromium.googlesource.com/chromium/src
|
||||
Description: Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
|
||||
Supports: x64 & (osx|windows|linux) & !uwp
|
||||
Supports: x64 & (osx|windows|linux) & !uwp
|
||||
|
@ -68,7 +68,8 @@ file(COPY "${RES}/test_fonts" DESTINATION "${SOURCE_PATH}/third_party")
|
||||
set(OPTIONS "\
|
||||
use_custom_libcxx=false \
|
||||
clang_use_chrome_plugins=false \
|
||||
forbid_non_component_debug_builds=false")
|
||||
forbid_non_component_debug_builds=false \
|
||||
treat_warnings_as_errors=false")
|
||||
set(DEFINITIONS "")
|
||||
|
||||
if(WIN32)
|
||||
@ -76,7 +77,7 @@ if(WIN32)
|
||||
# https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk
|
||||
SET(VCPKG_POLICY_SKIP_ARCHITECTURE_CHECK enabled)
|
||||
set(ENV{DEPOT_TOOLS_WIN_TOOLCHAIN} 0)
|
||||
set(OPTIONS "${OPTIONS} treat_warnings_as_errors=false use_lld=false")
|
||||
set(OPTIONS "${OPTIONS} use_lld=false")
|
||||
endif()
|
||||
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL Linux)
|
||||
|
@ -24,6 +24,7 @@ elseif (UNIX)
|
||||
elseif(CMAKE_SIZEOF_VOID_P EQUAL 4)
|
||||
target_compile_options(cspice PUBLIC -m32 -ansi -fPIC)
|
||||
endif()
|
||||
target_compile_options(cspice PRIVATE -Wno-error=implicit-function-declaration)
|
||||
endif ()
|
||||
|
||||
if (NOT _SKIP_HEADERS)
|
||||
|
@ -1,6 +1,6 @@
|
||||
Source: cspice
|
||||
Version: 66
|
||||
Port-Version: 2
|
||||
Port-Version: 3
|
||||
Homepage: https://naif.jpl.nasa.gov/naif/toolkit_C.html
|
||||
Description: NASA C SPICE toolkit
|
||||
Supports: !uwp
|
||||
Supports: !uwp
|
||||
|
@ -0,0 +1,26 @@
|
||||
From ed14dcf873775dcfc56883f55c10619779d8f87e Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Thu, 24 Sep 2020 09:48:16 -0700
|
||||
Subject: [PATCH] rename _castu32_f32 to gemm_castu32_f32
|
||||
|
||||
since _castu32_f32 is reserved, an implementation is allowed to name a function that,
|
||||
and it turns out Xcode 12 did.
|
||||
---
|
||||
src/gemm.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/gemm.c b/src/gemm.c
|
||||
index 0b06d98..bc2aef3 100644
|
||||
--- a/src/gemm.c
|
||||
+++ b/src/gemm.c
|
||||
@@ -546,6 +546,7 @@ static inline float _mm256_extract_float32(__m256 a, const int index) {
|
||||
#include <smmintrin.h>
|
||||
#include <cpuid.h>
|
||||
|
||||
+#define _castu32_f32 gemm_castu32_f32
|
||||
static inline float _castu32_f32(uint32_t a) {
|
||||
return *((float *)&a);
|
||||
}
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -1,5 +1,6 @@
|
||||
Source: darknet
|
||||
Version: 2020-08-30
|
||||
Port-Version: 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, stb
|
||||
|
||||
|
@ -4,6 +4,8 @@ vcpkg_from_github(
|
||||
REF ecad770071eb776208a46977347e6d2410d4f50e
|
||||
SHA512 1de0dc3f4842c68f5c12addf100996f7176ffb50dcd89a0b57446ba996d9199e31531f64c32eedbc2ea6a449459573811444dd35f1a50ece3880f58717c795ab
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
0001-rename-_castu32_f32-to-gemm_castu32_f32.patch
|
||||
)
|
||||
|
||||
# enable CUDA inside DARKNET
|
||||
|
@ -1,3 +1,12 @@
|
||||
From 04bb359c724308e30268840c64932ea1d05b9077 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Wed, 23 Sep 2020 10:00:23 -0700
|
||||
Subject: [PATCH 1/2] remove install prefix
|
||||
|
||||
---
|
||||
CMakeLists.txt | 4 ----
|
||||
1 file changed, 4 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index f7372bf..f3c11f1 100644
|
||||
--- a/CMakeLists.txt
|
||||
@ -34,3 +43,6 @@ index f7372bf..f3c11f1 100644
|
||||
|
||||
set(DOXYFILE_STRIP_FROM_PATH "${FMILIBRARYHOME}")
|
||||
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
||||
|
20
ports/fmilib/0002-include-sys-stat.h-for-mkdir.patch
Normal file
20
ports/fmilib/0002-include-sys-stat.h-for-mkdir.patch
Normal file
@ -0,0 +1,20 @@
|
||||
From 080876bf3735efeedaab0b211d2be7b3c3524d97 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Wed, 23 Sep 2020 10:03:30 -0700
|
||||
Subject: [PATCH 2/2] include sys/stat.h for mkdir
|
||||
|
||||
---
|
||||
ThirdParty/Minizip/minizip/miniunz.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/ThirdParty/Minizip/minizip/miniunz.c b/ThirdParty/Minizip/minizip/miniunz.c
|
||||
index 2264705..e0167d5 100644
|
||||
--- a/ThirdParty/Minizip/minizip/miniunz.c
|
||||
+++ b/ThirdParty/Minizip/minizip/miniunz.c
|
||||
@@ -53,5 +53,6 @@
|
||||
#else
|
||||
# include <unistd.h>
|
||||
# include <utime.h>
|
||||
+# include <sys/stat.h>
|
||||
#endif
|
||||
|
@ -1,4 +1,5 @@
|
||||
Source: fmilib
|
||||
Version: 2.0.3-2
|
||||
Version: 2.0.3
|
||||
Port-Version: 3
|
||||
Description: FMI library is intended as a foundation for applications interfacing FMUs (Functional Mockup Units) that follow FMI Standard. This version of the library supports FMI 1.0 and FMI2.0.
|
||||
Homepage: https://www.fmi-standard.org/
|
||||
|
@ -13,6 +13,7 @@ vcpkg_extract_source_archive_ex(
|
||||
ARCHIVE ${ARCHIVE}
|
||||
PATCHES
|
||||
0001-remove-install-prefix.patch
|
||||
0002-include-sys-stat.h-for-mkdir.patch
|
||||
)
|
||||
|
||||
# Note that if you have configured and built both static and shared library on Windows
|
||||
|
@ -1,6 +1,6 @@
|
||||
Source: gdal
|
||||
Version: 2.4.1
|
||||
Port-Version: 11
|
||||
Port-Version: 12
|
||||
Homepage: https://gdal.org/
|
||||
Description: The Geographic Data Abstraction Library for reading and writing geospatial raster and vector data.
|
||||
Build-Depends: proj4, libpng, geos, sqlite3, curl, expat, libpq, openjpeg, libwebp, libxml2, liblzma, netcdf-c, hdf5, zlib
|
||||
@ -12,4 +12,4 @@ Description: Add mysql support using libmariadb
|
||||
|
||||
Feature: libspatialite
|
||||
Build-Depends: libspatialite
|
||||
Description: Create or update SpatiaLite databases using libspatialite
|
||||
Description: Create or update SpatiaLite databases using libspatialite
|
||||
|
@ -349,6 +349,8 @@ elseif (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux" OR VCPKG_CMAKE_SYSTEM_NAME STRE
|
||||
if (NOT MAKE)
|
||||
message(FATAL_ERROR "MAKE not found")
|
||||
endif()
|
||||
|
||||
set(ENV{CFLAGS} "$ENV{CFLAGS} -Wno-error=implicit-function-declaration")
|
||||
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
################
|
||||
|
27
ports/hyperscan/0001-remove-Werror.patch
Normal file
27
ports/hyperscan/0001-remove-Werror.patch
Normal file
@ -0,0 +1,27 @@
|
||||
From e2c0779de8096623be874c5fa0d275113b9d1204 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 14:44:36 -0700
|
||||
Subject: [PATCH] remove Werror
|
||||
|
||||
---
|
||||
CMakeLists.txt | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 83197af..d27eb76 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -235,8 +235,8 @@ else()
|
||||
if (NOT RELEASE_BUILD)
|
||||
# -Werror is most useful during development, don't potentially break
|
||||
# release builds
|
||||
- set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Werror")
|
||||
- set(EXTRA_CXX_FLAGS "${EXTRA_CXX_FLAGS} -Werror")
|
||||
+ #set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Werror")
|
||||
+ #set(EXTRA_CXX_FLAGS "${EXTRA_CXX_FLAGS} -Werror")
|
||||
endif()
|
||||
|
||||
if (DISABLE_ASSERTS)
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -8,6 +8,8 @@ vcpkg_from_github(
|
||||
REF v${HYPERSCAN_VERSION}
|
||||
SHA512 e6ac2aef1f3efa1535c00d73fa590ea62fff4686c4ad3ee023d2e72c51896ca4616ec1b85d7c6f88ac7b42d92c3557b9c4bb3b51cfb796e20a79d53b28e53b6c
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
0001-remove-Werror.patch
|
||||
)
|
||||
|
||||
vcpkg_find_acquire_program(PYTHON3)
|
||||
|
@ -20,6 +20,7 @@ endmacro()
|
||||
|
||||
if(NOT MSVC)
|
||||
add_definitions(-D__ANSI__)
|
||||
add_compile_options(-Wno-error=implicit-function-declaration)
|
||||
endif()
|
||||
|
||||
include(TestBigEndian)
|
||||
|
@ -1,4 +1,5 @@
|
||||
Source: jxrlib
|
||||
Version: 2019.10.9-1
|
||||
Version: 2019.10.9
|
||||
Port-Version: 2
|
||||
Homepage: https://github.com/4creators/jxrlib
|
||||
Description: Open source implementation of the jpegxr image format standard.
|
||||
|
@ -1,5 +1,3 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
vcpkg_from_github(
|
||||
@ -13,9 +11,9 @@ vcpkg_from_github(
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
|
||||
if(NOT VCPKG_CMAKE_SYSTEM_NAME MATCHES Darwin AND NOT VCPKG_CMAKE_SYSTEM_NAME MATCHES Linux)
|
||||
# The file guiddef.h is part of the Windows SDK,
|
||||
# we then remove the local copy shipped with jxrlib
|
||||
file(REMOVE ${SOURCE_PATH}/common/include/guiddef.h)
|
||||
# The file guiddef.h is part of the Windows SDK,
|
||||
# we then remove the local copy shipped with jxrlib
|
||||
file(REMOVE ${SOURCE_PATH}/common/include/guiddef.h)
|
||||
endif()
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
|
@ -1,3 +1,16 @@
|
||||
From d1b446c7a69344cb53be6692cd76186960a1428d Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Wed, 23 Sep 2020 09:40:32 -0700
|
||||
Subject: [PATCH 1/2] use old pem pack
|
||||
|
||||
In this commit: https://github.com/noloader/cryptopp-pem/commit/0cfa60820ec1d5e8ac4d77a0a8786ee43e9a2400
|
||||
the parameter orders have been changed.
|
||||
But we cannot update pem-pack to this version or newer because it
|
||||
wont compile with the current version of cryptopp in vcpkg.
|
||||
---
|
||||
src/external/Ripe.cc | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/external/Ripe.cc b/src/external/Ripe.cc
|
||||
index 6ff9561..a1d1eec 100644
|
||||
--- a/src/external/Ripe.cc
|
||||
@ -11,3 +24,6 @@ index 6ff9561..a1d1eec 100644
|
||||
}
|
||||
snk.MessageEnd();
|
||||
}
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
38
ports/licensepp/0002-fix-cmake.patch
Normal file
38
ports/licensepp/0002-fix-cmake.patch
Normal file
@ -0,0 +1,38 @@
|
||||
From 5a7cbbe8423ee3daf533bcc1fefa7d1f1315634c Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Wed, 23 Sep 2020 09:43:37 -0700
|
||||
Subject: [PATCH 2/2] fix cmake
|
||||
|
||||
Remove this patch if https://github.com/amrayn/licensepp/pull/33 is merged
|
||||
---
|
||||
CMakeLists.txt | 7 +++----
|
||||
1 file changed, 3 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index b2c39d1..0d49632 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -35,10 +35,8 @@ if (APPLE)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
-if(MSVC)
|
||||
- list (APPEND CMAKE_CXX_FLAGS " -std=c++11 -O3 ")
|
||||
-else()
|
||||
- list (APPEND CMAKE_CXX_FLAGS " -std=c++11 -O3 -Wall -Werror ")
|
||||
+if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O3 -Wall")
|
||||
endif()
|
||||
|
||||
# Check for cryptopp (static)
|
||||
@@ -73,6 +71,7 @@ endif()
|
||||
set_target_properties (licensepp-lib PROPERTIES
|
||||
VERSION ${LICENSEPP_SOVERSION}
|
||||
)
|
||||
+target_include_directories(licensepp-lib PUBLIC $<INSTALL_INTERFACE:include>)
|
||||
target_link_libraries (licensepp-lib
|
||||
${CRYPTOPP_LIBRARIES}
|
||||
)
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -1,5 +1,6 @@
|
||||
Source: licensepp
|
||||
Version: 2020-05-19
|
||||
Port-Version: 1
|
||||
Description: Cross platform software licensing library
|
||||
Build-Depends: cryptopp[pem-pack]
|
||||
Supports: !uwp
|
||||
|
@ -1,25 +0,0 @@
|
||||
diff --git "a/CMakeLists.txt" "b/CMakeLists.txt"
|
||||
index b2c39d1..24a6866 100644
|
||||
--- "a/CMakeLists.txt"
|
||||
+++ "b/CMakeLists.txt"
|
||||
@@ -35,10 +35,8 @@ if (APPLE)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
-if(MSVC)
|
||||
- list (APPEND CMAKE_CXX_FLAGS " -std=c++11 -O3 ")
|
||||
-else()
|
||||
- list (APPEND CMAKE_CXX_FLAGS " -std=c++11 -O3 -Wall -Werror ")
|
||||
+if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O3 -Wall -Werror")
|
||||
endif()
|
||||
|
||||
# Check for cryptopp (static)
|
||||
@@ -73,6 +71,7 @@ endif()
|
||||
set_target_properties (licensepp-lib PROPERTIES
|
||||
VERSION ${LICENSEPP_SOVERSION}
|
||||
)
|
||||
+target_include_directories (licensepp-lib PUBLIC $<INSTALL_INTERFACE:include>)
|
||||
target_link_libraries (licensepp-lib
|
||||
${CRYPTOPP_LIBRARIES}
|
||||
)
|
@ -9,15 +9,8 @@ vcpkg_from_github(
|
||||
SHA512 2161575815d8ff49110d7c2823662ba30d9f1ca2eb6be6dad1ee0807fb3fa9f28483839a133c9d380035254df7c452f8d6fa7f17fd4f29acd8b9bfbbda059291
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
# TODO:
|
||||
# In this commit, https://github.com/noloader/cryptopp-pem/commit/0cfa60820ec1d5e8ac4d77a0a8786ee43e9a2400
|
||||
# the parameter orders have been changed.
|
||||
# But we can not update pem-pack to this version or newer because it
|
||||
# won't compile with the current version of cryptopp in `vcpkg`.
|
||||
# Remove this patch in the future.
|
||||
use-old-pem-pack.patch
|
||||
# TODO: Remove this patch if https://github.com/amrayn/licensepp/pull/33 was merged.
|
||||
fix-cmake.patch
|
||||
0001-use-old-pem-pack.patch
|
||||
0002-fix-cmake.patch
|
||||
)
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindCryptoPP.cmake DESTINATION ${SOURCE_PATH}/cmake)
|
||||
|
38
ports/mcpp/0001-fix-_POSIX_C_SOURCE.patch
Normal file
38
ports/mcpp/0001-fix-_POSIX_C_SOURCE.patch
Normal file
@ -0,0 +1,38 @@
|
||||
From d2625f80e08ff811a173ca3dbe76a0e004c26c65 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 16:21:43 -0700
|
||||
Subject: [PATCH] fix _POSIX_C_SOURCE
|
||||
|
||||
set it to correctly ask for 200112L, for readlink
|
||||
---
|
||||
configed.H | 8 +-------
|
||||
1 file changed, 1 insertion(+), 7 deletions(-)
|
||||
|
||||
diff --git a/configed.H b/configed.H
|
||||
index 2e01c15..250f441 100644
|
||||
--- a/configed.H
|
||||
+++ b/configed.H
|
||||
@@ -189,19 +189,13 @@
|
||||
#define _POSIX_ 1
|
||||
#define _POSIX_SOURCE 1
|
||||
#ifndef _POSIX_C_SOURCE
|
||||
-#define _POSIX_C_SOURCE 1
|
||||
+#define _POSIX_C_SOURCE 200112L
|
||||
#define _POSIX_C_SOURCE_defined 1
|
||||
#endif
|
||||
#include "limits.h"
|
||||
#ifdef _AIX
|
||||
#include "sys/stat.h"
|
||||
#endif
|
||||
-#undef _POSIX_
|
||||
-#undef _POSIX_SOURCE
|
||||
-#ifdef _POSIX_C_SOURCE_defined
|
||||
-#undef _POSIX_C_SOURCE
|
||||
-#undef _POSIX_C_SOURCE_defined
|
||||
-#endif
|
||||
#define CHARBIT CHAR_BIT
|
||||
#define UCHARMAX UCHAR_MAX
|
||||
#define USHRTMAX USHRT_MAX
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -1,4 +1,5 @@
|
||||
Source: mcpp
|
||||
Version: 2.7.2.14-1
|
||||
Version: 2.7.2.14
|
||||
Port-Version: 2
|
||||
Homepage: https://github.com/zeroc-ice/mcpp
|
||||
Description: Fork of mcpp, a C/C++ preprocessor
|
||||
|
@ -4,6 +4,8 @@ vcpkg_from_github(
|
||||
REF e6abf9a561294b667bb931b80cf749c9be2d1a2f
|
||||
SHA512 131b68401683bcfb947ac4969a59aa4c1683412c30f76c50e9e9c5c952a881b9950127db2ef22c96968d8c90d26bcdb5a90fb1b77d4dda7dee67bfe4a2676b35
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
0001-fix-_POSIX_C_SOURCE.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
|
@ -1,4 +1,5 @@
|
||||
Source: mecab
|
||||
Version: 1.0
|
||||
Version: 2019-09-25
|
||||
Port-Version: 1
|
||||
Description: A morphological analysis engine based on CRF
|
||||
Supports: !(uwp|arm|arm64)
|
||||
Supports: !(uwp|arm|arm64)
|
||||
|
@ -7,8 +7,8 @@ include(vcpkg_common_functions)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO taku910/mecab
|
||||
REF master
|
||||
SHA512 2a7f1d159ddca846357b5bcab2d2b5de2e6a27dca4301cdd1cc52c155c352f9c7030b77d1187afe9c0a7f1b131a1acdcc40ee81ce7ba5c0fa6b2325c56676353
|
||||
REF 3a07c4eefaffb4e7a0690a7f4e5e0263d3ddb8a3
|
||||
SHA512 d3288cca7207daf66df4349819b64fc9cc069c775512cf0607ca855e9e5512509c36b0e2bb0e955478acae13ff0c35df7442f18a8458fab0ed664d62854c0b25
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
fix_wpath_unsigned.patch
|
||||
@ -27,4 +27,4 @@ vcpkg_fixup_cmake_targets()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(COPY ${SOURCE_PATH}/mecab/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/mecab)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/mecab/COPYING ${CURRENT_PACKAGES_DIR}/share/mecab/copyright)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/mecab/COPYING ${CURRENT_PACKAGES_DIR}/share/mecab/copyright)
|
||||
|
29
ports/minizip/0001-remove-ifndef-NOUNCRYPT.patch
Normal file
29
ports/minizip/0001-remove-ifndef-NOUNCRYPT.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From a6fd3992d44053a523a67aa16f5ae88fecfb20e1 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 14:09:53 -0700
|
||||
Subject: [PATCH 1/2] remove `#ifndef NOUNCRYPT`
|
||||
|
||||
enable decrypt support for password-encrypted ZIP files
|
||||
|
||||
---
|
||||
contrib/minizip/unzip.c | 4 ----
|
||||
1 file changed, 4 deletions(-)
|
||||
|
||||
diff --git a/contrib/minizip/unzip.c b/contrib/minizip/unzip.c
|
||||
index bcfb941..1895a0f 100644
|
||||
--- a/contrib/minizip/unzip.c
|
||||
+++ b/contrib/minizip/unzip.c
|
||||
@@ -68,10 +68,6 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
-#ifndef NOUNCRYPT
|
||||
- #define NOUNCRYPT
|
||||
-#endif
|
||||
-
|
||||
#include "zlib.h"
|
||||
#include "unzip.h"
|
||||
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
29
ports/minizip/0002-add-declaration-for-mkdir.patch
Normal file
29
ports/minizip/0002-add-declaration-for-mkdir.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From 6c38b6f544b55f9fc554f0fe22e2cbaddfaed7f8 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 14:15:04 -0700
|
||||
Subject: [PATCH 2/2] add declaration for mkdir
|
||||
|
||||
It's invalid in C99 to implicitly declare mkdir
|
||||
|
||||
---
|
||||
contrib/minizip/miniunz.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/contrib/minizip/miniunz.c b/contrib/minizip/miniunz.c
|
||||
index 3d65401..5341af2 100644
|
||||
--- a/contrib/minizip/miniunz.c
|
||||
+++ b/contrib/minizip/miniunz.c
|
||||
@@ -12,6 +12,10 @@
|
||||
Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
|
||||
*/
|
||||
|
||||
+#if !defined(_WIN32)
|
||||
+#include <sys/stat.h>
|
||||
+#endif
|
||||
+
|
||||
#if (!defined(_WIN32)) && (!defined(WIN32)) && (!defined(__APPLE__))
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
#define __USE_FILE_OFFSET64
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -1,5 +1,6 @@
|
||||
Source: minizip
|
||||
Version: 1.2.11-6
|
||||
Version: 1.2.11
|
||||
Port-Version: 7
|
||||
Build-Depends: zlib
|
||||
Homepage: https://github.com/madler/zlib
|
||||
Description: Zip compression library
|
||||
|
@ -1,16 +0,0 @@
|
||||
diff --git a/contrib/minizip/unzip.c b/contrib/minizip/unzip.c
|
||||
index f12e3329..bfc05f77 100644
|
||||
--- a/contrib/minizip/unzip.c
|
||||
+++ b/contrib/minizip/unzip.c
|
||||
@@ -68,10 +68,6 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
-#ifndef NOUNCRYPT
|
||||
- #define NOUNCRYPT
|
||||
-#endif
|
||||
-
|
||||
#include "zlib.h"
|
||||
#include "unzip.h"
|
||||
|
||||
|
@ -7,7 +7,9 @@ vcpkg_from_github(
|
||||
REF v1.2.11
|
||||
SHA512 104c62ed1228b5f1199bc037081861576900eb0697a226cafa62a35c4c890b5cb46622e399f9aad82ee5dfb475bae26ae75e2bd6da3d261361b1c8b996970faf
|
||||
HEAD_REF master
|
||||
PATCHES minizip.patch # enable decrypt support for password-encrypted ZIP files
|
||||
PATCHES
|
||||
0001-remove-ifndef-NOUNCRYPT.patch
|
||||
0002-add-declaration-for-mkdir.patch
|
||||
)
|
||||
|
||||
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||||
@ -18,13 +20,13 @@ configure_file(${CMAKE_CURRENT_LIST_DIR}/minizipConfig.cmake.in ${SOURCE_PATH}/
|
||||
configure_file(${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt ${SOURCE_PATH}/CMakeLists.txt COPYONLY)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
${FEATURE_OPTIONS}
|
||||
OPTIONS_DEBUG
|
||||
-DDISABLE_INSTALL_HEADERS=ON
|
||||
-DDISABLE_INSTALL_TOOLS=ON
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
${FEATURE_OPTIONS}
|
||||
OPTIONS_DEBUG
|
||||
-DDISABLE_INSTALL_HEADERS=ON
|
||||
-DDISABLE_INSTALL_TOOLS=ON
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
@ -1,26 +1,39 @@
|
||||
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
|
||||
index e1521f1..bd60b75 100644
|
||||
--- a/lib/CMakeLists.txt
|
||||
+++ b/lib/CMakeLists.txt
|
||||
@@ -87,7 +87,7 @@ set_target_properties(libmosquitto PROPERTIES
|
||||
SOVERSION 1
|
||||
)
|
||||
|
||||
-install(TARGETS libmosquitto RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
||||
+install(TARGETS libmosquitto RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
||||
|
||||
if (WITH_STATIC_LIBRARIES)
|
||||
add_library(libmosquitto_static STATIC ${C_SRC})
|
||||
diff --git a/lib/cpp/CMakeLists.txt b/lib/cpp/CMakeLists.txt
|
||||
index b39ac3f..5805244 100644
|
||||
--- a/lib/cpp/CMakeLists.txt
|
||||
+++ b/lib/cpp/CMakeLists.txt
|
||||
@@ -13,7 +13,7 @@ set_target_properties(mosquittopp PROPERTIES
|
||||
VERSION ${VERSION}
|
||||
SOVERSION 1
|
||||
)
|
||||
-install(TARGETS mosquittopp RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
||||
+install(TARGETS mosquittopp RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
||||
|
||||
if (WITH_STATIC_LIBRARIES)
|
||||
add_library(mosquittopp_static STATIC
|
||||
From df5ec7ba4e7b1516a2636e47c33a4a6161b5c422 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 15:38:44 -0700
|
||||
Subject: [PATCH 1/5] add archive destination to install
|
||||
|
||||
---
|
||||
lib/CMakeLists.txt | 2 +-
|
||||
lib/cpp/CMakeLists.txt | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
|
||||
index e1521f1..bd60b75 100644
|
||||
--- a/lib/CMakeLists.txt
|
||||
+++ b/lib/CMakeLists.txt
|
||||
@@ -87,7 +87,7 @@ set_target_properties(libmosquitto PROPERTIES
|
||||
SOVERSION 1
|
||||
)
|
||||
|
||||
-install(TARGETS libmosquitto RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
||||
+install(TARGETS libmosquitto RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
||||
|
||||
if (WITH_STATIC_LIBRARIES)
|
||||
add_library(libmosquitto_static STATIC ${C_SRC})
|
||||
diff --git a/lib/cpp/CMakeLists.txt b/lib/cpp/CMakeLists.txt
|
||||
index b39ac3f..5805244 100644
|
||||
--- a/lib/cpp/CMakeLists.txt
|
||||
+++ b/lib/cpp/CMakeLists.txt
|
||||
@@ -13,7 +13,7 @@ set_target_properties(mosquittopp PROPERTIES
|
||||
VERSION ${VERSION}
|
||||
SOVERSION 1
|
||||
)
|
||||
-install(TARGETS mosquittopp RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
||||
+install(TARGETS mosquittopp RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
||||
|
||||
if (WITH_STATIC_LIBRARIES)
|
||||
add_library(mosquittopp_static STATIC
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -1,8 +1,18 @@
|
||||
From 675ba1de6c01b4050ae3cc60916d3f0a72b03105 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 15:40:55 -0700
|
||||
Subject: [PATCH 2/5] win64 support
|
||||
|
||||
---
|
||||
CMakeLists.txt | 7 +------
|
||||
config.h | 2 +-
|
||||
2 files changed, 2 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index e58d072..e582a25 100644
|
||||
index e11959c..1a92fe3 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -54,12 +54,7 @@ option(WITH_THREADING "Include client library threading support?" ON)
|
||||
@@ -57,12 +57,7 @@ option(WITH_THREADING "Include client library threading support?" ON)
|
||||
if (WITH_THREADING)
|
||||
add_definitions("-DWITH_THREADING")
|
||||
if (WIN32)
|
||||
@ -17,15 +27,18 @@ index e58d072..e582a25 100644
|
||||
find_library(LIBPTHREAD pthread)
|
||||
if (LIBPTHREAD)
|
||||
diff --git a/config.h b/config.h
|
||||
index b7a7616..bceb92a 100644
|
||||
index 5cce39e..c673bf4 100644
|
||||
--- a/config.h
|
||||
+++ b/config.h
|
||||
@@ -27,7 +27,7 @@
|
||||
@@ -31,7 +31,7 @@
|
||||
# define EPROTO ECONNABORTED
|
||||
#endif
|
||||
|
||||
-#ifdef WIN32
|
||||
+#if defined(WIN32) || defined(WIN64)
|
||||
+#ifdef _WIN32
|
||||
# ifndef strcasecmp
|
||||
# define strcasecmp strcmpi
|
||||
# endif
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
24
ports/mosquitto/0003-add-find_package-libwebsockets.patch
Normal file
24
ports/mosquitto/0003-add-find_package-libwebsockets.patch
Normal file
@ -0,0 +1,24 @@
|
||||
From 902ab5bf91937188d3ebf0aece81a704729e5580 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 15:42:53 -0700
|
||||
Subject: [PATCH 3/5] add find_package libwebsockets
|
||||
|
||||
---
|
||||
CMakeLists.txt | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 1a92fe3..3c78b2c 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -45,6 +45,7 @@ endif (WITH_TLS)
|
||||
|
||||
option(WITH_SOCKS "Include SOCKS5 support?" ON)
|
||||
if (WITH_SOCKS)
|
||||
+ find_package(Libwebsockets CONFIG REQUIRED)
|
||||
add_definitions("-DWITH_SOCKS")
|
||||
endif (WITH_SOCKS)
|
||||
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -1,38 +1,51 @@
|
||||
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
|
||||
index bd60b75..cc01a2a 100644
|
||||
--- a/lib/CMakeLists.txt
|
||||
+++ b/lib/CMakeLists.txt
|
||||
@@ -60,7 +60,7 @@ if (UNIX AND NOT APPLE)
|
||||
endif (UNIX AND NOT APPLE)
|
||||
|
||||
if (WIN32)
|
||||
- set (LIBRARIES ${LIBRARIES} ws2_32)
|
||||
+ set (LIBRARIES ${LIBRARIES} ws2_32 crypt32)
|
||||
endif (WIN32)
|
||||
|
||||
if (WITH_SRV)
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 7898ff5..23b3fe8 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -158,7 +158,7 @@ if (UNIX)
|
||||
endif (UNIX)
|
||||
|
||||
if (WIN32)
|
||||
- set (MOSQ_LIBS ${MOSQ_LIBS} ws2_32)
|
||||
+ set (MOSQ_LIBS ${MOSQ_LIBS} ws2_32 crypt32)
|
||||
endif (WIN32)
|
||||
|
||||
if (WITH_WEBSOCKETS)
|
||||
@@ -189,6 +189,10 @@ install(FILES mosquitto_broker.h mosquitto_plugin.h DESTINATION "${CMAKE_INSTALL
|
||||
|
||||
if (WITH_TLS)
|
||||
add_executable(mosquitto_passwd mosquitto_passwd.c)
|
||||
- target_link_libraries(mosquitto_passwd ${OPENSSL_LIBRARIES})
|
||||
+ if(WIN32)
|
||||
+ target_link_libraries(mosquitto_passwd ${OPENSSL_LIBRARIES} ws2_32 crypt32)
|
||||
+ else()
|
||||
+ target_link_libraries(mosquitto_passwd ${OPENSSL_LIBRARIES})
|
||||
+ endif()
|
||||
install(TARGETS mosquitto_passwd RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
|
||||
endif (WITH_TLS)
|
||||
From 4bb19e77e95bc505d32e098190ffbf056810017c Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 15:44:42 -0700
|
||||
Subject: [PATCH 4/5] support static build
|
||||
|
||||
---
|
||||
lib/CMakeLists.txt | 2 +-
|
||||
src/CMakeLists.txt | 8 ++++++--
|
||||
2 files changed, 7 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
|
||||
index bd60b75..cc01a2a 100644
|
||||
--- a/lib/CMakeLists.txt
|
||||
+++ b/lib/CMakeLists.txt
|
||||
@@ -60,7 +60,7 @@ if (UNIX AND NOT APPLE)
|
||||
endif (UNIX AND NOT APPLE)
|
||||
|
||||
if (WIN32)
|
||||
- set (LIBRARIES ${LIBRARIES} ws2_32)
|
||||
+ set (LIBRARIES ${LIBRARIES} ws2_32 crypt32)
|
||||
endif (WIN32)
|
||||
|
||||
if (WITH_SRV)
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 7898ff5..f066aea 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -158,7 +158,7 @@ if (UNIX)
|
||||
endif (UNIX)
|
||||
|
||||
if (WIN32)
|
||||
- set (MOSQ_LIBS ${MOSQ_LIBS} ws2_32)
|
||||
+ set (MOSQ_LIBS ${MOSQ_LIBS} ws2_32 crypt32)
|
||||
endif (WIN32)
|
||||
|
||||
if (WITH_WEBSOCKETS)
|
||||
@@ -189,6 +189,10 @@ install(FILES mosquitto_broker.h mosquitto_plugin.h DESTINATION "${CMAKE_INSTALL
|
||||
|
||||
if (WITH_TLS)
|
||||
add_executable(mosquitto_passwd mosquitto_passwd.c)
|
||||
- target_link_libraries(mosquitto_passwd ${OPENSSL_LIBRARIES})
|
||||
+ if(WIN32)
|
||||
+ target_link_libraries(mosquitto_passwd ${OPENSSL_LIBRARIES} ws2_32 crypt32)
|
||||
+ else()
|
||||
+ target_link_libraries(mosquitto_passwd ${OPENSSL_LIBRARIES})
|
||||
+ endif()
|
||||
install(TARGETS mosquitto_passwd RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
|
||||
endif (WITH_TLS)
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
27
ports/mosquitto/0005-add-mach.h-include.patch
Normal file
27
ports/mosquitto/0005-add-mach.h-include.patch
Normal file
@ -0,0 +1,27 @@
|
||||
From af7d62dceb064b5a8458616536bc27329ad236b1 Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Tue, 22 Sep 2020 15:46:06 -0700
|
||||
Subject: [PATCH 5/5] add mach.h include
|
||||
|
||||
---
|
||||
lib/mosquitto.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/lib/mosquitto.c b/lib/mosquitto.c
|
||||
index 795013e..cd00513 100644
|
||||
--- a/lib/mosquitto.c
|
||||
+++ b/lib/mosquitto.c
|
||||
@@ -33,6 +33,10 @@ Contributors:
|
||||
#include "packet_mosq.h"
|
||||
#include "will_mosq.h"
|
||||
|
||||
+#if defined(__APPLE__)
|
||||
+#include <mach/mach_time.h>
|
||||
+#endif
|
||||
+
|
||||
|
||||
void mosquitto__destroy(struct mosquitto *mosq);
|
||||
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 473931c8f..a8aa78e5d 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -45,6 +45,7 @@ endif (WITH_TLS)
|
||||
|
||||
option(WITH_SOCKS "Include SOCKS5 support?" ON)
|
||||
if (WITH_SOCKS)
|
||||
+ find_package(Libwebsockets CONFIG REQUIRED)
|
||||
add_definitions("-DWITH_SOCKS")
|
||||
endif (WITH_SOCKS)
|
||||
|
@ -5,10 +5,11 @@ vcpkg_from_github(
|
||||
SHA512 c192b53f52ce9dc8e02d31acd9e93c00cafbe543b038d7619e6b653f102126872bbd485c94604bca9287e71a5dfe0de2f4d8d3f51cdd5c37f90fd2a6535bd89b
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
archive-dest.patch
|
||||
win64-cmake.patch
|
||||
libwebsockets.patch
|
||||
support-static-build.patch
|
||||
0001-add-archive-destination-to-install.patch
|
||||
0002-win64-support.patch
|
||||
0003-add-find_package-libwebsockets.patch
|
||||
0004-support-static-build.patch
|
||||
0005-add-mach.h-include.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "mosquitto",
|
||||
"version-string": "1.6.8",
|
||||
"port-version": 2,
|
||||
"port-version": 3,
|
||||
"description": "Mosquitto is an open source message broker that implements the MQ Telemetry Transport protocol versions 3.1 and 3.1.1, MQTT provides a lightweight method of carrying out messaging using a publish/subscribe model, This makes it suitable for machine to machine messaging such as with low power sensors or mobile devices such as phones, embedded computers or microcontrollers like the Arduino",
|
||||
"homepage": "https://mosquitto.org/download/",
|
||||
"dependencies": [
|
||||
|
27
ports/opencl/0001-include-unistd-for-gete-ug-id.patch
Normal file
27
ports/opencl/0001-include-unistd-for-gete-ug-id.patch
Normal file
@ -0,0 +1,27 @@
|
||||
From 0f783f1a8eac7a78bc92198e140d4a5c745382ca Mon Sep 17 00:00:00 2001
|
||||
From: Nicole Mazzuca <mazzucan@outlook.com>
|
||||
Date: Wed, 23 Sep 2020 11:50:21 -0700
|
||||
Subject: [PATCH] include unistd for gete?[ug]id
|
||||
|
||||
---
|
||||
loader/linux/icd_linux_envvars.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/loader/linux/icd_linux_envvars.c b/loader/linux/icd_linux_envvars.c
|
||||
index 4af5a08..92b0698 100644
|
||||
--- a/loader/linux/icd_linux_envvars.c
|
||||
+++ b/loader/linux/icd_linux_envvars.c
|
||||
@@ -25,6 +25,10 @@
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
+#if defined(__APPLE__)
|
||||
+#include <unistd.h>
|
||||
+#endif
|
||||
+
|
||||
char *khrIcd_getenv(const char *name) {
|
||||
// No allocation of memory necessary for Linux.
|
||||
return getenv(name);
|
||||
--
|
||||
2.24.3 (Apple Git-128)
|
||||
|
@ -56,6 +56,8 @@ vcpkg_from_github(
|
||||
REF e6e30ab9c7a61c171cf68d2e7f5c0ce28e2a4eae
|
||||
SHA512 f3563c0a4c094d3795d8386ec0db41189d350ab8136d80ae5de611ee3db87fbb0ab851bad2b33e111eddf135add5dbfef77d96979473ca5a23c036608d443378
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
0001-include-unistd-for-gete-ug-id.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
|
@ -268,6 +268,12 @@ if(WIN32)
|
||||
target_compile_definitions(stormlib PRIVATE UNICODE _UNICODE)
|
||||
endif()
|
||||
|
||||
if(NOT MSVC)
|
||||
# don't error on implicit declarations, which are invalid in C99 but commonly used
|
||||
target_compile_options(stormlib PRIVATE -Wno-error=implicit-function-declaration)
|
||||
endif()
|
||||
|
||||
|
||||
set_target_properties(stormlib PROPERTIES PUBLIC_HEADER "src/StormLib.h;src/StormPort.h")
|
||||
|
||||
install(TARGETS stormlib EXPORT stormlibConfig
|
||||
@ -277,4 +283,4 @@ install(TARGETS stormlib EXPORT stormlibConfig
|
||||
PUBLIC_HEADER DESTINATION include
|
||||
)
|
||||
|
||||
install(EXPORT stormlibConfig NAMESPACE stormlib:: DESTINATION share/stormlib)
|
||||
install(EXPORT stormlibConfig NAMESPACE stormlib:: DESTINATION share/stormlib)
|
||||
|
@ -1,4 +1,5 @@
|
||||
Source: stormlib
|
||||
Version: 2019-05-10-1
|
||||
Version: 2019-05-10
|
||||
Port-Version: 2
|
||||
Build-Depends: zlib, bzip2
|
||||
Description: StormLib is a library for opening and manipulating Blizzard MPQ files
|
||||
|
@ -1,5 +1,6 @@
|
||||
Source: unixodbc
|
||||
Version: 2.3.7-1
|
||||
Version: 2.3.7
|
||||
Port-Version: 2
|
||||
Homepage: https://github.com/lurcher/unixODBC
|
||||
Description: unixODBC is an Open Source ODBC sub-system and an ODBC SDK for Linux, Mac OSX, and UNIX
|
||||
Supports: (osx|linux)
|
||||
|
@ -8,6 +8,7 @@ vcpkg_from_github(
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
set(ENV{CFLAGS} "$ENV{CFLAGS} -Wno-error=implicit-function-declaration")
|
||||
vcpkg_configure_make(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
AUTOCONFIG
|
||||
|
@ -4,6 +4,7 @@
|
||||
variables:
|
||||
windows-pool: 'PrWin-2020-08-12'
|
||||
linux-pool: 'PrLin-2020-08-12'
|
||||
osx-pool: 'PrOsx-2020-09-17'
|
||||
|
||||
stages:
|
||||
- stage: check_cxx_formatting
|
||||
@ -81,6 +82,8 @@ stages:
|
||||
poolName: $(windows-pool)
|
||||
|
||||
- template: osx/azure-pipelines.yml
|
||||
parameters:
|
||||
poolName: $(osx-pool)
|
||||
|
||||
- template: linux/azure-pipelines.yml
|
||||
parameters:
|
||||
|
32
scripts/azure-pipelines/osx/Get-InternalBaseBox.ps1
Normal file
32
scripts/azure-pipelines/osx/Get-InternalBaseBox.ps1
Normal file
@ -0,0 +1,32 @@
|
||||
#!pwsh
|
||||
#Requires -Version 6.0
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Installs the base box at the specified version from the share.
|
||||
|
||||
.PARAMETER StorageAccountAccessKey
|
||||
An access key for the storage account.
|
||||
|
||||
.PARAMETER BaseBoxVersion
|
||||
The version of the base box to import; this should be a date, i.e. 2020-09-17
|
||||
#>
|
||||
[CmdletBinding(PositionalBinding=$False)]
|
||||
Param(
|
||||
[Parameter(Mandatory=$True)]
|
||||
[String]$StorageAccountAccessKey,
|
||||
[Parameter(Mandatory=$True)]
|
||||
[String]$BaseBoxVersion
|
||||
)
|
||||
|
||||
Set-StrictMode -Version 2
|
||||
|
||||
if (-not $IsMacOS) {
|
||||
throw 'This script should only be run on a macOS host'
|
||||
}
|
||||
|
||||
$encodedAccessKey = [System.Web.HttpUtility]::UrlEncode($StorageAccountAccessKey)
|
||||
|
||||
# TODO: finish this, once I have access to a mac again
|
||||
# mount_smbfs
|
||||
# vagrant box add
|
@ -67,3 +67,68 @@ $ sudo shutdown -r now
|
||||
|
||||
and wait for the machine to start back up. Then, start again from
|
||||
`Install-Prerequisites.ps1`.
|
||||
|
||||
## Creating a new Vagrant box
|
||||
|
||||
Whenever we want to install updated versions of the command line tools,
|
||||
or of macOS, we need to create a new vagrant box.
|
||||
This is pretty easy, but the results of the creation are not public,
|
||||
since we're concerned about licensing.
|
||||
However, if you're sure you're following Apple's licensing,
|
||||
you can set up your own vagrant boxes that are the same as ours by doing the following:
|
||||
|
||||
You'll need some prerequisites:
|
||||
|
||||
- macinbox - installable via `sudo gem install macinbox`
|
||||
- vagrant - found at <https://www.vagrantup.com/>
|
||||
- VirtualBox - found at <https://www.virtualbox.org/>
|
||||
- A macOS installer application - you can get this from the App Store (although I believe only the latest is available)
|
||||
- An Xcode Command Line Tools installer - you can get this from Apple's developer website,
|
||||
although you'll need to sign in first: <https://developer.apple.com/downloads>
|
||||
|
||||
First, you'll need to create a base box;
|
||||
this is where you determine what version of macOS is installed.
|
||||
|
||||
```
|
||||
> sudo macinbox \
|
||||
--box-format virtualbox \
|
||||
--name macos-ci-base \
|
||||
--installer <path to macOS installer> \
|
||||
--no-gui
|
||||
```
|
||||
|
||||
Once you've done that, create a Vagrantfile that looks like the following:
|
||||
|
||||
```rb
|
||||
Vagrant.configure('2') do |config|
|
||||
config.vm.box = 'macos-ci-base'
|
||||
config.vm.boot_timeout = 600
|
||||
end
|
||||
```
|
||||
|
||||
then, run the following in that vagrant directory:
|
||||
|
||||
```sh
|
||||
$ vagrant up
|
||||
$ vagrant scp <path to Command Line Tools for Xcode installer> :clt.dmg
|
||||
$ vagrant ssh -c 'hdiutil attach clt.dmg -mountpoint /Volumes/setup-installer'
|
||||
$ vagrant ssh -c 'sudo installer -pkg "/Volumes/setup-installer/Command Line Tools.pkg" -target /'
|
||||
$ vagrant ssh -c 'hdiutil detach /Volumes/setup-installer'
|
||||
$ vagrant ssh -c '/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"'
|
||||
$ vagrant package
|
||||
```
|
||||
|
||||
This will create a `package.box`, which is the box file for the base VM.
|
||||
Then, you can `vagrant box add <package.box> --name <name for the box>`,
|
||||
and you'll have the base vcpkg box added for purposes of `Setup-VagrantMachines.ps1`!
|
||||
|
||||
Once you've created the base box, if you're making it the new base box for the CI,
|
||||
upload it to the `vcpkgvagrant` storage account, to the `vagrant-boxes` share.
|
||||
Then, add the metadata about the box (the name and version) to the JSON file there.
|
||||
Once you've done that, add the software versions below.
|
||||
|
||||
### VM Software Versions
|
||||
|
||||
* 2020-09-17:
|
||||
* macOS: 10.15.6
|
||||
* Xcode CLTs: 12
|
||||
|
@ -10,6 +10,18 @@ Setup-VagrantMachines.ps1 sets up the virtual machines for
|
||||
vcpkg's macOS CI. It puts the VagrantFile and necessary
|
||||
configuration JSON file into ~/vagrant/vcpkg-eg-mac.
|
||||
|
||||
.PARAMETER MachineId
|
||||
The number to give the machine; should match [0-9]{2}.
|
||||
|
||||
.PARAMETER BoxVersion
|
||||
The version of the box to use.
|
||||
|
||||
.PARAMETER AgentPool
|
||||
The agent pool to add the machine to.
|
||||
|
||||
.PARAMETER DevopsUrl
|
||||
The URL of the ADO instance; for example, https://dev.azure.com/vcpkg is the vcpkg ADO instance.
|
||||
|
||||
.PARAMETER Pat
|
||||
The personal access token which has Read & Manage permissions on the ADO pool.
|
||||
|
||||
@ -26,18 +38,19 @@ The URN of the archives share; looks like `foo.windows.core.net`.
|
||||
The archives share name.
|
||||
|
||||
.PARAMETER BaseName
|
||||
The base name for the vagrant VM; the machine name is $BaseName-$MachineIdentifiers.
|
||||
The base name for the vagrant VM; the machine name is $BaseName-$MachineId.
|
||||
Defaults to 'vcpkg-eg-mac'.
|
||||
|
||||
.PARAMETER BoxName
|
||||
The name of the box to use. Defaults to 'vcpkg/macos-ci',
|
||||
which is only available internally.
|
||||
|
||||
.PARAMETER Force
|
||||
Delete any existing vagrant/vcpkg-eg-mac directory.
|
||||
|
||||
.PARAMETER DiskSize
|
||||
The size to make the temporary disks in gigabytes. Defaults to 425.
|
||||
|
||||
.PARAMETER MachineIdentifiers
|
||||
The numbers to give the machines; should match [0-9]{2}.
|
||||
|
||||
.INPUTS
|
||||
None
|
||||
|
||||
@ -46,6 +59,18 @@ None
|
||||
#>
|
||||
[CmdletBinding(PositionalBinding=$False)]
|
||||
Param(
|
||||
[Parameter(Mandatory=$True)]
|
||||
[String]$MachineId,
|
||||
|
||||
[Parameter(Mandatory=$True)]
|
||||
[String]$BoxVersion,
|
||||
|
||||
[Parameter(Mandatory=$True)]
|
||||
[String]$AgentPool,
|
||||
|
||||
[Parameter(Mandatory=$True)]
|
||||
[String]$DevopsUrl,
|
||||
|
||||
[Parameter(Mandatory=$True)]
|
||||
[String]$Pat,
|
||||
|
||||
@ -64,14 +89,14 @@ Param(
|
||||
[Parameter()]
|
||||
[String]$BaseName = 'vcpkg-eg-mac',
|
||||
|
||||
[Parameter()]
|
||||
[String]$BoxName = 'vcpkg/macos-ci',
|
||||
|
||||
[Parameter()]
|
||||
[Switch]$Force,
|
||||
|
||||
[Parameter()]
|
||||
[Int]$DiskSize = 425,
|
||||
|
||||
[Parameter(Mandatory=$True, ValueFromRemainingArguments)]
|
||||
[String[]]$MachineIdentifiers
|
||||
[Int]$DiskSize = 425
|
||||
)
|
||||
|
||||
Set-StrictMode -Version 2
|
||||
@ -80,27 +105,33 @@ if (-not $IsMacOS) {
|
||||
throw 'This script should only be run on a macOS host'
|
||||
}
|
||||
|
||||
if (Test-Path '~/vagrant') {
|
||||
if (Test-Path '~/vagrant/vcpkg-eg-mac') {
|
||||
if ($Force) {
|
||||
Write-Host 'Deleting existing directories'
|
||||
Remove-Item -Recurse -Force -Path '~/vagrant' | Out-Null
|
||||
Remove-Item -Recurse -Force -Path '~/vagrant/vcpkg-eg-mac' | Out-Null
|
||||
} else {
|
||||
throw '~/vagrant already exists; try re-running with -Force'
|
||||
throw '~/vagrant/vcpkg-eg-mac already exists; try re-running with -Force'
|
||||
}
|
||||
}
|
||||
|
||||
Write-Host 'Creating new directories'
|
||||
New-Item -ItemType 'Directory' -Path '~/vagrant' | Out-Null
|
||||
if (-not (Test-Path -Path '~/vagrant'))
|
||||
{
|
||||
New-Item -ItemType 'Directory' -Path '~/vagrant' | Out-Null
|
||||
}
|
||||
New-Item -ItemType 'Directory' -Path '~/vagrant/vcpkg-eg-mac' | Out-Null
|
||||
|
||||
Copy-Item `
|
||||
-Path "$PSScriptRoot/configuration/VagrantFile" `
|
||||
-Destination '~/vagrant/vcpkg-eg-mac/VagrantFile'
|
||||
-Path "$PSScriptRoot/configuration/Vagrantfile" `
|
||||
-Destination '~/vagrant/vcpkg-eg-mac/Vagrantfile'
|
||||
|
||||
$configuration = @{
|
||||
pat = $Pat;
|
||||
base_name = $BaseName;
|
||||
machine_identifiers = $MachineIdentifiers;
|
||||
agent_pool = $AgentPool;
|
||||
devops_url = $DevopsUrl;
|
||||
machine_name = "${BaseName}-${MachineId}";
|
||||
box_name = $BoxName;
|
||||
box_version = $BoxVersion;
|
||||
disk_size = $DiskSize;
|
||||
archives = @{
|
||||
username = $ArchivesUsername;
|
||||
|
@ -5,8 +5,7 @@
|
||||
jobs:
|
||||
- job: x64_osx
|
||||
pool:
|
||||
name: vcpkgAgentPool
|
||||
demands: Agent.OS -equals Darwin
|
||||
name: ${{ parameters.poolName }}
|
||||
workspace:
|
||||
clean: resources
|
||||
timeoutInMinutes: 1440 # 1 day
|
||||
@ -19,16 +18,6 @@ jobs:
|
||||
steps:
|
||||
- bash: df -h
|
||||
displayName: 'Report on Disk Space'
|
||||
- bash: |
|
||||
brew list autoconf || brew install autoconf
|
||||
brew list automake || brew install automake
|
||||
brew list pkg-config || brew install pkg-config
|
||||
brew list libtool || brew install libtool
|
||||
brew list bison || brew install bison
|
||||
brew list gfortran || brew cask install gfortran
|
||||
brew list mono || brew install mono
|
||||
brew list yasm || brew install yasm
|
||||
displayName: 'Install brew dependencies'
|
||||
- bash: |
|
||||
sudo mkdir ${{ variables.VCPKG_DOWNLOADS }} || 0
|
||||
sudo chmod 777 ${{ variables.VCPKG_DOWNLOADS }} || 0
|
||||
|
@ -1,136 +0,0 @@
|
||||
require 'json'
|
||||
|
||||
require "erb"
|
||||
include ERB::Util
|
||||
|
||||
configuration = JSON.parse(File.read('./vagrant-configuration.json'))
|
||||
|
||||
servers = configuration['machine_identifiers'].map do |id|
|
||||
{
|
||||
:hostname => "#{configuration['base_name']}-#{id}",
|
||||
:box => 'ramsey/macos-catalina',
|
||||
:ram => 12000,
|
||||
:cpu => 5
|
||||
}
|
||||
end
|
||||
|
||||
brew_formulas = [
|
||||
'autoconf',
|
||||
'automake',
|
||||
'libtool',
|
||||
'bison' ]
|
||||
|
||||
brew_cask_formulas = [
|
||||
'powershell',
|
||||
'gfortran' ]
|
||||
|
||||
azure_agent_url = 'https://vstsagentpackage.azureedge.net/agent/2.171.1/vsts-agent-osx-x64-2.171.1.tar.gz'
|
||||
devops_url = 'https://dev.azure.com/vcpkg'
|
||||
agent_pool = 'vcpkgAgentPool'
|
||||
pat = configuration['pat']
|
||||
archives = configuration['archives']
|
||||
archives_url = "//#{archives['username']}:#{url_encode(archives['access_key'])}@#{archives['urn']}/#{archives['share']}"
|
||||
|
||||
Vagrant.configure('2') do |config|
|
||||
# give them extra time to boot up
|
||||
config.vm.boot_timeout = 600
|
||||
|
||||
servers.each do |machine|
|
||||
config.vm.define machine[:hostname] do |node|
|
||||
|
||||
node.vm.box = machine[:box]
|
||||
node.vm.hostname = machine[:hostname]
|
||||
node.vm.synced_folder '.', '/vagrant', disabled: true
|
||||
|
||||
diskname = "#{machine[:hostname]}-data.vmdk"
|
||||
|
||||
# I don't like this, but as far as I can tell, it's the only way
|
||||
# to do this. When vagrant finishes the `disk` feature, switch
|
||||
# over to that -- Nicole Mazzuca
|
||||
if (not File.exists? diskname) then
|
||||
system "VBoxManage createmedium --filename #{diskname} --size #{1024 * 220}"
|
||||
end
|
||||
|
||||
node.vm.provider 'virtualbox' do |vb|
|
||||
vb.memory = machine[:ram]
|
||||
vb.cpus = machine[:cpu]
|
||||
vb.customize ['modifyvm', :id, '--ioapic', 'on']
|
||||
vb.customize ['storageattach', :id,
|
||||
'--storagectl', 'SATA Controller',
|
||||
'--port', '1', '--device', '0', '--type', 'hdd',
|
||||
'--medium', "#{diskname}"
|
||||
]
|
||||
end
|
||||
|
||||
node.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Format and mount the data filesystem',
|
||||
inline: 'diskutil partitionDisk /dev/disk0 1 GPT jhfs+ data 0',
|
||||
privileged: true
|
||||
|
||||
node.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Link the data filesystem to the home directory',
|
||||
inline: "ln -s /Volumes/data ~/Data",
|
||||
privileged: false
|
||||
|
||||
node.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Download azure agent',
|
||||
inline: "curl -s -o ~/Downloads/azure-agent.tar.gz #{azure_agent_url}",
|
||||
privileged: false
|
||||
|
||||
node.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Unpack azure agent',
|
||||
inline: 'mkdir myagent; cd myagent; tar xf ~/Downloads/azure-agent.tar.gz',
|
||||
privileged: false
|
||||
|
||||
node.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Install brew and xcode command line tools',
|
||||
inline: '/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"',
|
||||
privileged: false
|
||||
|
||||
node.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Install brew applications',
|
||||
inline: "brew install #{brew_formulas.join(' ')} && brew cask install #{brew_cask_formulas.join(' ')}",
|
||||
privileged: false
|
||||
|
||||
node.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Create archives mountpoint',
|
||||
inline: 'mkdir ~/Data/archives',
|
||||
privileged: false
|
||||
|
||||
node.vm.provision "shell",
|
||||
run: 'once',
|
||||
name: 'Mount archives directory',
|
||||
inline: "mount_smbfs -d 777 -f 777 #{archives_url} ~/Data/archives",
|
||||
privileged: false
|
||||
|
||||
node.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Add VM to azure agent pool',
|
||||
inline: "cd ~/myagent;\
|
||||
./config.sh --unattended \
|
||||
--url #{devops_url} \
|
||||
--work ~/Data/work \
|
||||
--auth pat --token #{pat} \
|
||||
--pool #{agent_pool} \
|
||||
--agent `hostname` \
|
||||
--replace \
|
||||
--acceptTeeEula",
|
||||
privileged: false
|
||||
|
||||
# Start listening for jobs
|
||||
node.vm.provision 'shell',
|
||||
run: 'always',
|
||||
name: 'Start running azure pipelines',
|
||||
inline: 'cd /Users/vagrant/myagent;\
|
||||
nohup ./run.sh&',
|
||||
privileged: false
|
||||
end
|
||||
end
|
||||
end
|
129
scripts/azure-pipelines/osx/configuration/Vagrantfile
vendored
Normal file
129
scripts/azure-pipelines/osx/configuration/Vagrantfile
vendored
Normal file
@ -0,0 +1,129 @@
|
||||
require 'json'
|
||||
|
||||
require "erb"
|
||||
include ERB::Util
|
||||
|
||||
configuration = JSON.parse(File.read('./vagrant-configuration.json'))
|
||||
|
||||
server = {
|
||||
:hostname => configuration['machine_name'],
|
||||
:box => configuration['box_name'],
|
||||
:box_version => configuration['box_version'],
|
||||
:disk_size => configuration['disk_size'],
|
||||
:ram => 12000,
|
||||
:cpu => 5
|
||||
}
|
||||
|
||||
brew_formulas = [
|
||||
'autoconf',
|
||||
'automake',
|
||||
'bison',
|
||||
'libtool',
|
||||
'mono',
|
||||
'pkg-config',
|
||||
'yasm' ]
|
||||
|
||||
brew_cask_formulas = [
|
||||
'powershell',
|
||||
'gfortran' ]
|
||||
|
||||
azure_agent_url = 'https://vstsagentpackage.azureedge.net/agent/2.171.1/vsts-agent-osx-x64-2.171.1.tar.gz'
|
||||
devops_url = configuration['devops_url']
|
||||
agent_pool = configuration['agent_pool']
|
||||
pat = configuration['pat']
|
||||
archives = configuration['archives']
|
||||
archives_url = "//#{archives['username']}:#{url_encode(archives['access_key'])}@#{archives['urn']}/#{archives['share']}"
|
||||
|
||||
Vagrant.configure('2') do |config|
|
||||
# give them extra time to boot up
|
||||
config.vm.boot_timeout = 600
|
||||
|
||||
config.vm.box = server[:box]
|
||||
config.vm.box_version = server[:box_version]
|
||||
config.vm.hostname = server[:hostname]
|
||||
config.vm.synced_folder '.', '/vagrant', disabled: true
|
||||
|
||||
diskname = "#{server[:hostname]}-data.vmdk"
|
||||
|
||||
# I don't like this, but as far as I can tell, it's the only way
|
||||
# to do this. When vagrant finishes the `disk` feature, switch
|
||||
# over to that -- Nicole Mazzuca
|
||||
if (not File.exists? diskname) then
|
||||
system "VBoxManage createmedium --filename #{diskname} --size #{1024 * server[:disk_size]}"
|
||||
end
|
||||
|
||||
config.vm.provider 'virtualbox' do |vb|
|
||||
vb.memory = server[:ram]
|
||||
vb.cpus = server[:cpu]
|
||||
vb.customize ['modifyvm', :id, '--ioapic', 'on']
|
||||
vb.customize ['storageattach', :id,
|
||||
'--storagectl', 'SATA Controller',
|
||||
'--port', '1', '--device', '0', '--type', 'hdd',
|
||||
'--medium', "#{diskname}"
|
||||
]
|
||||
end
|
||||
|
||||
config.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Format and mount the data filesystem',
|
||||
inline: 'diskutil partitionDisk /dev/disk0 1 GPT jhfs+ data 0',
|
||||
privileged: true
|
||||
|
||||
config.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Link the data filesystem to the home directory',
|
||||
inline: "ln -s /Volumes/data ~/Data",
|
||||
privileged: false
|
||||
|
||||
config.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Download azure agent',
|
||||
inline: "curl -s -o ~/Downloads/azure-agent.tar.gz #{azure_agent_url}",
|
||||
privileged: false
|
||||
|
||||
config.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Unpack azure agent',
|
||||
inline: 'mkdir myagent; cd myagent; tar xf ~/Downloads/azure-agent.tar.gz',
|
||||
privileged: false
|
||||
|
||||
config.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Install brew applications',
|
||||
inline: "brew install #{brew_formulas.join(' ')} && brew cask install #{brew_cask_formulas.join(' ')}",
|
||||
privileged: false
|
||||
|
||||
config.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Create archives mountpoint',
|
||||
inline: 'mkdir ~/Data/archives',
|
||||
privileged: false
|
||||
|
||||
config.vm.provision "shell",
|
||||
run: 'once',
|
||||
name: 'Mount archives directory',
|
||||
inline: "mount_smbfs -d 777 -f 777 #{archives_url} ~/Data/archives",
|
||||
privileged: false
|
||||
|
||||
config.vm.provision 'shell',
|
||||
run: 'once',
|
||||
name: 'Add VM to azure agent pool',
|
||||
inline: "cd ~/myagent;\
|
||||
./config.sh --unattended \
|
||||
--url #{devops_url} \
|
||||
--work ~/Data/work \
|
||||
--auth pat --token #{pat} \
|
||||
--pool #{agent_pool} \
|
||||
--agent `hostname` \
|
||||
--replace \
|
||||
--acceptTeeEula",
|
||||
privileged: false
|
||||
|
||||
# Start listening for jobs
|
||||
config.vm.provision 'shell',
|
||||
run: 'always',
|
||||
name: 'Start running azure pipelines',
|
||||
inline: 'cd /Users/vagrant/myagent;\
|
||||
nohup ./run.sh&',
|
||||
privileged: false
|
||||
end
|
@ -15,20 +15,24 @@
|
||||
"pat": {
|
||||
"type": "string"
|
||||
},
|
||||
"base_name": {
|
||||
"agent_pool": {
|
||||
"type": "string"
|
||||
},
|
||||
"devops_url": {
|
||||
"type": "string"
|
||||
},
|
||||
"machine_name": {
|
||||
"type": "string"
|
||||
},
|
||||
"box_name": {
|
||||
"type": "string"
|
||||
},
|
||||
"box_version": {
|
||||
"type": "string"
|
||||
},
|
||||
"disk_size": {
|
||||
"type": "integer"
|
||||
},
|
||||
"machine_identifiers": {
|
||||
"type": "array",
|
||||
|
||||
"items": {
|
||||
"type": "string",
|
||||
"pattern": "[0-9]{2}"
|
||||
}
|
||||
},
|
||||
"archives": {
|
||||
"type": "object",
|
||||
"required": [
|
||||
|
Loading…
x
Reference in New Issue
Block a user