diff options
Diffstat (limited to 'vcpkg/ports/intelrdfpmathlib')
| -rw-r--r-- | vcpkg/ports/intelrdfpmathlib/CMakeLists.txt | 289 | ||||
| -rw-r--r-- | vcpkg/ports/intelrdfpmathlib/missing-includes.patch | 24 | ||||
| -rw-r--r-- | vcpkg/ports/intelrdfpmathlib/portfile.cmake | 28 | ||||
| -rw-r--r-- | vcpkg/ports/intelrdfpmathlib/vcpkg.json | 13 |
4 files changed, 354 insertions, 0 deletions
diff --git a/vcpkg/ports/intelrdfpmathlib/CMakeLists.txt b/vcpkg/ports/intelrdfpmathlib/CMakeLists.txt new file mode 100644 index 0000000..809cd34 --- /dev/null +++ b/vcpkg/ports/intelrdfpmathlib/CMakeLists.txt @@ -0,0 +1,289 @@ +cmake_minimum_required(VERSION 3.8)
+project(intelrdfpmathlib C)
+
+set(
+ intelrdfpmathlib_SOURCES
+ float128/dpml_exception.c
+ float128/dpml_four_over_pi.c
+ float128/dpml_ux_bessel.c
+ float128/dpml_ux_bid.c
+ float128/dpml_ux_cbrt.c
+ float128/dpml_ux_erf.c
+ float128/dpml_ux_exp.c
+ float128/dpml_ux_int.c
+ float128/dpml_ux_inv_hyper.c
+ float128/dpml_ux_inv_trig.c
+ float128/dpml_ux_lgamma.c
+ float128/dpml_ux_log.c
+ float128/dpml_ux_mod.c
+ float128/dpml_ux_ops.c
+ float128/dpml_ux_ops_64.c
+ float128/dpml_ux_pow.c
+ float128/dpml_ux_powi.c
+ float128/dpml_ux_sqrt.c
+ float128/dpml_ux_trig.c
+ float128/sqrt_tab_t.c
+ src/bid128.c
+ src/bid128_2_str_tables.c
+ src/bid128_acos.c
+ src/bid128_acosh.c
+ src/bid128_add.c
+ src/bid128_asin.c
+ src/bid128_asinh.c
+ src/bid128_atan.c
+ src/bid128_atan2.c
+ src/bid128_atanh.c
+ src/bid128_cbrt.c
+ src/bid128_compare.c
+ src/bid128_cos.c
+ src/bid128_cosh.c
+ src/bid128_div.c
+ src/bid128_erf.c
+ src/bid128_erfc.c
+ src/bid128_exp.c
+ src/bid128_exp10.c
+ src/bid128_exp2.c
+ src/bid128_expm1.c
+ src/bid128_fdimd.c
+ src/bid128_fma.c
+ src/bid128_fmod.c
+ src/bid128_frexp.c
+ src/bid128_hypot.c
+ src/bid128_ldexp.c
+ src/bid128_lgamma.c
+ src/bid128_llrintd.c
+ src/bid128_log.c
+ src/bid128_log10.c
+ src/bid128_log1p.c
+ src/bid128_log2.c
+ src/bid128_logb.c
+ src/bid128_logbd.c
+ src/bid128_lrintd.c
+ src/bid128_lround.c
+ src/bid128_minmax.c
+ src/bid128_modf.c
+ src/bid128_mul.c
+ src/bid128_nearbyintd.c
+ src/bid128_next.c
+ src/bid128_nexttowardd.c
+ src/bid128_noncomp.c
+ src/bid128_pow.c
+ src/bid128_quantexpd.c
+ src/bid128_quantize.c
+ src/bid128_rem.c
+ src/bid128_round_integral.c
+ src/bid128_scalb.c
+ src/bid128_scalbl.c
+ src/bid128_sin.c
+ src/bid128_sinh.c
+ src/bid128_sqrt.c
+ src/bid128_string.c
+ src/bid128_tan.c
+ src/bid128_tanh.c
+ src/bid128_tgamma.c
+ src/bid128_to_int16.c
+ src/bid128_to_int32.c
+ src/bid128_to_int64.c
+ src/bid128_to_int8.c
+ src/bid128_to_uint16.c
+ src/bid128_to_uint32.c
+ src/bid128_to_uint64.c
+ src/bid128_to_uint8.c
+ src/bid32_acos.c
+ src/bid32_acosh.c
+ src/bid32_add.c
+ src/bid32_asin.c
+ src/bid32_asinh.c
+ src/bid32_atan.c
+ src/bid32_atan2.c
+ src/bid32_atanh.c
+ src/bid32_cbrt.c
+ src/bid32_compare.c
+ src/bid32_cos.c
+ src/bid32_cosh.c
+ src/bid32_div.c
+ src/bid32_erf.c
+ src/bid32_erfc.c
+ src/bid32_exp.c
+ src/bid32_exp10.c
+ src/bid32_exp2.c
+ src/bid32_expm1.c
+ src/bid32_fdimd.c
+ src/bid32_fma.c
+ src/bid32_fmod.c
+ src/bid32_frexp.c
+ src/bid32_hypot.c
+ src/bid32_ldexp.c
+ src/bid32_lgamma.c
+ src/bid32_llrintd.c
+ src/bid32_log.c
+ src/bid32_log10.c
+ src/bid32_log1p.c
+ src/bid32_log2.c
+ src/bid32_logb.c
+ src/bid32_logbd.c
+ src/bid32_lrintd.c
+ src/bid32_lround.c
+ src/bid32_minmax.c
+ src/bid32_modf.c
+ src/bid32_mul.c
+ src/bid32_nearbyintd.c
+ src/bid32_next.c
+ src/bid32_nexttowardd.c
+ src/bid32_noncomp.c
+ src/bid32_pow.c
+ src/bid32_quantexpd.c
+ src/bid32_quantize.c
+ src/bid32_rem.c
+ src/bid32_round_integral.c
+ src/bid32_scalb.c
+ src/bid32_scalbl.c
+ src/bid32_sin.c
+ src/bid32_sinh.c
+ src/bid32_sqrt.c
+ src/bid32_string.c
+ src/bid32_sub.c
+ src/bid32_tan.c
+ src/bid32_tanh.c
+ src/bid32_tgamma.c
+ src/bid32_to_bid128.c
+ src/bid32_to_bid64.c
+ src/bid32_to_int16.c
+ src/bid32_to_int32.c
+ src/bid32_to_int64.c
+ src/bid32_to_int8.c
+ src/bid32_to_uint16.c
+ src/bid32_to_uint32.c
+ src/bid32_to_uint64.c
+ src/bid32_to_uint8.c
+ src/bid64_acos.c
+ src/bid64_acosh.c
+ src/bid64_add.c
+ src/bid64_asin.c
+ src/bid64_asinh.c
+ src/bid64_atan.c
+ src/bid64_atan2.c
+ src/bid64_atanh.c
+ src/bid64_cbrt.c
+ src/bid64_compare.c
+ src/bid64_cos.c
+ src/bid64_cosh.c
+ src/bid64_div.c
+ src/bid64_erf.c
+ src/bid64_erfc.c
+ src/bid64_exp.c
+ src/bid64_exp10.c
+ src/bid64_exp2.c
+ src/bid64_expm1.c
+ src/bid64_fdimd.c
+ src/bid64_fma.c
+ src/bid64_fmod.c
+ src/bid64_frexp.c
+ src/bid64_hypot.c
+ src/bid64_ldexp.c
+ src/bid64_lgamma.c
+ src/bid64_llrintd.c
+ src/bid64_log.c
+ src/bid64_log10.c
+ src/bid64_log1p.c
+ src/bid64_log2.c
+ src/bid64_logb.c
+ src/bid64_logbd.c
+ src/bid64_lrintd.c
+ src/bid64_lround.c
+ src/bid64_minmax.c
+ src/bid64_modf.c
+ src/bid64_mul.c
+ src/bid64_nearbyintd.c
+ src/bid64_next.c
+ src/bid64_nexttowardd.c
+ src/bid64_noncomp.c
+ src/bid64_pow.c
+ src/bid64_quantexpd.c
+ src/bid64_quantize.c
+ src/bid64_rem.c
+ src/bid64_round_integral.c
+ src/bid64_scalb.c
+ src/bid64_scalbl.c
+ src/bid64_sin.c
+ src/bid64_sinh.c
+ src/bid64_sqrt.c
+ src/bid64_string.c
+ src/bid64_tan.c
+ src/bid64_tanh.c
+ src/bid64_tgamma.c
+ src/bid64_to_bid128.c
+ src/bid64_to_int16.c
+ src/bid64_to_int32.c
+ src/bid64_to_int64.c
+ src/bid64_to_int8.c
+ src/bid64_to_uint16.c
+ src/bid64_to_uint32.c
+ src/bid64_to_uint64.c
+ src/bid64_to_uint8.c
+ src/bid_binarydecimal.c
+ src/bid_convert_data.c
+ src/bid_decimal_data.c
+ src/bid_decimal_globals.c
+ src/bid_dpd.c
+ src/bid_feclearexcept.c
+ src/bid_fegetexceptflag.c
+ src/bid_feraiseexcept.c
+ src/bid_fesetexceptflag.c
+ src/bid_fetestexcept.c
+ src/bid_flag_operations.c
+ src/bid_from_int.c
+ src/bid_round.c
+ src/strtod128.c
+ src/strtod32.c
+ src/strtod64.c
+ src/wcstod128.c
+ src/wcstod32.c
+ src/wcstod64.c
+)
+
+if(MSVC)
+ add_compile_options(/W3 )
+else()
+ add_compile_options(-w)
+endif()
+
+if(WIN32)
+ if(CMAKE_SIZEOF_VOID_P EQUAL 8)
+ add_compile_options(-Defi2=1 -DEFI2=1)
+ else()
+ add_compile_options(-DIA32= -Dia32=1)
+ endif()
+else()
+ add_compile_options(-Defi2=1 -DEFI2=1)
+endif()
+
+
+include_directories(. src float128)
+
+add_library(intel_decimal128 ${intelrdfpmathlib_SOURCES})
+
+target_compile_definitions(
+ intel_decimal128 PRIVATE -DDECIMAL_CALL_BY_REFERENCE=0 -DDECIMAL_GLOBAL_ROUNDING=0 -DDECIMAL_GLOBAL_EXCEPTION_FLAGS=0
+)
+
+if(WIN32)
+ target_compile_definitions(intel_decimal128 PRIVATE -DWINDOWS=1 -DWNT=1 -Dwinnt=1)
+elseif(APPLE)
+ target_compile_definitions(intel_decimal128 PRIVATE -DLINUX=1 -Dmach=1)
+elseif(CMAKE_SYSTEM_NAME MATCHES "(FreeBSD|OpenBSD|NetBSD)")
+ target_compile_definitions(intel_decimal128 PRIVATE -DLINUX=1 -Dfreebsd=1)
+else()
+ target_compile_definitions(intel_decimal128 PRIVATE -DLINUX=1 -Dlinux=1)
+endif()
+
+install(
+ TARGETS intel_decimal128
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib
+)
+
+if(NOT DISABLE_INSTALL_HEADERS)
+ install(FILES src/dfp754.h DESTINATION include)
+endif()
diff --git a/vcpkg/ports/intelrdfpmathlib/missing-includes.patch b/vcpkg/ports/intelrdfpmathlib/missing-includes.patch new file mode 100644 index 0000000..540be9b --- /dev/null +++ b/vcpkg/ports/intelrdfpmathlib/missing-includes.patch @@ -0,0 +1,24 @@ +diff --git a/LIBRARY/src/bid_internal.h b/LIBRARY/src/bid_internal.h +index cd08ea7..ea5d0a0 100755 +--- a/LIBRARY/src/bid_internal.h ++++ b/LIBRARY/src/bid_internal.h +@@ -37,6 +37,7 @@ + + #include "bid_conf.h" + #include "bid_functions.h" ++#include <stdlib.h> + + #define __BID_INLINE__ static __inline + +diff --git a/LIBRARY/float128/dpml_exception.c b/LIBRARY/float128/dpml_exception.c +index d061a4c..c647732 100755 +--- a/LIBRARY/float128/dpml_exception.c ++++ b/LIBRARY/float128/dpml_exception.c +@@ -132,6 +132,7 @@ + !defined(wnt) + + # include <sys/signal.h> ++#include <signal.h> + # define DPML_SIGNAL(p) raise(SIGFPE) + + #else diff --git a/vcpkg/ports/intelrdfpmathlib/portfile.cmake b/vcpkg/ports/intelrdfpmathlib/portfile.cmake new file mode 100644 index 0000000..8f05012 --- /dev/null +++ b/vcpkg/ports/intelrdfpmathlib/portfile.cmake @@ -0,0 +1,28 @@ +vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+
+vcpkg_download_distfile(ARCHIVE
+ URLS "http://www.netlib.org/misc/intel/IntelRDFPMathLib20U2.tar.gz"
+ FILENAME "IntelRDFPMathLib20U2.tar.gz"
+ SHA512 4d445855f41b066b784f0c6b4e52f854df4129fa9d43569b1e1518f002b860f69796459c78de46a8ea24fb6e7aefe7f8bc1f253e78971a5ef202dab2a7b1b75a
+)
+
+vcpkg_extract_source_archive(
+ SOURCE_PATH
+ ARCHIVE ${ARCHIVE}
+ PATCHES missing-includes.patch
+)
+
+set(LIB_SOURCE_PATH "${SOURCE_PATH}/LIBRARY")
+
+file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${LIB_SOURCE_PATH}")
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${LIB_SOURCE_PATH}"
+ OPTIONS_DEBUG
+ -DDISABLE_INSTALL_HEADERS=ON
+)
+
+vcpkg_cmake_install()
+
+# Handle copyright
+file(INSTALL "${SOURCE_PATH}/eula.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/vcpkg/ports/intelrdfpmathlib/vcpkg.json b/vcpkg/ports/intelrdfpmathlib/vcpkg.json new file mode 100644 index 0000000..f16c7e5 --- /dev/null +++ b/vcpkg/ports/intelrdfpmathlib/vcpkg.json @@ -0,0 +1,13 @@ +{ + "name": "intelrdfpmathlib", + "version-string": "20U2", + "port-version": 6, + "description": "Intel(R) Decimal Floating-Point Math Library", + "supports": "!(arm & windows)", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + } + ] +} |