From 92fe6439c782129f9909d375258ae4ac045c8ef8 Mon Sep 17 00:00:00 2001
From: StefanBruens <>
Date: Jan 28 2023 18:59:06 +0000
Subject: Update lemon to version 1.3.1 / rev 1 via SR 1061511
https://build.opensuse.org/request/show/1061511
by user StefanBruens + dimstar_suse
dependency for openMVG
---
diff --git a/.files b/.files
new file mode 100644
index 0000000..adc99be
Binary files /dev/null and b/.files differ
diff --git a/.meta b/.meta
new file mode 100644
index 0000000..6fd5145
--- /dev/null
+++ b/.meta
@@ -0,0 +1,6 @@
+
+ LEMON
+ Library of Efficient Models and Optimization in Networks
+
+ http://lemon.cs.elte.hu/
+
diff --git a/.rev b/.rev
new file mode 100644
index 0000000..29e9efd
--- /dev/null
+++ b/.rev
@@ -0,0 +1,10 @@
+
+
+ 866a0cdd9774db976a04ecd9ad21ba5b
+ 1.3.1
+
+ dimstar_suse
+ dependency for openMVG
+ 1061511
+
+
diff --git a/fix_install_libdir.patch b/fix_install_libdir.patch
new file mode 100644
index 0000000..3256ade
--- /dev/null
+++ b/fix_install_libdir.patch
@@ -0,0 +1,22 @@
+diff -ruN a/lemon/CMakeLists.txt b/lemon/CMakeLists.txt
+--- a/lemon/CMakeLists.txt 2014-07-07 21:40:24.911315501 +0700
++++ b/lemon/CMakeLists.txt 2021-02-02 04:51:05.235918565 +0700
+@@ -66,8 +66,8 @@
+
+ INSTALL(
+ TARGETS lemon
+- ARCHIVE DESTINATION lib
+- LIBRARY DESTINATION lib
++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ COMPONENT library
+ )
+
+@@ -86,6 +86,6 @@
+
+ INSTALL(
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/lemon.pc
+- DESTINATION lib/pkgconfig
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
+ )
+
diff --git a/lemon-1.3.1.tar.gz b/lemon-1.3.1.tar.gz
new file mode 120000
index 0000000..77de88f
--- /dev/null
+++ b/lemon-1.3.1.tar.gz
@@ -0,0 +1 @@
+/ipfs/bafybeiaba6wpclw56blmcaf3mpmfghpxajmipae3bvsxek5lpaw6wrzuba
\ No newline at end of file
diff --git a/lemon.changes b/lemon.changes
new file mode 100644
index 0000000..709a53a
--- /dev/null
+++ b/lemon.changes
@@ -0,0 +1,114 @@
+-------------------------------------------------------------------
+Mon Feb 1 21:31:02 UTC 2021 - andy great
+
+- Update to version 1.3.1.
+ * Bugfix release.
+ * Fix shared lib build and versioning
+ * Fix invalid map query in NearestNeighborTsp
+ * Bugfix in debug checking and lower bound handling
+ in min cost flow algorithms
+ * Bugfix in default LP/MIP backend settings
+ * Bugfix in tsp_test
+ * Add missing include header and std:: namespace spec.
+ * Fix division by zero error in NetworkSimplex
+- Update for version 1.3
+ * New data structures
+ * Bipartite graph concepts and implementations
+ * New algorithms
+ * Port Edmonds-Karp algorithm
+ * Heuristic algorithm for the max clique problem
+ * Heuristic algorithms for symmetric TSP
+ * Nagamochi-Ibaraki algorithm [5087694945e4]
+ * Max. cardinality search
+ * Other new features
+ * Thread safe graph and graph map implementations
+ * Different TimeStamp print formats
+ * File export functionality to LpBase
+ * Bidirectional iterator support for radixSort()
+ * Implementation improvements
+ * Implementation improvements
+ * Network Simplex
+ * Better update process, pivot rule and arc mixing
+ * Improved Altering List pivot rule
+ * Various fine tunings in CostScaling
+ * Optional iteration limit in HowardMmc
+ * Ensure strongly polynomial running time for CycleCanceling
+ while keeping the same performance
+ * Make the CBC interface be compatible with latest CBC releases
+ * CMAKE has become the default build environment
+ * Improved LP/MIP configuration
+ * Enable/disable options for LP/MIP backends
+ * Better CPLEX discovery
+ * Add cmake config to find SoPlex
+ * Allow CPACK configuration on all platforms
+ * Add 'Maintainer' CMAKE build type
+ * Add 'check' target.
+ * Add contrib dir
+ * Better version string setting in CMAKE
+ * Support shared library build
+ * Support testing with valgrind
+ * Doc improvements
+ * SOURCE_BROWSER Doxygen switch is configurable from CMAKE
+ update-external-tags CMAKE target
+ * Optionally use MathJax for rendering the math formulae
+ * Various doc improvements
+ * Bugfixes (compared to release 1.2):
+ * Add missing doc/template.h and doc/references.bib to release
+ tarball
+ * Intel C++ compatibility fixes
+ * Fix buggy reinitialization in _solver_bits::VarIndex::clear()
+ * Bugfix in path copy constructors and assignment operators
+ * Bugfix in AllArcLookUp<>
+ * Bugfix in adaptor_test.cc
+ * Fix clang compilation warnings and errors
+ * Fix a bug + remove redundant typedefs in dimacs-solver
+ * Avoid GCC 4.7 compiler warnings
+ * Fix missing initialization in CplexEnv::CplexEnv()
+ * Add missing lemon/lemon.pc.cmake to the release tarball
+ * Create and install lemon.pc
+ * Fix VS warnings
+ * Fix LpBase::Constr two-side limit bug
+ * Bug fix in Dfs::start(s,t)
+ * Fix wrong initialization in Preflow
+ * Better Win CodeBlock/MinGW support
+ * Build environment improvements
+ * Build of mip_test and lp_test precede the running of the tests
+ * Also search for coin libs under ${COIN_ROOT_DIR}/lib/coin
+ * Do not look for COIN_VOL libraries
+ * Allow lgf file without Arc maps
+ * Bug fix in CostScaling
+ * Fix Pred[Matrix]MapPath::empty()
+ * Bug fix in (di)graphCopy()
+ The target graph is cleared before adding nodes and arcs/edges.
+ * Add missing UndirectedTags
+ * Fix the usage of std::numeric_limits<>::min() in Network Simplex
+ * Fix a critical bug in preflow
+ * Bugfix in assert.h
+ * Fix compilation issues related to various gcc versions
+ * Fix #define indicating CPLEX availability
+ * Add explicit namespace to
+ ignore_unused_variable_warning() usages
+ * Bugfix in IterableValueMap
+ * Bugfix in biNodeConnected()
+
+-------------------------------------------------------------------
+Sat Nov 19 17:29:08 UTC 2011 - werner.ho@gmx.de
+
+- new version 1.2.3
+
+-------------------------------------------------------------------
+* Tue May 04 2010 - 1.2
+- new version 1.2
+* Sun Dec 20 2009 Werner Hoch - 1.1.1
+- new version 1.1.1
+* Mon May 19 2009
+- new version 1.1
+* Tue May 05 2009
+- new version 1.0.4
+* Fri Jan 30 2009
+- new version 1.0.2
+* Thu Dec 18 2008 Werner Hoch - 1.0.1
+- new version 1.0.1
+* Mon Oct 20 2008
+- Initial package: lemon-1.0
+
diff --git a/lemon.spec b/lemon.spec
new file mode 100644
index 0000000..fc2af3c
--- /dev/null
+++ b/lemon.spec
@@ -0,0 +1,145 @@
+#
+# spec file for package lemon
+#
+# Copyright (c) 2021 SUSE LLC
+#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
+#
+
+
+%define sonum 1_3_1
+%define libname libemon%{sonum}
+Name: lemon
+Version: 1.3.1
+Release: 0
+Summary: Library of Efficient Models and Optimization in Networks
+License: BSL-1.0
+Group: System/Libraries
+URL: https://lemon.cs.elte.hu/
+Source0: http://lemon.cs.elte.hu/pub/sources/%{name}-%{version}.tar.gz
+# PATCH-FIX-OPENSUSE fix_install_libdir.patch andythe_great@pm.me -- Fix some files went into lib instead of lib64.
+Patch0: fix_install_libdir.patch
+BuildRequires: cmake
+BuildRequires: gcc-c++
+BuildRequires: glpk-devel >= 4.33
+Requires: %{libname} = %{version}
+
+%description
+LEMON stands for Library for Efficient Modeling and Optimization in
+Networks. It is a C++ template library providing efficient
+implementations of common data structures and algorithms with focus on
+combinatorial optimization tasks connected mainly with graphs and
+networks.
+
+LEMON is a member of the COIN-OR initiative, a collection of OR related
+open source projects. You are free to use it in your commercial or
+non-commercial applications under very permissive license terms.
+
+The project was launched by the Egerváry Research Group on Combinatorial
+Optimization (EGRES) at the Operations Research Department of the Eötvös
+Loránd University, Budapest in 2003. Up to this point, the developers of
+the library work at the Eötvös Loránd University, Budapest and at the
+Budapest University of Technology and Economics.
+
+%package -n libemon%{sonum}
+Summary: Library of Efficient Models and Optimization in Networks
+Group: System/Libraries
+Requires: libglpk40 >= 4.33
+
+%description -n libemon%{sonum}
+LEMON stands for Library for Efficient Modeling and Optimization in
+Networks. It is a C++ template library providing efficient
+implementations of common data structures and algorithms with focus on
+combinatorial optimization tasks connected mainly with graphs and
+networks.
+
+This package contains the shared library of LEMON.
+
+%package devel
+Summary: Development headers and files for LEMON
+Group: Development/Libraries/C and C++
+BuildRequires: pkgconfig
+Requires: %{name} = %{version}-%{release}
+Requires: glpk-devel >= 4.33
+Requires: %{libname} = %{version}
+
+%description devel
+LEMON stands for Library for Efficient Modeling and Optimization in
+Networks. It is a C++ template library providing efficient
+implementations of common data structures and algorithms with focus on
+combinatorial optimization tasks connected mainly with graphs and
+networks.
+
+This package contains the libraries and headers for developing
+applications which use LEMON.
+
+%package doc
+Summary: Documentation of LEMON
+Group: Documentation/HTML
+Requires: %{name} = %{version}-%{release}
+Requires: %{libname} = %{version}
+
+%description doc
+LEMON stands for Library for Efficient Modeling and Optimization in
+Networks. It is a C++ template library providing efficient
+implementations of common data structures and algorithms with focus on
+combinatorial optimization tasks connected mainly with graphs and
+networks.
+
+This package contains the documentation of LEMON in HTML format.
+
+%prep
+%autosetup -p1
+
+%build
+%cmake \
+%if 0%{?suse_version} > 1530
+ -DCMAKE_BUILD_TYPE:STRING=Maintainer \
+%endif
+ ..
+%cmake_build
+
+%install
+%cmake_install
+
+%post -n %{libname} -p /sbin/ldconfig
+%postun -n %{libname} -p /sbin/ldconfig
+
+%check
+# Build type Maintainer will enable testing, but no clue why it fail on Leap but not on TW.
+%if 0%{?suse_version} > 1530
+%ctest
+%endif
+
+%files -n %{libname}
+%{_libdir}/libemon.so.%{version}
+
+%files
+%license LICENSE
+%doc README
+%{_bindir}/lemon-0.x-to-1.x.sh
+%{_bindir}/dimacs-solver
+%{_bindir}/dimacs-to-lgf
+%{_bindir}/lgf-gen
+
+%files devel
+%dir %{_datadir}/lemon
+%dir %{_datadir}/lemon/cmake
+%{_includedir}/lemon
+%{_libdir}/pkgconfig/lemon.pc
+%{_libdir}/libemon.so
+%{_datadir}/lemon/cmake/LEMONConfig.cmake
+
+%files doc
+%doc doc/html
+
+%changelog