xmake.lua 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. includes("@builtin/check")
  2. configvar_check_cincludes("COINUTILS_HAS_CSTDINT", "cstdint")
  3. configvar_check_cincludes("COINUTILS_HAS_STDINT_H", "stdint.h")
  4. -- configvar_check_cincludes("COIN_HAS_BLAS", "cblas.h")
  5. -- configvar_check_cincludes("COIN_HAS_GLPK", "glpk.h")
  6. -- configvar_check_cincludes("COIN_HAS_LAPACK", "lapacke_utils.h")
  7. configvar_check_cincludes("HAVE_CFLOAT", "cfloat")
  8. configvar_check_cincludes("HAVE_CIEEEFP", "cieeefp")
  9. configvar_check_cincludes("HAVE_CINTTYPES", "cinttypes")
  10. configvar_check_cincludes("HAVE_CMATH", "cmath")
  11. configvar_check_cincludes("HAVE_CSTDINT", "cstdint")
  12. configvar_check_cincludes("HAVE_DLFCN_H", "dlfcn.h")
  13. configvar_check_cincludes("HAVE_ENDIAN_H", "endian.h")
  14. configvar_check_cincludes("HAVE_FLOAT_H", "float.h")
  15. configvar_check_cincludes("HAVE_IEEEFP_H", "ieeefp.h")
  16. configvar_check_cincludes("HAVE_INTTYPES_H", "inttypes.h")
  17. configvar_check_cincludes("HAVE_MATH_H", "math.h")
  18. configvar_check_cincludes("HAVE_MEMORY_H", "memory.h")
  19. configvar_check_cincludes("HAVE_STDINT_H", "stdint.h")
  20. configvar_check_cincludes("HAVE_STDLIB_H", "stdlib.h")
  21. configvar_check_cincludes("HAVE_STRINGS_H", "strings.h")
  22. configvar_check_cincludes("HAVE_STRING_H", "string.h")
  23. configvar_check_cincludes("HAVE_SYS_STAT_H", "sys/stat.h")
  24. configvar_check_cincludes("HAVE_SYS_TYPES_H", "sys/types.h")
  25. configvar_check_cincludes("HAVE_UNISTD_H", "unistd.h")
  26. configvar_check_cincludes("HAVE_WINDOWS_H", "windows.h")
  27. configvar_check_cincludes("STDC_HEADERS", {"stdlib.h", "string.h"})
  28. set_configvar("COIN_INT64_T", "long long", {quote = false})
  29. set_configvar("COIN_INTPTR_T", "intptr_t", {quote = false})
  30. set_configvar("COIN_UINT64_T", "unsigned long long", {quote = false})
  31. add_rules("mode.debug", "mode.release")
  32. add_requires("bzip2", "zlib")
  33. if is_plat("linux", "macosx", "bsd") then
  34. add_requires("readline")
  35. add_packages("readline")
  36. end
  37. set_languages("c++11")
  38. target("CoinUtils")
  39. set_kind("$(kind)")
  40. add_defines("HAVE_CONFIG_H", "COINUTILS_BUILD")
  41. add_files("CoinUtils/src/*.cpp")
  42. add_headerfiles("CoinUtils/src/*.hpp", "CoinUtils/src/*.h", {prefixdir = "coin"})
  43. set_configdir("CoinUtils/src")
  44. add_configfiles("CoinUtils/src/(config.h.in)")
  45. add_configfiles("CoinUtils/src/(config_coinutils.h.in)")
  46. if is_plat("windows") and is_kind("shared") then
  47. add_rules("utils.symbols.export_all", {export_classes = true})
  48. end
  49. add_packages("bzip2", "zlib")
  50. if is_plat("macosx", "iphoneos") then
  51. add_frameworks("Accelerate")
  52. elseif is_plat("linux", "bsd") then
  53. add_syslinks("m")
  54. end