diff --git a/ports/boost/CONTROL b/ports/boost/CONTROL index ec2e77ffab..964665b961 100644 --- a/ports/boost/CONTROL +++ b/ports/boost/CONTROL @@ -1,4 +1,4 @@ Source: boost -Version: 1.64-4 +Version: 1.64-5 Description: Peer-reviewed portable C++ source libraries Build-Depends: zlib, bzip2 diff --git a/ports/boost/portfile.cmake b/ports/boost/portfile.cmake index 79c2f02da6..b8d56ee90d 100644 --- a/ports/boost/portfile.cmake +++ b/ports/boost/portfile.cmake @@ -221,6 +221,9 @@ file( file(APPEND ${CURRENT_PACKAGES_DIR}/include/boost/config/user.hpp "\n#define BOOST_ALL_NO_LIB\n" ) +file(APPEND ${CURRENT_PACKAGES_DIR}/include/boost/config/user.hpp + "\n#undef BOOST_ALL_DYN_LINK\n" +) if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) file(APPEND ${CURRENT_PACKAGES_DIR}/include/boost/config/user.hpp diff --git a/ports/evpp/CONTROL b/ports/evpp/CONTROL new file mode 100644 index 0000000000..e9fedbeb52 --- /dev/null +++ b/ports/evpp/CONTROL @@ -0,0 +1,4 @@ +Source: evpp +Version: 0.5.0 +Description: A modern C++ network library based on libevent for developing high performance network services in TCP/UDP/HTTP protocols. +Build-Depends: glog, libevent diff --git a/ports/evpp/portfile.cmake b/ports/evpp/portfile.cmake new file mode 100644 index 0000000000..db6eb1198a --- /dev/null +++ b/ports/evpp/portfile.cmake @@ -0,0 +1,62 @@ +# 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 = +# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) +# + +include(vcpkg_common_functions) + +set(EVPP_LOCAL_TEST OFF) + +set(EVPP_VERSION 0.5.0) +if (EVPP_LOCAL_TEST) + set(EVPP_HASH c8e25c82a14788231a08fafb44b062cf57fd20e66437f3051d290d96b259aba47e4ac34916e04163b9d25383b1c7ba43f36880f4759390cbd25f776da6dc0738) + set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/evpp) + vcpkg_download_distfile(ARCHIVE + URLS "http://127.0.0.1:8000/evpp.zip" + FILENAME "evpp-${EVPP_VERSION}.zip" + SHA512 ${EVPP_HASH} + ) +else () + set(EVPP_HASH fce8ebfec8b22b137f827a886f9ef658d70e060cef3950600ac42136d87cdd9357d78897348ed1d1c112c5e04350626fb218b02cba190a2c2a6fb81136eb2d7d) + set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/evpp-${EVPP_VERSION}) + vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/Qihoo360/evpp/archive/v${EVPP_VERSION}.zip" + FILENAME "evpp-${EVPP_VERSION}.zip" + SHA512 ${EVPP_HASH} + ) +endif () + +message(STATUS "Begin to extract files ...") +vcpkg_extract_source_archive(${ARCHIVE}) + +message(STATUS "Building evpp project ...") + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS -DCMAKE_TOOLCHAIN_FILE=D:/git/vcpkg/scripts/buildsystems/vcpkg.cmake -DEVPP_VCPKG_BUILD=ON +) + +vcpkg_install_cmake() +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share) +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share/evpp) + +#remove duplicated files +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +# remove not used cmake files +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share ) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake ) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake ) + +# Handle copyright +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/evpp) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/evpp/LICENSE ${CURRENT_PACKAGES_DIR}/share/evpp/copyright) + +message(STATUS "Installing done") diff --git a/ports/fontconfig/CMakeLists.txt b/ports/fontconfig/CMakeLists.txt index ff1af19555..e32af9cbd4 100644 --- a/ports/fontconfig/CMakeLists.txt +++ b/ports/fontconfig/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.0) -project(fontconfig) +project(fontconfig C) add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_WARNINGS) add_definitions(-FI"${FC_INCLUDE_DIR}/config.h") @@ -45,6 +45,8 @@ add_library(fontconfig src/fcxml.c src/ftglue.c) +set_target_properties(fontconfig PROPERTIES DEFINE_SYMBOL "FcPublic=__declspec(dllexport)") + target_include_directories(fontconfig PRIVATE . ${FC_INCLUDE_DIR} ${FREETYPE_INCLUDE_DIR} diff --git a/ports/fontconfig/CONTROL b/ports/fontconfig/CONTROL index ecb371f15d..85a72c3fc6 100644 --- a/ports/fontconfig/CONTROL +++ b/ports/fontconfig/CONTROL @@ -1,4 +1,4 @@ Source: fontconfig -Version: 2.12.1 +Version: 2.12.3 Description: Library for configuring and customizing font access. Build-Depends: freetype, expat, libiconv diff --git a/ports/fontconfig/include/config.h b/ports/fontconfig/include/config.h index 8f21dda010..0fbdead6e4 100644 --- a/ports/fontconfig/include/config.h +++ b/ports/fontconfig/include/config.h @@ -1,9 +1,21 @@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ #define FC_CACHEDIR "./" /* The normal alignment of `double', in bytes. */ #define ALIGNOF_DOUBLE 8 +/* The normal alignment of `void *', in bytes. */ +#if defined(_WIN64) +#define ALIGNOF_VOID_P 8 +#else +#define ALIGNOF_VOID_P 4 +#endif + /* Use libxml2 instead of Expat */ /* #undef ENABLE_LIBXML2 */ @@ -14,7 +26,10 @@ /* #undef FC_ARCHITECTURE */ /* System font directory */ -#define FC_DEFAULT_FONTS "c:/windows/fonts" +#define FC_DEFAULT_FONTS "WINDOWSFONTDIR" + +/* The type of len parameter of the gperf hash/lookup function */ +#define FC_GPERF_SIZE_T size_t /* Define to nothing if C supports flexible array members, and to 1 if it does not. That way, with a declaration like `struct s { int n; double @@ -137,13 +152,6 @@ /* Define to 1 if you have the `readlink' function. */ /* #undef HAVE_READLINK */ -/* Define to 1 if you have the 'scandir' function. */ -/* #undef HAVE_SCANDIR */ - -/* Define to 1 if you have the 'scandir' function with int (* compar)(const - void *, const void *) */ -/* #undef HAVE_SCANDIR_VOID_P */ - /* Define to 1 if you have the header file. */ /* #undef HAVE_SCHED_H */ @@ -160,7 +168,7 @@ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the header file. */ -/* #undef HAVE_STRINGS_H */ +#define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 @@ -168,9 +176,6 @@ /* Define to 1 if `d_type' is a member of `struct dirent'. */ /* #undef HAVE_STRUCT_DIRENT_D_TYPE */ -/* Define to 1 if `st_mtim' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_MTIM */ - /* Define to 1 if `f_flags' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_FLAGS */ @@ -183,6 +188,9 @@ /* Define to 1 if `f_fstypename' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_FSTYPENAME */ +/* Define to 1 if `st_mtim' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_MTIM */ + /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ @@ -190,8 +198,7 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ -/* Define to 1 if you have the header file, and it defines `DIR'. - */ +/* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ @@ -200,6 +207,9 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_STATFS_H */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_STATVFS_H */ + /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 @@ -210,10 +220,10 @@ /* #undef HAVE_SYS_VFS_H */ /* Define to 1 if `usLowerOpticalPointSize' is a member of `TT_OS2'. */ -/* #undef HAVE_TT_OS2_USLOWEROPTICALPOINTSIZE */ +#define HAVE_TT_OS2_USLOWEROPTICALPOINTSIZE 1 /* Define to 1 if `usUpperOpticalPointSize' is a member of `TT_OS2'. */ -/* #undef HAVE_TT_OS2_USUPPEROPTICALPOINTSIZE */ +#define HAVE_TT_OS2_USUPPEROPTICALPOINTSIZE 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 @@ -233,24 +243,49 @@ /* Define to 1 if you have the `_mktemp_s' function. */ #define HAVE__MKTEMP_S 1 -/* Define to necessary symbol if this constant - uses a non-standard name on +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + +/* Name of package */ +#define PACKAGE "fontconfig" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "fontconfig" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "fontconfig 2.12.3" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "fontconfig" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "2.12.3" + +/* Define to necessary symbol if this constant uses a non-standard name on your system. */ /* #undef PTHREAD_CREATE_JOINABLE */ /* The size of `char', as computed by sizeof. */ -#define SIZEOF_CHAR 1 +/* #undef SIZEOF_CHAR */ /* The size of `int', as computed by sizeof. */ -#define SIZEOF_INT 4 +/* #undef SIZEOF_INT */ /* The size of `long', as computed by sizeof. */ -#define SIZEOF_LONG 4 +/* #undef SIZEOF_LONG */ /* The size of `short', as computed by sizeof. */ -#define SIZEOF_SHORT 2 +/* #undef SIZEOF_SHORT */ /* The size of `void*', as computed by sizeof. */ +/* #undef SIZEOF_VOIDP */ + /* The size of `void *', as computed by sizeof. */ #if defined(_WIN64) #define SIZEOF_VOIDP 8 @@ -264,4 +299,76 @@ #define STDC_HEADERS 1 /* Use iconv. */ -#define USE_ICONV 1 \ No newline at end of file +#define USE_ICONV 1 + +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# define _ALL_SOURCE 1 +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif +/* Enable threading extensions on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# define _POSIX_PTHREAD_SEMANTICS 1 +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# define _TANDEM_SOURCE 1 +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# define __EXTENSIONS__ 1 +#endif + + +/* Version number of package */ +#define VERSION "2.12.3" + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + +/* Enable large inode numbers on Mac OS X 10.5. */ +#ifndef _DARWIN_USE_64_BIT_INODE +# define _DARWIN_USE_64_BIT_INODE 1 +#endif + +/* Number of bits in a file offset, on hosts where this is settable. */ +#define _FILE_OFFSET_BITS 64 + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to 1 if on MINIX. */ +/* #undef _MINIX */ + +/* Define to 2 if the system does not provide POSIX.1 features except with + this defined. */ +/* #undef _POSIX_1_SOURCE */ + +/* Define to 1 if you need to in order for `stat' and other things to work. */ +/* #undef _POSIX_SOURCE */ + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to `int' if does not define. */ +/* #undef pid_t */ + +#include "config-fixups.h" diff --git a/ports/fontconfig/include/fcobjshash.h b/ports/fontconfig/include/fcobjshash.h index 1fe860a2f2..15829e8737 100644 --- a/ports/fontconfig/include/fcobjshash.h +++ b/ports/fontconfig/include/fcobjshash.h @@ -1,5 +1,5 @@ /* ANSI-C code produced by gperf version 3.0.4 */ -/* Command-line: gperf -m 100 src/fcobjshash.gperf */ +/* Command-line: gperf -m 100 fcobjshash.gperf */ /* Computed positions: -k'2-3' */ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ @@ -29,9 +29,9 @@ #error "gperf generated tables don't work with this execution character set. Please report a bug to ." #endif -#line 1 "src/fcobjshash.gperf" +#line 1 "fcobjshash.gperf" -#line 13 "src/fcobjshash.gperf" +#line 13 "fcobjshash.gperf" struct FcObjectTypeInfo { int name; int id; @@ -47,7 +47,7 @@ inline #endif #endif static unsigned int -FcObjectTypeHash (register const char *str, register unsigned int len) +FcObjectTypeHash (register const char *str, register FC_GPERF_SIZE_T len) { static const unsigned char asso_values[] = { @@ -191,7 +191,7 @@ __attribute__ ((__gnu_inline__)) #endif #endif const struct FcObjectTypeInfo * -FcObjectTypeLookup (register const char *str, register unsigned int len) +FcObjectTypeLookup (register const char *str, register FC_GPERF_SIZE_T len) { enum { @@ -205,106 +205,106 @@ FcObjectTypeLookup (register const char *str, register unsigned int len) static const struct FcObjectTypeInfo wordlist[] = { {-1}, {-1}, {-1}, {-1}, -#line 38 "src/fcobjshash.gperf" +#line 38 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str4,FC_FILE_OBJECT}, -#line 64 "src/fcobjshash.gperf" +#line 64 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str5,FC_COLOR_OBJECT}, {-1}, -#line 31 "src/fcobjshash.gperf" +#line 31 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str7,FC_FOUNDRY_OBJECT}, -#line 22 "src/fcobjshash.gperf" +#line 22 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str8,FC_FULLNAME_OBJECT}, -#line 29 "src/fcobjshash.gperf" +#line 29 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str9,FC_PIXEL_SIZE_OBJECT}, -#line 61 "src/fcobjshash.gperf" +#line 61 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str10,FC_PRGNAME_OBJECT}, {-1}, -#line 23 "src/fcobjshash.gperf" +#line 23 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str12,FC_FULLNAMELANG_OBJECT}, -#line 37 "src/fcobjshash.gperf" +#line 37 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str13,FC_GLOBAL_ADVANCE_OBJECT}, -#line 63 "src/fcobjshash.gperf" +#line 63 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str14,FC_POSTSCRIPT_NAME_OBJECT}, {-1}, -#line 34 "src/fcobjshash.gperf" +#line 34 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str16,FC_HINTING_OBJECT}, -#line 46 "src/fcobjshash.gperf" +#line 46 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str17,FC_MINSPACE_OBJECT}, -#line 33 "src/fcobjshash.gperf" +#line 33 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str18,FC_HINT_STYLE_OBJECT}, -#line 54 "src/fcobjshash.gperf" +#line 54 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str19,FC_FONTFORMAT_OBJECT}, -#line 52 "src/fcobjshash.gperf" +#line 52 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str20,FC_FONTVERSION_OBJECT}, -#line 60 "src/fcobjshash.gperf" +#line 60 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str21,FC_FONT_FEATURES_OBJECT}, -#line 41 "src/fcobjshash.gperf" +#line 41 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str22,FC_OUTLINE_OBJECT}, -#line 36 "src/fcobjshash.gperf" +#line 36 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str23,FC_AUTOHINT_OBJECT}, -#line 43 "src/fcobjshash.gperf" +#line 43 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str24,FC_DPI_OBJECT}, -#line 62 "src/fcobjshash.gperf" +#line 62 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str25,FC_HASH_OBJECT}, -#line 24 "src/fcobjshash.gperf" +#line 24 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str26,FC_SLANT_OBJECT}, -#line 28 "src/fcobjshash.gperf" +#line 28 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str27,FC_ASPECT_OBJECT}, -#line 27 "src/fcobjshash.gperf" +#line 27 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str28,FC_SIZE_OBJECT}, -#line 45 "src/fcobjshash.gperf" +#line 45 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str29,FC_SCALE_OBJECT}, -#line 65 "src/fcobjshash.gperf" +#line 65 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str30,FC_SYMBOL_OBJECT}, -#line 40 "src/fcobjshash.gperf" +#line 40 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str31,FC_RASTERIZER_OBJECT}, -#line 42 "src/fcobjshash.gperf" +#line 42 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str32,FC_SCALABLE_OBJECT}, -#line 32 "src/fcobjshash.gperf" +#line 32 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str33,FC_ANTIALIAS_OBJECT}, -#line 51 "src/fcobjshash.gperf" +#line 51 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str34,FC_LANG_OBJECT}, -#line 20 "src/fcobjshash.gperf" +#line 20 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str35,FC_STYLE_OBJECT}, -#line 18 "src/fcobjshash.gperf" +#line 18 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str36,FC_FAMILY_OBJECT}, -#line 44 "src/fcobjshash.gperf" +#line 44 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str37,FC_RGBA_OBJECT}, -#line 59 "src/fcobjshash.gperf" +#line 59 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str38,FC_NAMELANG_OBJECT}, -#line 21 "src/fcobjshash.gperf" +#line 21 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str39,FC_STYLELANG_OBJECT}, -#line 19 "src/fcobjshash.gperf" +#line 19 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str40,FC_FAMILYLANG_OBJECT}, -#line 26 "src/fcobjshash.gperf" +#line 26 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str41,FC_WIDTH_OBJECT}, -#line 49 "src/fcobjshash.gperf" +#line 49 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str42,FC_MATRIX_OBJECT}, -#line 50 "src/fcobjshash.gperf" +#line 50 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_CHARSET_OBJECT}, {-1}, -#line 47 "src/fcobjshash.gperf" - {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHAR_WIDTH_OBJECT}, -#line 48 "src/fcobjshash.gperf" +#line 47 "fcobjshash.gperf" + {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHARWIDTH_OBJECT}, +#line 48 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str46,FC_CHAR_HEIGHT_OBJECT}, -#line 55 "src/fcobjshash.gperf" +#line 55 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str47,FC_EMBOLDEN_OBJECT}, -#line 58 "src/fcobjshash.gperf" +#line 58 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str48,FC_LCD_FILTER_OBJECT}, -#line 30 "src/fcobjshash.gperf" +#line 30 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str49,FC_SPACING_OBJECT}, -#line 39 "src/fcobjshash.gperf" +#line 39 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str50,FC_INDEX_OBJECT}, -#line 25 "src/fcobjshash.gperf" +#line 25 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str51,FC_WEIGHT_OBJECT}, -#line 53 "src/fcobjshash.gperf" +#line 53 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str52,FC_CAPABILITY_OBJECT}, -#line 56 "src/fcobjshash.gperf" +#line 56 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str53,FC_EMBEDDED_BITMAP_OBJECT}, {-1}, {-1}, {-1}, {-1}, -#line 57 "src/fcobjshash.gperf" +#line 57 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str58,FC_DECORATIVE_OBJECT}, -#line 35 "src/fcobjshash.gperf" +#line 35 "fcobjshash.gperf" {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str59,FC_VERTICAL_LAYOUT_OBJECT} }; diff --git a/ports/fontconfig/include/fcstdint.h b/ports/fontconfig/include/fcstdint.h index 1a8be6ef08..e317b2aa45 100644 --- a/ports/fontconfig/include/fcstdint.h +++ b/ports/fontconfig/include/fcstdint.h @@ -1,7 +1,8 @@ #ifndef _FONTCONFIG_SRC_FCSTDINT_H #define _FONTCONFIG_SRC_FCSTDINT_H 1 #ifndef _GENERATED_STDINT_H -#define _GENERATED_STDINT_H "fontconfig 2.12.1" +#define _GENERATED_STDINT_H "fontconfig 2.12.3" +/* generated using gnu compiler gcc.exe (Rev3, Built by MSYS2 project) 6.3.0 */ #define _STDINT_HAVE_STDINT_H 1 #include #endif diff --git a/ports/fontconfig/portfile.cmake b/ports/fontconfig/portfile.cmake index 8755ad7338..ec3122d679 100644 --- a/ports/fontconfig/portfile.cmake +++ b/ports/fontconfig/portfile.cmake @@ -1,10 +1,11 @@ include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/fontconfig-2.12.1) +set(FONTCONFIG_VERSION 2.12.3) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/fontconfig-${FONTCONFIG_VERSION}) vcpkg_download_distfile(ARCHIVE - URLS "https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.12.1.tar.gz" - FILENAME "fontconfig-2.12.1.tar.gz" - SHA512 0959a80522e09551e49ec7b2383b7dfb319d4e1c058ad0b55bb35d3f675acbb7ff08c9c30a8798b731070687f84dd3d2ff7e28aafac6ecfa9d3f85c5847c0955) + URLS "https://www.freedesktop.org/software/fontconfig/release/fontconfig-${FONTCONFIG_VERSION}.tar.gz" + FILENAME "fontconfig-${FONTCONFIG_VERSION}.tar.gz" + SHA512 b17725c028be1c5e6f76c136b0ed7db1be7694cbbf217310083512708e05cdc1a824427f89082e6ef259c10297900f26cbe899f7c5762e7662855739f3eff5ea) # Download single-header implementation of dirent API for Windows and it's license vcpkg_download_distfile(DIRENT_H @@ -23,8 +24,8 @@ file(RENAME ${SOURCE_PATH}/fontconfig-dirent.h ${SOURCE_PATH}/dirent.h) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA OPTIONS - -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON -DFC_INCLUDE_DIR=${CMAKE_CURRENT_LIST_DIR}/include OPTIONS_DEBUG -DFC_SKIP_TOOLS=ON @@ -33,6 +34,14 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + foreach(HEADER fcfreetype.h fontconfig.h) + file(READ ${CURRENT_PACKAGES_DIR}/include/fontconfig/${HEADER} FC_HEADER) + string(REPLACE "#define FcPublic" "#define FcPublic __declspec(dllimport)" FC_HEADER "${FC_HEADER}") + file(WRITE ${CURRENT_PACKAGES_DIR}/include/fontconfig/${HEADER} "${FC_HEADER}") + endforeach() +endif() + file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/fontconfig) file(RENAME ${CURRENT_PACKAGES_DIR}/share/fontconfig/COPYING ${CURRENT_PACKAGES_DIR}/share/fontconfig/copyright) file(COPY ${DIRENT_LICENSE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/fontconfig) diff --git a/ports/gettext/0002-Fix-uwp-build.patch b/ports/gettext/0002-Fix-uwp-build.patch new file mode 100644 index 0000000000..4e21ef1ed5 --- /dev/null +++ b/ports/gettext/0002-Fix-uwp-build.patch @@ -0,0 +1,77 @@ +diff --git "a/gettext-0.19/gettext-runtime/intl/langprefs.c" "b/gettext-0.19/gettext-runtime/intl/langprefs.c" +index aeb1c4e9..2ac531be 100644 +--- "a/gettext-0.19/gettext-runtime/intl/langprefs.c" ++++ "b/gettext-0.19/gettext-runtime/intl/langprefs.c" +@@ -33,7 +33,13 @@ extern void _nl_locale_name_canonicalize (char *name); + #endif + + #if defined _WIN32 || defined __WIN32__ +-# define WIN32_NATIVE ++# if !defined(WINAPI_FAMILY) ++# define WIN32_NATIVE ++# else ++# if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) ++# define WIN32_NATIVE ++# endif ++# endif + #endif + + #ifdef WIN32_NATIVE +diff --git "a/gettext-0.19/gettext-runtime/intl/localcharset.c" "b/gettext-0.19/gettext-runtime/intl/localcharset.c" +index 670b8e6c..035a96bd 100644 +--- "a/gettext-0.19/gettext-runtime/intl/localcharset.c" ++++ "b/gettext-0.19/gettext-runtime/intl/localcharset.c" +@@ -36,6 +36,16 @@ + # define WINDOWS_NATIVE + #endif + ++#if defined _WIN32 || defined __WIN32__ ++# if !defined(WINAPI_FAMILY) ++# define HAVE_ACP ++# else ++# if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) ++# define HAVE_ACP ++# endif ++# endif ++#endif ++ + #if defined __EMX__ + /* Assume EMX program runs on OS/2, even if compiled under DOS. */ + # ifndef OS2 +@@ -361,7 +371,7 @@ STATIC + const char * + locale_charset (void) + { +- const char *codeset; ++ const char *codeset = NULL; + const char *aliases; + + #if !(defined WINDOWS_NATIVE || defined OS2) +@@ -457,7 +467,7 @@ locale_charset (void) + + # endif + +-#elif defined WINDOWS_NATIVE ++#elif defined WINDOWS_NATIVE && defined HAVE_ACP + + static char buf[2 + 10 + 1]; + +diff --git "a/gettext-0.19/gettext-runtime/intl/localename.c" "b/gettext-0.19/gettext-runtime/intl/localename.c" +index 108dd6f1..ace3aa88 100644 +--- "a/gettext-0.19/gettext-runtime/intl/localename.c" ++++ "b/gettext-0.19/gettext-runtime/intl/localename.c" +@@ -54,7 +54,13 @@ + #endif + + #if defined _WIN32 || defined __WIN32__ +-# define WINDOWS_NATIVE ++# if !defined(WINAPI_FAMILY) ++# define WINDOWS_NATIVE ++# else ++# if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) ++# define WINDOWS_NATIVE ++# endif ++# endif + #endif + + #if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */ diff --git a/ports/gettext/CONTROL b/ports/gettext/CONTROL index 3ab837168f..fad410359c 100644 --- a/ports/gettext/CONTROL +++ b/ports/gettext/CONTROL @@ -1,3 +1,3 @@ Source: gettext -Version: 0.19 +Version: 0.19-1 Description: The GNU gettext utilities are a set of tools that provides a framework to help other GNU packages produce multi-lingual messages diff --git a/ports/gettext/config.h b/ports/gettext/config.h index cde9f23b4f..81811e937b 100644 --- a/ports/gettext/config.h +++ b/ports/gettext/config.h @@ -1,6 +1,9 @@ /* config.h. Generated from config.h.in by configure. */ /* config.h.in. Generated from configure.ac by autoheader. */ +/* Disable function deprecated warnings */ +#define _CRT_NONSTDC_NO_WARNINGS + /* Define to the number of bits in type 'ptrdiff_t'. */ #define BITSIZEOF_PTRDIFF_T sizeof(ptrdiff_t) diff --git a/ports/gettext/portfile.cmake b/ports/gettext/portfile.cmake index f14f7a707c..baf4babf2c 100644 --- a/ports/gettext/portfile.cmake +++ b/ports/gettext/portfile.cmake @@ -26,6 +26,7 @@ file(COPY ${CMAKE_CURRENT_LIST_DIR}/config.h DESTINATION ${SOURCE_PATH}/gettext- vcpkg_apply_patches( SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/ PATCHES "${CMAKE_CURRENT_LIST_DIR}/0001-Fix-macro-definitions.patch" + "${CMAKE_CURRENT_LIST_DIR}/0002-Fix-uwp-build.patch" ) vcpkg_configure_cmake( diff --git a/ports/gsl/CMakeLists.txt b/ports/gsl/CMakeLists.txt index 7045420351..45abb5bd2b 100644 --- a/ports/gsl/CMakeLists.txt +++ b/ports/gsl/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.8) -project(libgsl C) +project(gsl C) option(INSTALL_HEADERS "Install public header files" ON) @@ -27,10 +27,15 @@ function(extract_sources SUBFOLDER ALLSOURCES) endfunction(extract_sources) set(SOURCES) +set(CBLAS_SOURCES) extract_from_makefile("SUBDIRS = ([^\n]*)" FOLDERS "./Makefile.am") extract_sources("." SOURCES) foreach(DIR IN LISTS FOLDERS) - extract_sources("${DIR}" SOURCES) + if("${DIR}" STREQUAL "cblas") + extract_sources("${DIR}" CBLAS_SOURCES) + else() + extract_sources("${DIR}" SOURCES) + endif() endforeach() file(READ gsl_types.h GSLTYPES_H) @@ -43,13 +48,19 @@ file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/gsl_types.h "${GSLTYPES_H}") file(GLOB_RECURSE PUBLIC_HEADERS gsl*.h) list(APPEND PUBLIC_HEADERS ${CMAKE_CURRENT_BINARY_DIR}/gsl_types.h) -add_library(libgsl ${SOURCES}) -set_target_properties(libgsl PROPERTIES DEFINE_SYMBOL DLL_EXPORT WINDOWS_EXPORT_ALL_SYMBOLS ON) +add_library(gslcblas ${CBLAS_SOURCES}) +set_target_properties(gslcblas PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON) + +add_library(gsl ${SOURCES}) +set_target_properties(gsl PROPERTIES DEFINE_SYMBOL DLL_EXPORT WINDOWS_EXPORT_ALL_SYMBOLS ON) +target_link_libraries(gsl PUBLIC gslcblas) + if(INSTALL_HEADERS) - set_target_properties(libgsl PROPERTIES PUBLIC_HEADER "${PUBLIC_HEADERS}") + set_target_properties(gsl PROPERTIES PUBLIC_HEADER "${PUBLIC_HEADERS}") endif() -target_include_directories(libgsl PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) +target_include_directories(gslcblas PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) +target_include_directories(gsl PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) # For the build, we need to copy all headers to the gsl directory file(COPY ${PUBLIC_HEADERS} DESTINATION "${CMAKE_CURRENT_SOURCE_DIR}/gsl") @@ -58,7 +69,7 @@ if(INSTALL_HEADERS) set(TARGET_INSTALL_OPTIONS PUBLIC_HEADER DESTINATION include/gsl) endif() -install(TARGETS libgsl +install(TARGETS gsl gslcblas RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib diff --git a/ports/gsl/CONTROL b/ports/gsl/CONTROL index 8970dca693..a18b341c9c 100644 --- a/ports/gsl/CONTROL +++ b/ports/gsl/CONTROL @@ -1,3 +1,3 @@ Source: gsl -Version: 2.3 +Version: 2.3-1 Description: The GNU Scientific Library is a numerical library for C and C++ programmers diff --git a/ports/hpx/CONTROL b/ports/hpx/CONTROL index c1433102ab..cfb599e512 100644 --- a/ports/hpx/CONTROL +++ b/ports/hpx/CONTROL @@ -1,5 +1,5 @@ Source: hpx -Version: 1.0.0-3 +Version: 1.0.0-4 Build-Depends: boost, hwloc Description: The C++ Standards Library for Concurrency and Parallelism HPX is a C++ Standards Library for Concurrency and Parallelism. It implements all of the corresponding facilities as defined by the C++ Standard. Additionally, in HPX we implement functionalities proposed as part of the ongoing C++ standardization process. We also extend the C++ Standard APIs to the distributed case. diff --git a/ports/hpx/portfile.cmake b/ports/hpx/portfile.cmake index 3c51bb13b2..fce8fce618 100644 --- a/ports/hpx/portfile.cmake +++ b/ports/hpx/portfile.cmake @@ -16,24 +16,24 @@ vcpkg_extract_source_archive(${ARCHIVE}) # apply hotfix to enable building with vcpkg vcpkg_download_distfile(DIFF - URLS "http://stellar-group.org/files/build-system-changes-to-make-HPX-compile-when-built-with-vcpkg.diff" - FILENAME "build-system-changes-to-make-HPX-compile-when-built-with-vcpkg.diff" - SHA512 ceceb84b54bf564b7b9258063454084207538a2bd212f7f65503c6638914eb3c093076e4303369639ef9b34812a2c8ed363c08bbdf5a39cc5d49f720a376af75 + URLS "http://stellar-group.org/files/hpx-Build-system-changes-to-make-HPX-compile-when-built-with-vcpkg.diff" + FILENAME "hpx-Build-system-changes-to-make-HPX-compile-when-built-with-vcpkg.diff" + SHA512 86df311a120686139955e1c0fdca55379594be3fa8d46d69ee59d83da351ce3bed487ab946c80f7127aab9699e470e24e545b112f92be9f971f41d95c429d01d ) vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} PATCHES ${DIFF}) # apply hotfix to fix issues with building 32bit version vcpkg_download_distfile(DIFF - URLS "http://stellar-group.org/files/Fixing-32bit-MSVC-compilation.diff" - FILENAME "Fixing-32bit-MSVC-compilation.diff" + URLS "http://stellar-group.org/files/hpx-Fixing-32bit-MSVC-compilation.diff" + FILENAME "hpx-Fixing-32bit-MSVC-compilation.diff" SHA512 31c904d317b4c24eddd819e4856f8326ff3850a5a196c7648c46a11dbb85f35e972e077957b3c4aec67c8b043816fe1cebc92cfe28ed815f682537dfc3421b8b ) vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} PATCHES ${DIFF}) # apply hotfix to fix issues when building with UNICODE enabled vcpkg_download_distfile(DIFF - URLS "http://stellar-group.org/files/Making-sure-UNICODE-on-Windows-does-not-break-by-default.diff" - FILENAME "Making-sure-UNICODE-on-Windows-does-not-break-by-default.diff" + URLS "http://stellar-group.org/files/hpx-Making-sure-UNICODE-on-Windows-does-not-break-by-default.diff" + FILENAME "hpx-Making-sure-UNICODE-on-Windows-does-not-break-by-default.diff" SHA512 8fcdb36307702d64b9d2b26920374a6c5a29a50d125305dc95926c4cbc91215cb0c72ede83b06d0fc007fe7b2283845e08351bd45f11f3677f0d3db4ac8f9424 ) vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} PATCHES ${DIFF}) diff --git a/ports/libuv/CONTROL b/ports/libuv/CONTROL index 275dee9dfc..a4fb1457eb 100644 --- a/ports/libuv/CONTROL +++ b/ports/libuv/CONTROL @@ -1,3 +1,3 @@ Source: libuv -Version: 1.11.0 +Version: 1.12.0 Description: libuv is a multi-platform support library with a focus on asynchronous I/O. \ No newline at end of file diff --git a/ports/libuv/portfile.cmake b/ports/libuv/portfile.cmake index a8f4463cd3..8c287bf5a1 100644 --- a/ports/libuv/portfile.cmake +++ b/ports/libuv/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO libuv/libuv - REF v1.11.0 - SHA512 fb0415d62a32cfc658bad6c849263ac236d27e9188fac603467173a5ae34fb3ad3e3bfd333e543ebd98b4fd59e0a58a93275e830c4365c058b62bb0c2c802732 + REF v1.12.0 + SHA512 879359747e8319b6e951157f9406176c53ee24833ab9ea3e6ad2b9cf25368fd8f166fa2074b89bdb75e2a6a77757d91a079c4ef86b92330a8ea11519cd1e3018 HEAD_REF v1.x) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) diff --git a/ports/nana/CONTROL b/ports/nana/CONTROL index 96d79560f9..c8270c56a3 100644 --- a/ports/nana/CONTROL +++ b/ports/nana/CONTROL @@ -1,4 +1,4 @@ Source: nana -Version: 1.4.1-66be23c9204c5567d1c51e6f57ba23bffa517a7c +Version: 1.5.1-hotfix-42f8985 Description: Cross-platform library for GUI programming in modern C++ style. -Build-Depends: zlib, libpng, libjpeg-turbo +Build-Depends: libpng, libjpeg-turbo diff --git a/ports/nana/fix-linking.patch b/ports/nana/fix-linking.patch deleted file mode 100644 index f897ed2281..0000000000 --- a/ports/nana/fix-linking.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 5c9c9c9..ae35185 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -149,26 +149,20 @@ endif () - # Find PNG - if(NANA_CMAKE_ENABLE_PNG) - add_definitions(-DNANA_ENABLE_PNG) -- set(NANA_LINKS "${NANA_LINKS} -lpng") - if(NANA_CMAKE_LIBPNG_FROM_OS) -- find_package(PNG) -- if (PNG_FOUND) -- include_directories( ${PNG_INCLUDE_DIRS}) -- add_definitions(-DUSE_LIBPNG_FROM_OS) -- endif(PNG_FOUND) -+ find_package(PNG REQUIRED) -+ include_directories(${PNG_INCLUDE_DIRS}) -+ add_definitions(-DUSE_LIBPNG_FROM_OS) - endif(NANA_CMAKE_LIBPNG_FROM_OS) - endif(NANA_CMAKE_ENABLE_PNG) - - # Find JPEG - if(NANA_CMAKE_ENABLE_JPEG) - add_definitions(-DNANA_ENABLE_JPEG) -- set(NANA_LINKS "${NANA_LINKS} -ljpeg") - if(NANA_CMAKE_LIBJPEG_FROM_OS) -- find_package(JPEG) -- if (JPEG_FOUND) -- include_directories( ${JPEG_INCLUDE_DIRS}) -- add_definitions(-DUSE_LIBJPEG_FROM_OS) -- endif(JPEG_FOUND) -+ find_package(JPEG REQUIRED) -+ include_directories(${JPEG_INCLUDE_DIRS}) -+ add_definitions(-DUSE_LIBJPEG_FROM_OS) - endif(NANA_CMAKE_LIBJPEG_FROM_OS) - endif(NANA_CMAKE_ENABLE_JPEG) - -@@ -253,7 +247,12 @@ endforeach(subdir ${NANA_SOURCE_SUBDIRS}) - - include_directories(${NANA_INCLUDE_DIR}) - add_library(${PROJECT_NAME} ${sources} ) --target_link_libraries(${PROJECT_NAME} ${NANA_LINKS}) -+if(NANA_CMAKE_ENABLE_JPEG AND NANA_CMAKE_LIBJPEG_FROM_OS) -+ target_link_libraries(${PROJECT_NAME} ${JPEG_LIBRARIES}) -+endif() -+if(NANA_CMAKE_ENABLE_PNG AND NANA_CMAKE_LIBPNG_FROM_OS) -+ target_link_libraries(${PROJECT_NAME} ${PNG_LIBRARIES}) -+endif() - - # Headers: use INCLUDE_DIRECTORIES - # Libraries: use FIND_LIBRARY and link with the result of it (try to avoid LINK_DIRECTORIES) diff --git a/ports/nana/portfile.cmake b/ports/nana/portfile.cmake index 117e41e23b..f2b7fab177 100644 --- a/ports/nana/portfile.cmake +++ b/ports/nana/portfile.cmake @@ -1,35 +1,28 @@ -include(vcpkg_common_functions) +if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + message(STATUS "Warning: Dynamic building not supported. Building static.") + set(VCPKG_LIBRARY_LINKAGE static) +endif() +include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO cnjinhao/nana - REF 66be23c9204c5567d1c51e6f57ba23bffa517a7c - SHA512 4f87acb51cc4bb2760402b33c81b6bd15a794b026dd31876a0ccc24a86f2c501b873f7bf3a57098e261fddc49d4935c39d13ae1595cb85b67bce337ae2fd3a0d - HEAD_REF master + REF 42f89854fd6795d9b2113d011a87404dcc9ba37e + SHA512 89b75ccb95e5c4a2075a59064de0b0ff2fca90f90e9b391c2def7f74cc7484930b7139e314f33250bfaa148bfc5a5c9cf78ae3cac2336e0f32a9651670c36685 + HEAD_REF develop ) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES "${CMAKE_CURRENT_LIST_DIR}/fix-linking.patch") - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA OPTIONS - -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON + -DMSVC_USE_STATIC_RUNTIME=OFF # dont override our settings -DNANA_CMAKE_ENABLE_PNG=ON -DNANA_CMAKE_ENABLE_JPEG=ON OPTIONS_DEBUG -DNANA_CMAKE_INSTALL_INCLUDES=OFF) vcpkg_install_cmake() - -if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - file(COPY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/Debug/nana.dll - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) - file(COPY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/Release/nana.dll - DESTINATION ${CURRENT_PACKAGES_DIR}/bin) -endif() - vcpkg_copy_pdbs() file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/nana) diff --git a/ports/openssl/CONTROL b/ports/openssl/CONTROL index 6fb5204044..aaf7b17abe 100644 --- a/ports/openssl/CONTROL +++ b/ports/openssl/CONTROL @@ -1,3 +1,3 @@ Source: openssl -Version: 1.0.2k-2 +Version: 1.0.2k-3 Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library. diff --git a/ports/openssl/portfile.cmake b/ports/openssl/portfile.cmake index 3b13c46604..08cd4e04c5 100644 --- a/ports/openssl/portfile.cmake +++ b/ports/openssl/portfile.cmake @@ -6,16 +6,19 @@ endif() include(vcpkg_common_functions) set(OPENSSL_VERSION 1.0.2l) set(MASTER_COPY_SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openssl-${OPENSSL_VERSION}) + vcpkg_find_acquire_program(PERL) +vcpkg_find_acquire_program(NASM) find_program(NMAKE nmake) get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY) -set(ENV{PATH} "${PERL_EXE_PATH};$ENV{PATH}") +get_filename_component(NASM_EXE_PATH ${NASM} DIRECTORY) +set(ENV{PATH} "${PERL_EXE_PATH};${NASM_EXE_PATH};$ENV{PATH}") vcpkg_download_distfile(OPENSSL_SOURCE_ARCHIVE URLS "https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz" "https://www.openssl.org/source/old/1.0.2/openssl-${OPENSSL_VERSION}.tar.gz" FILENAME "openssl-${OPENSSL_VERSION}.tar.gz" - SHA512 047d964508ad6025c79caabd8965efd2416dc026a56183d0ef4de7a0a6769ce8e0b4608a3f8393d326f6d03b26a2b067e6e0c750f35b20be190e595e8290c0e3 + SHA512 047d964508ad6025c79caabd8965efd2416dc026a56183d0ef4de7a0a6769ce8e0b4608a3f8393d326f6d03b26a2b067e6e0c750f35b20be190e595e8290c0e3 ) vcpkg_extract_source_archive(${OPENSSL_SOURCE_ARCHIVE}) @@ -29,22 +32,28 @@ vcpkg_apply_patches( set(CONFIGURE_COMMAND ${PERL} Configure enable-static-engine enable-capieng - no-asm no-ssl2 ) if(TARGET_TRIPLET MATCHES "x86-windows") set(OPENSSL_ARCH VC-WIN32) - set(OPENSSL_DO "ms\\do_ms.bat") -elseif(TARGET_TRIPLET MATCHES "x64") + set(OPENSSL_DO "ms\\do_nasm.bat") +elseif(TARGET_TRIPLET MATCHES "x64-windows") set(OPENSSL_ARCH VC-WIN64A) set(OPENSSL_DO "ms\\do_win64a.bat") else() message(FATAL_ERROR "Unsupported target triplet: ${TARGET_TRIPLET}") endif() +if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + set(OPENSSL_MAKEFILE "ms\\ntdll.mak") +else() + set(OPENSSL_MAKEFILE "ms\\nt.mak") +endif() + file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) + message(STATUS "Build ${TARGET_TRIPLET}-rel") file(COPY ${MASTER_COPY_SOURCE_PATH} DESTINATION ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) set(SOURCE_PATH_RELEASE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/openssl-${OPENSSL_VERSION}) @@ -60,20 +69,14 @@ vcpkg_execute_required_process( WORKING_DIRECTORY ${SOURCE_PATH_RELEASE} LOGNAME configure-do-${TARGET_TRIPLET}-${CMAKE_BUILD_TYPE}-rel ) - -if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - vcpkg_execute_required_process(COMMAND ${NMAKE} -f ms\\ntdll.mak install - WORKING_DIRECTORY ${SOURCE_PATH_RELEASE} - LOGNAME build-${TARGET_TRIPLET}-rel) -else() - vcpkg_execute_required_process(COMMAND ${NMAKE} -f ms\\nt.mak install - WORKING_DIRECTORY ${SOURCE_PATH_RELEASE} - LOGNAME build-${TARGET_TRIPLET}-rel) -endif() - +vcpkg_execute_required_process( + COMMAND ${NMAKE} -f ${OPENSSL_MAKEFILE} install + WORKING_DIRECTORY ${SOURCE_PATH_RELEASE} + LOGNAME build-${TARGET_TRIPLET}-rel) message(STATUS "Build ${TARGET_TRIPLET}-rel done") + message(STATUS "Build ${TARGET_TRIPLET}-dbg") file(COPY ${MASTER_COPY_SOURCE_PATH} DESTINATION ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) set(SOURCE_PATH_DEBUG ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/openssl-${OPENSSL_VERSION}) @@ -89,19 +92,14 @@ vcpkg_execute_required_process( WORKING_DIRECTORY ${SOURCE_PATH_DEBUG} LOGNAME configure-do-${TARGET_TRIPLET}-${CMAKE_BUILD_TYPE}-dbg ) - -if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - vcpkg_execute_required_process(COMMAND ${NMAKE} -f ms\\ntdll.mak install - WORKING_DIRECTORY ${SOURCE_PATH_DEBUG} - LOGNAME build-${TARGET_TRIPLET}-dbg) -else() - vcpkg_execute_required_process(COMMAND ${NMAKE} -f ms\\nt.mak install - WORKING_DIRECTORY ${SOURCE_PATH_DEBUG} - LOGNAME build-${TARGET_TRIPLET}-dbg) -endif() +vcpkg_execute_required_process( + COMMAND ${NMAKE} -f ${OPENSSL_MAKEFILE} install + WORKING_DIRECTORY ${SOURCE_PATH_DEBUG} + LOGNAME build-${TARGET_TRIPLET}-dbg) message(STATUS "Build ${TARGET_TRIPLET}-dbg done") + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/openssl.exe @@ -118,4 +116,4 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/) endif() -vcpkg_copy_pdbs() \ No newline at end of file +vcpkg_copy_pdbs() diff --git a/ports/range-v3/CONTROL b/ports/range-v3/CONTROL index 942851b425..2bf8b60872 100644 --- a/ports/range-v3/CONTROL +++ b/ports/range-v3/CONTROL @@ -1,3 +1,3 @@ Source: range-v3 -Version: 20150729-vcpkg3 +Version: 20151130-vcpkg4 Description: Range library for C++11/14/17. diff --git a/ports/range-v3/portfile.cmake b/ports/range-v3/portfile.cmake index 639e8fcef6..61429548ba 100644 --- a/ports/range-v3/portfile.cmake +++ b/ports/range-v3/portfile.cmake @@ -1,19 +1,26 @@ #header-only library include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/range-v3-6eb5c831ffe12cd5cb96390dbe917ca1b248772d) -vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/ericniebler/range-v3/archive/6eb5c831ffe12cd5cb96390dbe917ca1b248772d.zip" - FILENAME "range-v3-6eb5c831ffe12cd5cb96390dbe917ca1b248772d.zip" - SHA512 2605af46c2c049f66dc982b1c4e506a8f115d47cc6c61a80f08921c667e52ad3097c485280ee43711c84b84a1490929e085b89cf9ad4c83b93222315210e92aa -) -vcpkg_download_distfile(DIFF - URLS "https://github.com/Microsoft/Range-V3-VS2015/compare/fork_base...00ed689bac7a9dcd8601dbde382758675516799d.diff" - FILENAME "range-v3-fork_base_to_00ed689bac7a9dcd8601dbde382758675516799d.diff" - SHA512 615a53ebac22df03e865bdcc86580914c4505ec5fc691b6a2f864f7bf63690b99d0da0db2d5b1026e34b0a3f7557f30dfa0cad65643bae0b53c0ec066af9eb8e -) -vcpkg_extract_source_archive(${ARCHIVE}) -vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} PATCHES ${DIFF}) +# set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/range-v3-6eb5c831ffe12cd5cb96390dbe917ca1b248772d) +# vcpkg_download_distfile(ARCHIVE +# URLS "https://github.com/ericniebler/range-v3/archive/6eb5c831ffe12cd5cb96390dbe917ca1b248772d.zip" +# FILENAME "range-v3-6eb5c831ffe12cd5cb96390dbe917ca1b248772d.zip" +# SHA512 2605af46c2c049f66dc982b1c4e506a8f115d47cc6c61a80f08921c667e52ad3097c485280ee43711c84b84a1490929e085b89cf9ad4c83b93222315210e92aa +# ) +# vcpkg_download_distfile(DIFF +# URLS "https://github.com/Microsoft/Range-V3-VS2015/compare/fork_base...00ed689bac7a9dcd8601dbde382758675516799d.diff" +# FILENAME "range-v3-fork_base_to_00ed689bac7a9dcd8601dbde382758675516799d.diff" +# SHA512 6158cd9ee1f5957294a26dc780c881839e0bae8610688a618cd11d47df34d5e543fa09ac9a3b33d4a65af8eceae0a6a3055621206c291ef75f982e7915daf91a +# ) +# vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO Microsoft/Range-V3-VS2015 + REF 2695c779d52717b635e97352fed6b75d32eba7a4 + SHA512 a1dad795b15c8491963f75fb58097dd290203406038cb2790c66b7ebd854a42043a92cfa2fed30c125529c3aa8d0cfc05cf1d149c84e96eb1f865857ad87adeb + HEAD_REF master +) file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/range-v3) file(RENAME ${CURRENT_PACKAGES_DIR}/share/range-v3/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/range-v3/copyright) diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index e7e33c6925..03216058c8 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -70,7 +70,7 @@ function(vcpkg_find_acquire_program VAR) set(ARCHIVE "python-3.5.3-embed-win32.zip") set(HASH c8cfdc09d052dc27e4380e8e4bf0d32a4c0def7e03896c1fa6cabc26dde78bb74dbb04e3673cc36e3e307d65a1ef284d69174f0cc80008c83bc6178f192ac5cf) elseif(VAR MATCHES "PYTHON2") - find_program(PYTHON2 NAMES python2 python PATHS C:/python27 ENV PYTHON) + find_program(PYTHON2 NAMES python2 python PATHS C:/python27 c:/Python27amd64 ENV PYTHON) if(NOT PYTHON2 MATCHES "NOTFOUND") execute_process( COMMAND ${PYTHON2} --version @@ -90,6 +90,12 @@ function(vcpkg_find_acquire_program VAR) " https://www.python.org/ftp/python/2.7.13/python-2.7.13.msi\n" ) endif() + elseif(VAR MATCHES "RUBY") + set(PROGNAME "ruby") + set(PATHS ${DOWNLOADS}/tools/ruby/rubyinstaller-2.4.1-1-x86/bin) + set(URL https://github.com/oneclick/rubyinstaller2/releases/download/2.4.1-1/rubyinstaller-2.4.1-1-x86.7z) + set(ARCHIVE rubyinstaller-2.4.1-1-x86.7z) + set(HASH b51112e9b58cfcbe8cec0607e8a16fff6a943d9b4e31b2a7fbf5df5f83f050bf0a4812d3dd6000ff21a3d5fd219cd0a309c58ac1c1db950a9b0072405e4b70f5) elseif(VAR MATCHES "JOM") set(PROGNAME jom) set(SUBDIR "jom-1.1.2") @@ -118,18 +124,24 @@ function(vcpkg_find_acquire_program VAR) set(URL "https://github.com/mesonbuild/meson/archive/0.40.1.zip") set(ARCHIVE "meson-0.40.1.zip") set(HASH 4c1d07f32d527859f762c34de74d31d569573fc833335ab9652ed38d1f9e64b49869e826527c28a6a07cb8e594fd5c647b34aa95e626236a2707f75df0a2d435) - elseif(VAR MATCHES "FLEX") - set(PROGNAME win_flex) - set(PATHS ${DOWNLOADS}/tools/winflexbison) - set(URL "https://sourceforge.net/projects/winflexbison/files/win_flex_bison-2.5.9.zip/download") - set(ARCHIVE "win_flex_bison-2.5.9.zip") - set(HASH 9580f0e46893670a011645947c1becda69909a41a38bb4197fe33bd1ab7719da6b80e1be316f269e1a4759286870d49a9b07ef83afc4bac33232bd348e0bc814) + elseif(VAR MATCHES "FLEX") + set(PROGNAME win_flex) + set(PATHS ${DOWNLOADS}/tools/win_flex) + set(URL "https://sourceforge.net/projects/winflexbison/files/win_flex_bison-2.5.9.zip/download") + set(ARCHIVE "win_flex_bison-2.5.9.zip") + set(HASH 9580f0e46893670a011645947c1becda69909a41a38bb4197fe33bd1ab7719da6b80e1be316f269e1a4759286870d49a9b07ef83afc4bac33232bd348e0bc814) elseif(VAR MATCHES "BISON") - set(PROGNAME win_bison) - set(PATHS ${DOWNLOADS}/tools/winflexbison) - set(URL "https://sourceforge.net/projects/winflexbison/files/win_flex_bison-2.5.9.zip/download") - set(ARCHIVE "win_flex_bison-2.5.9.zip") - set(HASH 9580f0e46893670a011645947c1becda69909a41a38bb4197fe33bd1ab7719da6b80e1be316f269e1a4759286870d49a9b07ef83afc4bac33232bd348e0bc814) + set(PROGNAME win_bison) + set(PATHS ${DOWNLOADS}/tools/win_bison) + set(URL "https://sourceforge.net/projects/winflexbison/files/win_flex_bison-2.5.9.zip/download") + set(ARCHIVE "win_flex_bison-2.5.9.zip") + set(HASH 9580f0e46893670a011645947c1becda69909a41a38bb4197fe33bd1ab7719da6b80e1be316f269e1a4759286870d49a9b07ef83afc4bac33232bd348e0bc814) + elseif(VAR MATCHES "GPERF") + set(PROGNAME gperf) + set(PATHS ${DOWNLOADS}/tools/gperf/bin) + set(URL "https://sourceforge.net/projects/gnuwin32/files/gperf/3.0.1/gperf-3.0.1-bin.zip/download") + set(ARCHIVE "gperf-3.0.1-bin.zip") + set(HASH 3f2d3418304390ecd729b85f65240a9e4d204b218345f82ea466ca3d7467789f43d0d2129fcffc18eaad3513f49963e79775b10cc223979540fa2e502fe7d4d9) else() message(FATAL "unknown tool ${VAR} -- unable to acquire.") endif()