aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/coin-or-cbc
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/coin-or-cbc')
-rw-r--r--vcpkg/ports/coin-or-cbc/disable_glpk.patch14
-rw-r--r--vcpkg/ports/coin-or-cbc/pkgconf_win.patch13
-rw-r--r--vcpkg/ports/coin-or-cbc/portfile.cmake37
-rw-r--r--vcpkg/ports/coin-or-cbc/vcpkg.json18
4 files changed, 82 insertions, 0 deletions
diff --git a/vcpkg/ports/coin-or-cbc/disable_glpk.patch b/vcpkg/ports/coin-or-cbc/disable_glpk.patch
new file mode 100644
index 0000000..1878580
--- /dev/null
+++ b/vcpkg/ports/coin-or-cbc/disable_glpk.patch
@@ -0,0 +1,14 @@
+diff --git a/src/CbcSolver.cpp b/src/CbcSolver.cpp
+index 93da884..1c9d463 100644
+--- a/src/CbcSolver.cpp
++++ b/src/CbcSolver.cpp
+@@ -32,6 +32,9 @@
+ void CbcCrashHandler(int sig);
+ #endif
+
++// glpk currently not supported
++#undef COINUTILS_HAS_GLPK
++
+ #ifdef COINUTILS_HAS_GLPK
+ #include "glpk.h"
+ #endif
diff --git a/vcpkg/ports/coin-or-cbc/pkgconf_win.patch b/vcpkg/ports/coin-or-cbc/pkgconf_win.patch
new file mode 100644
index 0000000..a498394
--- /dev/null
+++ b/vcpkg/ports/coin-or-cbc/pkgconf_win.patch
@@ -0,0 +1,13 @@
+diff --git a/configure b/configure
+index 3a63499..2d12129 100755
+--- a/configure
++++ b/configure
+@@ -17932,8 +17932,6 @@ fi
+
+ COIN_PKG_CONFIG_PATH="${PKG_CONFIG_PATH}"
+
+-
+- COIN_PKG_CONFIG_PATH="${expanded_libdir}/pkgconfig:${COIN_PKG_CONFIG_PATH}"
+ if test -n "$PKG_CONFIG"; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $PKG_CONFIG path is \"$COIN_PKG_CONFIG_PATH\"" >&5
+ printf "%s\n" "$as_me: $PKG_CONFIG path is \"$COIN_PKG_CONFIG_PATH\"" >&6;}
diff --git a/vcpkg/ports/coin-or-cbc/portfile.cmake b/vcpkg/ports/coin-or-cbc/portfile.cmake
new file mode 100644
index 0000000..4cf58e1
--- /dev/null
+++ b/vcpkg/ports/coin-or-cbc/portfile.cmake
@@ -0,0 +1,37 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO coin-or/Cbc
+ REF ca088df34881ef0d58124e53b3d70bfa73e92713
+ SHA512 9df1242910a42a9b942fd25dbf8a80b6278d75641c93e1218b39695224cf88bdf9d1a2d27e637ebb068b1e8733267a0f16c69b4db9a480e3f6b9cd732afb2d7a
+ PATCHES
+ pkgconf_win.patch
+ disable_glpk.patch
+)
+
+file(COPY "${CURRENT_INSTALLED_DIR}/share/coin-or-buildtools/" DESTINATION "${SOURCE_PATH}")
+
+set(ENV{ACLOCAL} "aclocal -I \"${SOURCE_PATH}/BuildTools\"")
+
+vcpkg_make_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ --with-coinutils
+ --with-clp
+ --with-cgl
+ --with-osi
+ --without-ositests
+ --without-sample
+ --without-netlib
+ --without-miplib3
+ --enable-relocatable
+ --disable-readline
+)
+
+vcpkg_make_install()
+vcpkg_copy_pdbs()
+vcpkg_fixup_pkgconfig()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
diff --git a/vcpkg/ports/coin-or-cbc/vcpkg.json b/vcpkg/ports/coin-or-cbc/vcpkg.json
new file mode 100644
index 0000000..6503061
--- /dev/null
+++ b/vcpkg/ports/coin-or-cbc/vcpkg.json
@@ -0,0 +1,18 @@
+{
+ "name": "coin-or-cbc",
+ "version-date": "2024-06-04",
+ "port-version": 1,
+ "description": "Cbc (Coin-or branch and cut) is an open-source mixed integer linear programming solver written in C++.",
+ "homepage": "https://github.com/coin-or/Cbc",
+ "license": "EPL-2.0",
+ "dependencies": [
+ "coin-or-cgl",
+ "coin-or-clp",
+ "coin-or-osi",
+ "coinutils",
+ {
+ "name": "vcpkg-make",
+ "host": true
+ }
+ ]
+}