diff options
| author | ing. Federico Fuga <fuga@studiofuga.com> | 2018-12-13 11:59:19 +0100 |
|---|---|---|
| committer | ing. Federico Fuga <fuga@studiofuga.com> | 2018-12-13 11:59:19 +0100 |
| commit | a2c846338ced13df79089419c3161c3d2fefb68c (patch) | |
| tree | d241a91432a7373f8c210f731de9bffbe9bcbf51 | |
| parent | e04b4ed5b5ff5c1b61e5ce3d70ac101ffe3237c4 (diff) | |
| download | vcpkg-a2c846338ced13df79089419c3161c3d2fefb68c.tar.gz vcpkg-a2c846338ced13df79089419c3161c3d2fefb68c.zip | |
Update mpfr to 4.0.1 and fix compilation under gcc 7
gcc 7 deprecates the use of varargs.h in favour of stdarg.h.
mpfr already fixes it, but the fix is enabled if stdarg is available.
This patch adds the test on CMakeLists.txt and enables the fix if
needed.
| -rw-r--r-- | ports/mpfr/CMakeLists.txt | 5 | ||||
| -rw-r--r-- | ports/mpfr/portfile.cmake | 9 | ||||
| -rw-r--r-- | ports/mpfr/test_stdarg.c | 6 |
3 files changed, 16 insertions, 4 deletions
diff --git a/ports/mpfr/CMakeLists.txt b/ports/mpfr/CMakeLists.txt index ed48eaf59..7770b18fd 100644 --- a/ports/mpfr/CMakeLists.txt +++ b/ports/mpfr/CMakeLists.txt @@ -255,6 +255,11 @@ if(BUILD_SHARED_LIBS) target_compile_definitions(mpfr PRIVATE __GMP_LIBGMP_DLL) endif() +try_compile(I_HAVE_STDARG ${CMAKE_BINARY_DIR} ${PROJECT_SOURCE_DIR}/test_stdarg.c) +if (I_HAVE_STDARG) + target_compile_definitions(mpfr PRIVATE HAVE_STDARG) +endif (I_HAVE_STDARG) + target_link_libraries(mpfr ${GMP_LIBRARIES}) target_include_directories(mpfr PUBLIC ${GMP_INCLUDE_DIRS}) diff --git a/ports/mpfr/portfile.cmake b/ports/mpfr/portfile.cmake index 689b075fc..4b534ff0c 100644 --- a/ports/mpfr/portfile.cmake +++ b/ports/mpfr/portfile.cmake @@ -1,13 +1,14 @@ include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/mpfr-3.1.6) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/mpfr-4.0.1) vcpkg_download_distfile(ARCHIVE - URLS "http://www.mpfr.org/mpfr-3.1.6/mpfr-3.1.6.tar.xz" - FILENAME "mpfr-3.1.6.tar.xz" - SHA512 746ee74d5026f267f74ab352d850ed30ff627d530aa840c71b24793e44875f8503946bd7399905dea2b2dd5744326254d7889337fe94cfe58d03c4066e9d8054 + URLS "http://www.mpfr.org/mpfr-4.0.1/mpfr-4.0.1.tar.xz" + FILENAME "mpfr-4.0.1.tar.xz" + SHA512 137ad68bc1e33a155edc1247fcdba27f999cf48ed526773136584090ddf2cfdfc9ea79fbf74ea1943b835b4b1ff29b05087114738c6ad3b485848540f30cac4f ) vcpkg_extract_source_archive(${ARCHIVE}) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/test_stdarg.c DESTINATION ${SOURCE_PATH}) file(COPY ${CMAKE_CURRENT_LIST_DIR}/gmp_printf.c DESTINATION ${SOURCE_PATH}/src) vcpkg_configure_cmake( diff --git a/ports/mpfr/test_stdarg.c b/ports/mpfr/test_stdarg.c new file mode 100644 index 000000000..dc1e2d7b4 --- /dev/null +++ b/ports/mpfr/test_stdarg.c @@ -0,0 +1,6 @@ +# include <stdarg.h> + +int main(int argc, char *argv) { + return 0; +} + |
