diff --git a/.gitignore b/.gitignore index bec9e42..279a648 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /OS-2.9.3.tgz +/OS-2.10.1.tgz diff --git a/coin-or-OS-bool-null.patch b/coin-or-OS-bool-null.patch new file mode 100644 index 0000000..85b4eab --- /dev/null +++ b/coin-or-OS-bool-null.patch @@ -0,0 +1,336 @@ +diff -up OS-2.10.1/src/OSCommonInterfaces/OSMatrix.cpp.orig OS-2.10.1/src/OSCommonInterfaces/OSMatrix.cpp +--- OS-2.10.1/src/OSCommonInterfaces/OSMatrix.cpp.orig 2016-03-17 12:26:50.735880890 -0300 ++++ OS-2.10.1/src/OSCommonInterfaces/OSMatrix.cpp 2016-03-17 12:27:01.395881298 -0300 +@@ -2297,7 +2297,7 @@ ExpandedMatrixBlocks* MatrixType::getBlo + + if (!processBlocks(rowPartition, rowPartitionSize, + colPartition, colPartitionSize, false, symmetry)) +- return false; ++ return NULL; + return ExpandedMatrixByBlocks.back(); + }// end of MatrixType::getBlocks + +diff -up OS-2.10.1/src/OSParsers/OSParseosil.y.orig OS-2.10.1/src/OSParsers/OSParseosil.y +--- OS-2.10.1/src/OSParsers/OSParseosil.y.orig 2016-03-17 12:26:57.922881165 -0300 ++++ OS-2.10.1/src/OSParsers/OSParseosil.y 2016-03-17 12:31:37.978891889 -0300 +@@ -131,9 +131,9 @@ char *parseBase64( const char **p, int * + + #define ISDIGIT(_c) ((_c) >= '0' && (_c) <= '9') + +-#define GETATTRIBUTETEXT \ ++#define GETATTRIBUTETEXT(TYPE) \ + for(; ISWHITESPACE( *ch) || isnewline( *ch, osillineno); ch++ ) ; \ +- if( *ch != '=') { osilerror_wrapper( ch, osillineno, "found an attribute not defined"); return false;} \ ++ if( *ch != '=') { osilerror_wrapper( ch, osillineno, "found an attribute not defined"); return (TYPE)0;} \ + ch++; \ + for(; ISWHITESPACE( *ch) || isnewline( *ch, osillineno); ch++ ) ; \ + if(*ch == '\"'){ \ +@@ -149,7 +149,7 @@ char *parseBase64( const char **p, int * + *p = ch; \ + for( ; *ch != '\''; ch++); \ + } \ +- else { osilerror_wrapper( ch, osillineno,"missing quote on attribute"); return false;} \ ++ else { osilerror_wrapper( ch, osillineno,"missing quote on attribute"); return (TYPE)0;} \ + }\ + numChar = ch - *p; \ + attText = new char[numChar + 1]; \ +@@ -6446,7 +6446,7 @@ bool parseVariables( const char **p, OS + while(*c_numberOfVariables++ == *ch) ch++; + if( (ch - *p) != 17) { osilerror_wrapper( ch,osillineno,"incorrect numberOfVariables attribute in "); return false;} + // buf_index should be pointing to the first character after numberOfVariables +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + ch++; + numberOfVariables = atoimod1( osillineno, attText, attTextEnd); + delete [] attText; +@@ -6496,7 +6496,7 @@ bool parseVariables( const char **p, OS + name -= 5; + if(varnameattON == true) { osilerror_wrapper( ch,osillineno,"too many variable name attributes"); return false;} + varnameattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->variables->var[varcount]->name=attText; + delete [] attText; + break; +@@ -6507,7 +6507,7 @@ bool parseVariables( const char **p, OS + type -= 5; + if(vartypeattON == true) { osilerror_wrapper( ch,osillineno,"too many variable type attributes"); return false;} + vartypeattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + vt = returnVarType(attText[0]); + if( vt == 0 ) { osilerror_wrapper( ch,osillineno,"variable type not recognized"); return false;} + osinstance->instanceData->variables->var[varcount]->type = attText[0]; +@@ -6518,7 +6518,7 @@ bool parseVariables( const char **p, OS + if(*ch++ != 'b') { osilerror_wrapper( ch,osillineno,"error in variables lower bound attribute"); return false;} + if(varlbattON == true) { osilerror_wrapper( ch,osillineno,"too many variable lb attributes"); return false;} + varlbattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->variables->var[varcount]->lb = atofmod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -6527,7 +6527,7 @@ bool parseVariables( const char **p, OS + if(*ch++ != 'b') { osilerror_wrapper( ch,osillineno,"error in variables upper bound attribute"); return false;} + if(varubattON == true) { osilerror_wrapper( ch,osillineno,"too many variable ub attributes"); return false;} + varubattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->variables->var[varcount]->ub = atofmod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -6538,7 +6538,7 @@ bool parseVariables( const char **p, OS + mult -= 5; + if(varmultattON == true) { osilerror_wrapper( ch,osillineno,"too many variable mult attributes"); return false;} + varmultattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + varmult = atoimod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -6742,7 +6742,7 @@ bool parseObjectives( const char **p, OS + *p = ch; + while( *c_numberOfObjectives++ == *ch) ch++; + if( (ch - *p) != 18) { osilerror_wrapper( ch,osillineno,"incorrect numberOfObjectives attribute in tag"); return false;} +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + numberOfObjectives = atoimod1( osillineno, attText, attTextEnd); + delete [] attText; + ch++; +@@ -6797,7 +6797,7 @@ bool parseObjectives( const char **p, OS + else{ + if(objnumberOfObjCoefattON == true) { osilerror_wrapper( ch,osillineno,"too many obj numberOfObjCoef attributes"); return false;} + objnumberOfObjCoefattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->objectives->obj[objcount]->numberOfObjCoef=atoimod1( osillineno,attText, attTextEnd); + if(osinstance->instanceData->objectives->obj[objcount]->numberOfObjCoef > 0 && osinstance->instanceData->variables->numberOfVariables == 0){ osilerror_wrapper( ch,osillineno,"we have zero variables, but have objective function coefficients"); return false;} + osinstance->instanceData->objectives->obj[objcount]->coef = new ObjCoef*[osinstance->instanceData->objectives->obj[ objcount]->numberOfObjCoef]; +@@ -6813,7 +6813,7 @@ bool parseObjectives( const char **p, OS + else{ + if(objnameattON == true) { osilerror_wrapper( ch,osillineno,"too many obj name attributes"); return false;} + objnameattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->objectives->obj[objcount]->name=attText; + delete [] attText; + } +@@ -6827,7 +6827,7 @@ bool parseObjectives( const char **p, OS + else{ + if(objconstantattON == true) { osilerror_wrapper( ch,osillineno,"too many obj constant attributes"); return false;} + objconstantattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->objectives->obj[objcount]->constant=atofmod1( osillineno,attText, attTextEnd); + delete [] attText; + } +@@ -6840,7 +6840,7 @@ bool parseObjectives( const char **p, OS + else{ + if(objweightattON == true) { osilerror_wrapper( ch,osillineno,"too many obj weight attributes"); return false;} + objweightattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->objectives->obj[objcount]->weight=atofmod1( osillineno,attText, attTextEnd); + delete [] attText; + } +@@ -6854,7 +6854,7 @@ bool parseObjectives( const char **p, OS + else{ + if(objmaxOrMinattON == true) { osilerror_wrapper( ch,osillineno,"too many obj maxOrMin attributes"); return false;} + objmaxOrMinattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + if( (strcmp("max", attText) != 0 ) && (strcmp("min", attText) != 0 ) ){osilerror_wrapper( ch,osillineno,"maxOrMin attribute in objective must be a max or min"); return false;} + osinstance->instanceData->objectives->obj[objcount]->maxOrMin = attText; + delete [] attText; +@@ -6868,7 +6868,7 @@ bool parseObjectives( const char **p, OS + else{ + if(objmultattON == true) { osilerror_wrapper( ch,osillineno,"too many obj mult attributes"); return false;} + objmultattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + objmult = atoimod1( osillineno,attText, attTextEnd); + delete [] attText; + } +@@ -7059,7 +7059,7 @@ bool parseConstraints( const char **p, O + while( *c_numberOfConstraints++ == *ch) ch++; + if( (ch - *p) != 19) { osilerror_wrapper( ch,osillineno,"incorrect numberOfConstraints attribute in tag"); return false;} + // ch should be pointing to the first character after numberOfConstraints +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + ch++; + numberOfConstraints = atoimod1( osillineno, attText, attTextEnd); + delete [] attText; +@@ -7103,7 +7103,7 @@ bool parseConstraints( const char **p, O + if(connameattON == true) { osilerror_wrapper( ch,osillineno,"too many con name attributes"); return false;} + name -= 5; + connameattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->constraints->con[concount]->name=attText; + delete [] attText; + break; +@@ -7114,7 +7114,7 @@ bool parseConstraints( const char **p, O + if(conconstantattON == true) { osilerror_wrapper( ch,osillineno,"too many con constant attributes"); return false;} + constant -= 9; + conconstantattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->constraints->con[concount]->constant=atofmod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -7123,7 +7123,7 @@ bool parseConstraints( const char **p, O + if(*ch++ != 'b') { osilerror_wrapper( ch,osillineno,"error in constraint lb attribute"); return false;} + if(conlbattON == true) { osilerror_wrapper( ch,osillineno,"too many con lb attributes"); return false;} + conlbattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->constraints->con[concount]->lb = atofmod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -7132,7 +7132,7 @@ bool parseConstraints( const char **p, O + if(*ch++ != 'b') { osilerror_wrapper( ch,osillineno,"error in constraint ub attribute"); return false;} + if(conubattON == true) { osilerror_wrapper( ch,osillineno,"too many con ub attributes"); return false;} + conubattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->constraints->con[concount]->ub = atofmod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -7143,7 +7143,7 @@ bool parseConstraints( const char **p, O + if(conmultattON == true) { osilerror_wrapper( ch,osillineno,"too many con mult attributes"); return false;} + mult -= 5; + conmultattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + conmult = atoimod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -7311,7 +7311,7 @@ bool parseLinearConstraintCoefficients( + while( *c_numberOfValues++ == *ch) ch++; + if( (ch - *p) != 14) { osilerror_wrapper( ch,osillineno,"incorrect numberOfValues attribute in tag"); return false;} + // ch should be pointing to the first character after numberOfValues +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + ch++; + numberOfValues = atoimod1( osillineno, attText, attTextEnd); + if(numberOfValues > 0 && osinstance->instanceData->variables->numberOfVariables == 0){ osilerror_wrapper( ch,osillineno,"we have zero variables, but A matrix coefficients"); return false;} +@@ -7462,7 +7462,7 @@ bool parseStart(const char **p, OSInstan + if(elincrattON == true) { osilerror_wrapper( ch,osillineno,"too many el incr attributes"); return false;} + incr -= 5; + elincrattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + elincr = atoimod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -7473,7 +7473,7 @@ bool parseStart(const char **p, OSInstan + if(elmultattON == true) { osilerror_wrapper( ch,osillineno,"too many el mult attributes"); return false;} + mult -= 5; + elmultattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + elmult = atoimod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -7669,7 +7669,7 @@ bool parseRowIdx( const char **p, OSInst + if(elincrattON == true) { osilerror_wrapper( ch,osillineno,"too many el incr attributes"); return false;} + incr -= 5; + elincrattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + elincr = atoimod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -7680,7 +7680,7 @@ bool parseRowIdx( const char **p, OSInst + if(elmultattON == true) { osilerror_wrapper( ch,osillineno,"too many el mult attributes"); return false;} + mult -= 5; + elmultattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + elmult = atoimod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -7871,7 +7871,7 @@ bool parseColIdx( const char **p, OSInst + if(elincrattON == true) { osilerror_wrapper( ch,osillineno,"too many el incr attributes"); return false;} + incr -= 5; + elincrattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + elincr = atoimod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -7882,7 +7882,7 @@ bool parseColIdx( const char **p, OSInst + if(elmultattON == true) { osilerror_wrapper( ch,osillineno,"too many el mult attributes"); return false;} + mult -= 5; + elmultattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + elmult = atoimod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -8075,7 +8075,7 @@ bool parseValue( const char **p, OSInsta + if(elincrattON == true) { osilerror_wrapper( ch,osillineno,"too many el incr attributes"); return false;} + incr -= 5; + elincrattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + elincr = atofmod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -8086,7 +8086,7 @@ bool parseValue( const char **p, OSInsta + if(elmultattON == true) { osilerror_wrapper( ch,osillineno,"too many el mult attributes"); return false;} + mult -= 5; + elmultattON = true; +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + elmult = atoimod1( osillineno,attText, attTextEnd); + delete [] attText; + break; +@@ -8204,7 +8204,7 @@ bool parseObjCoef( const char **p, int o + if( (ch - *p) != 3) { osilerror_wrapper( ch,osillineno,"incorrect idx attribute in objective function tag"); return false;} + c_idx -= 4; + // ch should be pointing to the first character after idx attribute +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(bool); + osinstance->instanceData->objectives->obj[objcount]->coef[ k]->idx = atoimod1( osillineno, attText, attTextEnd); + delete [] attText; + ch++; +@@ -8257,9 +8257,9 @@ char *parseBase64(const char **p, int *d + // eat the white space + for( ; ISWHITESPACE( *ch) || isnewline( *ch, osillineno); ch++ ) ; + for(i = 0; sizeOf[i] == *ch; i++, ch++); +- if(i != 6) { osilerror_wrapper( ch,osillineno,"incorrect sizeOf attribute in element"); return false;} ++ if(i != 6) { osilerror_wrapper( ch,osillineno,"incorrect sizeOf attribute in element"); return NULL;} + // ch should be pointing to the first character after sizeOf +- GETATTRIBUTETEXT; ++ GETATTRIBUTETEXT(char*); + ch++; + *dataSize = atoimod1( osillineno, attText, attTextEnd); + delete [] attText; +@@ -8267,7 +8267,7 @@ char *parseBase64(const char **p, int *d + // eat the white space + for( ; ISWHITESPACE( *ch) || isnewline( *ch, osillineno); ch++ ) ; + // better have an > sign or not valid +- if(*ch != '>' ) { osilerror_wrapper( ch,osillineno," element does not have a proper closing >"); return false;} ++ if(*ch != '>' ) { osilerror_wrapper( ch,osillineno," element does not have a proper closing >"); return NULL;} + ch++; + // we are now pointing start of the data + const char *b64textstart = ch; +@@ -8276,7 +8276,7 @@ char *parseBase64(const char **p, int *d + const char *b64textend = ch; + // we should be pointing to + for(i = 0; endBase64BinaryData[i] == *ch; i++, ch++); +- if(i != 18) { osilerror_wrapper( ch,osillineno," problem with element"); return false;} ++ if(i != 18) { osilerror_wrapper( ch,osillineno," problem with element"); return NULL;} + int b64len = b64textend - b64textstart; + b64string = new char[ b64len + 1]; + for(ki = 0; ki < b64len; ki++) b64string[ki] = b64textstart[ ki]; +@@ -8284,7 +8284,7 @@ char *parseBase64(const char **p, int *d + // burn the white space + for( ; ISWHITESPACE( *ch) || isnewline( *ch, osillineno); ch++ ) ; + // better have an > sign or not valid +- if(*ch != '>' ) { osilerror_wrapper( ch,osillineno," element does not have a proper closing >"); return false;} ++ if(*ch != '>' ) { osilerror_wrapper( ch,osillineno," element does not have a proper closing >"); return NULL;} + ch++; + for( ; ISWHITESPACE( *ch) || isnewline( *ch, osillineno); ch++ ) ; + *p = ch; diff --git a/coin-or-OS-docdir.patch b/coin-or-OS-docdir.patch index 2308089..7891cd3 100644 --- a/coin-or-OS-docdir.patch +++ b/coin-or-OS-docdir.patch @@ -1,6 +1,6 @@ -diff -up OS-2.9.3/Makefile.in.orig OS-2.9.3/Makefile.in ---- OS-2.9.3/Makefile.in.orig 2015-06-14 10:57:53.450182937 -0300 -+++ OS-2.9.3/Makefile.in 2015-06-14 10:58:46.232184958 -0300 +diff -up OS-2.10.1/Makefile.in.orig OS-2.10.1/Makefile.in +--- OS-2.10.1/Makefile.in.orig 2016-03-17 11:40:27.391774306 -0300 ++++ OS-2.10.1/Makefile.in 2016-03-17 11:40:51.033775211 -0300 @@ -481,7 +481,7 @@ EXTRA_DIST = $(am__append_2) ######################################################################## pkgconfiglibdir = $(libdir)/pkgconfig diff --git a/coin-or-OS-flex-bison.patch b/coin-or-OS-flex-bison.patch index ab4b887..faa8922 100644 --- a/coin-or-OS-flex-bison.patch +++ b/coin-or-OS-flex-bison.patch @@ -1,14 +1,32 @@ -diff -up OS-2.9.3/src/OSParsers/OSParseosil.l.orig OS-2.9.3/src/OSParsers/OSParseosil.l ---- OS-2.9.3/src/OSParsers/OSParseosil.l.orig 2015-06-14 11:23:40.915242195 -0300 -+++ OS-2.9.3/src/OSParsers/OSParseosil.l 2015-06-14 11:24:04.440243096 -0300 -@@ -36,7 +36,10 @@ +diff -up OS-2.10.1/src/OSParsers/OSParseosil.l.orig OS-2.10.1/src/OSParsers/OSParseosil.l +--- OS-2.10.1/src/OSParsers/OSParseosil.l.orig 2016-03-17 12:46:13.672925423 -0300 ++++ OS-2.10.1/src/OSParsers/OSParseosil.l 2016-03-17 12:46:23.557925801 -0300 +@@ -35,7 +35,10 @@ + #include "OSDataStructures.h" + #include "OSErrorClass.h" + #include "OSMathUtil.h" ++#include "OSgLParserData.h" + #include "OSiLParserData.h" ++#include "OSnLParserData.h" ++#include "OSInstance.h" + #include "OSParseosil.tab.hpp" + #include "OSInstance.h" + #include "OSGeneral.h" +diff -up OS-2.10.1/src/OSParsers/OSParseosrl.l.orig OS-2.10.1/src/OSParsers/OSParseosrl.l +--- OS-2.10.1/src/OSParsers/OSParseosrl.l.orig 2016-03-17 12:46:21.239925712 -0300 ++++ OS-2.10.1/src/OSParsers/OSParseosrl.l 2016-03-17 12:46:58.584927142 -0300 +@@ -35,10 +35,13 @@ #include "OSDataStructures.h" #include "OSErrorClass.h" #include "OSMathUtil.h" +#include "OSgLParserData.h" - #include "OSiLParserData.h" + #include "OSrLParserData.h" +-#include "OSParseosrl.tab.hpp" +#include "OSnLParserData.h" +#include "OSInstance.h" - #include "OSParseosil.tab.hpp" - #include "OSInstance.h" + #include "OSResult.h" #include "OSGeneral.h" ++#include "OSParseosrl.tab.hpp" + + #ifdef HAVE_CSTDIO + # include diff --git a/coin-or-OS-svnversion.patch b/coin-or-OS-svnversion.patch index 9bdc6d3..41f8374 100644 --- a/coin-or-OS-svnversion.patch +++ b/coin-or-OS-svnversion.patch @@ -1,6 +1,6 @@ -diff -up OS-2.9.3/src/OSUtils/OSParameters.cpp.orig OS-2.9.3/src/OSUtils/OSParameters.cpp ---- OS-2.9.3/src/OSUtils/OSParameters.cpp.orig 2015-06-14 11:00:03.634187922 -0300 -+++ OS-2.9.3/src/OSUtils/OSParameters.cpp 2015-06-14 11:00:38.040189240 -0300 +diff -up OS-2.10.1/src/OSUtils/OSParameters.cpp.orig OS-2.10.1/src/OSUtils/OSParameters.cpp +--- OS-2.10.1/src/OSUtils/OSParameters.cpp.orig 2016-03-17 11:41:31.895776776 -0300 ++++ OS-2.10.1/src/OSUtils/OSParameters.cpp 2016-03-17 11:41:59.616777837 -0300 @@ -84,6 +84,7 @@ std::string OSgetVersionInfo() temp_version << OS_VERSION; diff --git a/coin-or-OS.spec b/coin-or-OS.spec index 1f5a38b..b5eb3b6 100644 --- a/coin-or-OS.spec +++ b/coin-or-OS.spec @@ -10,8 +10,8 @@ Name: coin-or-%{module} Group: Applications/Engineering Summary: Optimization Services -Version: 2.9.3 -Release: 6%{?dist} +Version: 2.10.1 +Release: 1%{?dist} License: EPL URL: http://projects.coin-or.org/%{module} Source0: http://www.coin-or.org/download/pkgsource/%{module}/%{module}-%{version}.tgz @@ -65,6 +65,9 @@ Patch1: %{name}-svnversion.patch # Correct build when regenerating parsers Patch2: %{name}-flex-bison.patch +# Return NULL not false from function returing a pointer +Patch3: %{name}-bool-null.patch + %description The objective of Optimization Services (OS) is to provide a set of standards for representing optimization instances, results, solver options, and @@ -97,6 +100,7 @@ This package contains the documentation for %{name}. %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 %build # --with-flex-bison is to force parses regeneration; and ensure the @@ -149,6 +153,10 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} make test %doc %{_docdir}/%{name}/html %changelog +* Thu Mar 17 2016 pcpa - 2.10.1-1 +- Update to latest upstream release +- Correct FTBFS in rawhide (#1307390) + * Wed Feb 03 2016 Fedora Release Engineering - 2.9.3-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild diff --git a/sources b/sources index 338b2f2..a5bd86b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -01f25d219cc7c4c07fa6ab6aef1f4bf4 OS-2.9.3.tgz +45ed2187c98a960fac3f1882a96f1f48 OS-2.10.1.tgz