forked from pool/cddlib
Jan Engelhardt
437bacbbc2
OBS-URL: https://build.opensuse.org/package/show/science/cddlib?expand=0&rev=23
71 lines
2.0 KiB
Diff
71 lines
2.0 KiB
Diff
From 1412ca0120841c7f8a83633c5dc857add060445f Mon Sep 17 00:00:00 2001
|
|
From: Jan Engelhardt <jengelh@inai.de>
|
|
Date: Sat, 19 Sep 2020 13:03:18 +0200
|
|
Subject: [PATCH] build: extend "extern C" block in header files
|
|
Upstream: https://github.com/cddlib/cddlib/pull/46
|
|
|
|
I am getting compile errors in sympol when I try to remove
|
|
their extern "C" hack:
|
|
|
|
extern "C" {
|
|
#include <cddlib/cdd.h>
|
|
}
|
|
|
|
Turns out this is because cdd's own extern C are not broad enough.
|
|
---
|
|
lib-src/cdd.h | 18 +++++++-----------
|
|
1 file changed, 7 insertions(+), 11 deletions(-)
|
|
|
|
diff --git a/lib-src/cdd.h b/lib-src/cdd.h
|
|
index ebc52cc..d78d5d1 100644
|
|
--- a/lib-src/cdd.h
|
|
+++ b/lib-src/cdd.h
|
|
@@ -35,6 +35,10 @@ extern mytype dd_purezero;
|
|
extern mytype dd_minuszero;
|
|
extern mytype dd_minusone;
|
|
|
|
+#if defined(__cplusplus)
|
|
+extern "C" {
|
|
+#endif
|
|
+
|
|
extern time_t dd_statStartTime; /* cddlib starting time */
|
|
extern long dd_statBApivots; /* basis finding pivots */
|
|
extern long dd_statCCpivots; /* criss-cross pivots */
|
|
@@ -53,10 +57,6 @@ extern dd_boolean dd_choiceLexicoPivotQ; /* whether to use the lexicographic
|
|
|
|
/* ---------- FUNCTIONS MEANT TO BE PUBLIC ---------- */
|
|
|
|
-#if defined(__cplusplus)
|
|
-extern "C" {
|
|
-#endif
|
|
-
|
|
/* basic matrix manipulations */
|
|
void dd_InitializeArow(dd_colrange,dd_Arow *);
|
|
void dd_InitializeAmatrix(dd_rowrange,dd_colrange,dd_Amatrix *);
|
|
@@ -211,10 +211,6 @@ void dd_WriteLPMode(FILE *f);
|
|
dd_MatrixPtr dd_FourierElimination(dd_MatrixPtr,dd_ErrorType *);
|
|
dd_MatrixPtr dd_BlockElimination(dd_MatrixPtr, dd_colset, dd_ErrorType *);
|
|
|
|
-#if defined(__cplusplus)
|
|
-}
|
|
-#endif
|
|
-
|
|
/* ---------- FUNCTIONS MEANT TO BE NON-PUBLIC ---------- */
|
|
void dd_QuickSort(dd_rowindex, long, long, dd_Amatrix, long);
|
|
void dd_RandomPermutation(dd_rowindex, long, unsigned int seed);
|
|
@@ -285,8 +281,8 @@ dd_PolyhedraPtr dd_CreatePolyhedraData(dd_rowrange, dd_colrange);
|
|
dd_boolean dd_InitializeConeData(dd_rowrange, dd_colrange, dd_ConePtr*);
|
|
dd_boolean dd_AppendMatrix2Poly(dd_PolyhedraPtr*, dd_MatrixPtr);
|
|
|
|
-
|
|
-
|
|
-
|
|
+#if defined(__cplusplus)
|
|
+}
|
|
+#endif
|
|
|
|
/* end of cddlib.h */
|
|
--
|
|
2.28.0
|
|
|