[packages/poly2tri] - poly2tri-c project moved to poly2tri-c.spec; this spec updated for original poly2tri project - add
qboosh
qboosh at pld-linux.org
Sat Jul 4 21:23:11 CEST 2015
commit 8140126b2f06be9a3af79e2fd852eb3a8543c17d
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sat Jul 4 21:25:06 2015 +0200
- poly2tri-c project moved to poly2tri-c.spec; this spec updated for original poly2tri project
- added glfw3 patch (fixes build wtih glfw 3)
poly2tri-build.patch | 13 ------
poly2tri-glfw3.patch | 59 +++++++++++++++++++++++++++
poly2tri.spec | 112 ++++++++++++++++++++++++++++++++++-----------------
3 files changed, 134 insertions(+), 50 deletions(-)
---
diff --git a/poly2tri.spec b/poly2tri.spec
index 8206c5d..28d8b7f 100644
--- a/poly2tri.spec
+++ b/poly2tri.spec
@@ -1,69 +1,107 @@
-Name: poly2tri
-Version: 0.0
-%global date 20150515
-%global snapshot %{date}hg%{rev}
Summary: A 2D constrained Delaunay triangulation library
-Release: 0.%{date}.1
+Summary(pl.UTF-8): Biblioteka triangulacji Delaunaya z ograniczeniami w 2D
+Name: poly2tri
+# see wscript
+Version: 0.3.3
+%define snap 20150515
+Release: 0.%{snap}.1
License: BSD
-Group: Development/Libraries
+Group: Libraries
+Source0: https://poly2tri.googlecode.com/archive/26242d0aa7b85fe3bf8c64a343dbe8a88055de37.tar.gz
+# Source0-md5: 41a410f8b4de7cd6a3d64546c43a058b
+Patch0: %{name}-glfw3.patch
URL: https://code.google.com/p/poly2tri
-Source0: https://poly2tri-c.googlecode.com/archive/5ac75d6f09e4de35ef33289c69bc1d46c2a04970.tar.gz
-# Source0-md5: 844558199746106bd76043b716c10c85
-Patch0: %{name}-build.patch
-BuildRequires: Mesa-libGL-devel
-BuildRequires: autoconf
-BuildRequires: automake
-BuildRequires: libtool
+BuildRequires: OpenGL-devel
+BuildRequires: glfw-devel >= 3
+BuildRequires: libstdc++-devel
+BuildRequires: libtool >= 2:1.5
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Library based on the paper "Sweep-line algorithm for constrained
-Delaunay triangulation" by V. Domiter and and B. Zalik.
+Delaunay triangulation" by V. Domiter and B. Zalik.
+
+%description
+Biblioteka oparta na dokumencie "Sweep-line algorithm for constrained
+Delaunay triangulation" (Algorytm zamiatania płaszczyzny do
+triangulacji Delaunaya z ograniczeniami) autorstwa V. Domitera oraz B.
+Zalika.
%package devel
-Summary: Development files for %{name}
+Summary: Development files for poly2tri library
+Summary(pl.UTF-8): Pliki programistyczne biblioteki poly2tri
+Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
+Requires: libstdc++-devel
%description devel
-Development files for %{name}.
+Development files for poly2tri library.
+
+%description devel -l pl.UTF-8
+Pliki programistyczne biblioteki poly2tri.
+
+%package static
+Summary: Static poly2tri library
+Summary(pl.UTF-8): Statyczna biblioteka poly2tri
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description static
+Static poly2tri library.
+
+%description static -l pl.UTF-8
+Statyczna biblioteka poly2tri.
%prep
-%setup -q -n %{name}-c-5ac75d6f09e4
+%setup -q -n %{name}-26242d0aa7b8
%patch0 -p1
%build
-%{__libtoolize}
-%{__aclocal}
-%{__autoheader}
-%{__autoconf}
-%{__automake}
+# it doesn't actually build the library
+#waf configure
+#waf build
+
+# ...so do it manually
+for f in poly2tri/common/shapes.cc poly2tri/sweep/{cdt,advancing_front,sweep_context,sweep}.cc ; do
+ libtool --mode=compile --tag=CXX %{__cxx} %{rpmcxxflags} %{rpmcppflags} -c $f
+done
+libtool --mode=link --tag=CXX %{__cxx} %{rpmldflags} %{rpmcxxflags} %{rpmcppflags} -o libpoly2tri.la shapes.lo cdt.lo advancing_front.lo sweep_context.lo sweep.lo -rpath %{_libdir}
-%configure \
- --disable-silent-rules
-%{__make} -j1
+libtool --mode=link --tag=CXX %{__cxx} %{rpmldflags} %{rpmcxxflags} %{rpmcppflags} -o p2t testbed/main.cc libpoly2tri.la -lGL -lglfw
%install
rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_includedir}/poly2tri/{common,sweep}}
-%{__make} install \
- DESTDIR=$RPM_BUILD_ROOT
+#waf install
-rm $RPM_BUILD_ROOT%{_libdir}/lib%{name}-c-*.{a,la}
+libtool --mode=install install libpoly2tri.la $RPM_BUILD_ROOT%{_libdir}
+libtool --mode=install install p2t $RPM_BUILD_ROOT%{_bindir}
+cp -p poly2tri/poly2tri.h $RPM_BUILD_ROOT%{_includedir}/poly2tri
+cp -p poly2tri/common/shapes.h $RPM_BUILD_ROOT%{_includedir}/poly2tri/common
+cp -p poly2tri/common/shapes.h $RPM_BUILD_ROOT%{_includedir}/poly2tri/common
+cp -p poly2tri/sweep/{cdt,advancing_front,sweep_context,sweep}.h $RPM_BUILD_ROOT%{_includedir}/poly2tri/sweep
-%post -p /sbin/ldconfig
-%postun -p /sbin/ldconfig
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libpoly2tri.la
%clean
rm -rf $RPM_BUILD_ROOT
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
%files
%defattr(644,root,root,755)
-%doc README
-%attr(755,root,root) %{_bindir}/p2tc
-%attr(755,root,root) %ghost %{_libdir}/lib%{name}-c-*.so.0
-%attr(755,root,root) %{_libdir}/lib%{name}-c-*.so.*.*
+%doc AUTHORS LICENSE README
+%attr(755,root,root) %{_bindir}/p2t
+%attr(755,root,root) %{_libdir}/libpoly2tri.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libpoly2tri.so.0
%files devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib%{name}-c-*.so
-%{_includedir}/%{name}-c-*
-%{_pkgconfigdir}/poly2tri-c.pc
+%attr(755,root,root) %{_libdir}/libpoly2tri.so
+%{_includedir}/poly2tri
+
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libpoly2tri.a
diff --git a/poly2tri-build.patch b/poly2tri-build.patch
deleted file mode 100644
index ea4e7bf..0000000
--- a/poly2tri-build.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/poly2tri-c/refine/Makefile.am b/poly2tri-c/refine/Makefile.am
-index 8701b0d..85cba9f 100644
---- a/poly2tri-c/refine/Makefile.am
-+++ b/poly2tri-c/refine/Makefile.am
-@@ -1,6 +1,6 @@
- noinst_LTLIBRARIES = libp2tc-refine.la
-
--libp2tc_refine_la_SOURCES = bounded-line.c bounded-line.h cdt.c cdt.h cdt-flipfix.c cdt-flipfix.h circle.c circle.h cluster.c cluster.h delaunay-terminator.c delaunay-terminator.h edge.c edge.h line.c line.h rmath.c rmath.h mesh.c mesh.h mesh-action.c mesh-action.h point.c point.h pslg.c pslg.h refine.h refiner.c refiner.h triangle.c triangle.h triangulation.h utils.c utils.h vector2.c vector2.h vedge.c vedge.h vtriangle.c vtriangle.h visibility.c visibility.h
-+libp2tc_refine_la_SOURCES = bounded-line.c bounded-line.h rcdt.c rcdt.h cdt-flipfix.c cdt-flipfix.h circle.c circle.h cluster.c cluster.h delaunay-terminator.c delaunay-terminator.h edge.c edge.h line.c line.h rmath.c rmath.h mesh.c mesh.h mesh-action.c mesh-action.h point.c point.h pslg.c pslg.h refine.h refiner.c refiner.h triangle.c triangle.h triangulation.h rutils.c rutils.h vector2.c vector2.h vedge.c vedge.h vtriangle.c vtriangle.h visibility.c visibility.h
-
- P2TC_REFINE_publicdir = $(P2TC_publicdir)/refine
--P2TC_REFINE_public_HEADERS = bounded-line.h cdt.h circle.h cluster.h edge.h line.h mesh.h mesh-action.h point.h pslg.h refine.h refiner.h rmath.h triangle.h triangulation.h utils.h vector2.h vedge.h vtriangle.h visibility.h
-+P2TC_REFINE_public_HEADERS = bounded-line.h rcdt.h circle.h cluster.h edge.h line.h mesh.h mesh-action.h point.h pslg.h refine.h refiner.h rmath.h triangle.h triangulation.h rutils.h vector2.h vedge.h vtriangle.h visibility.h
diff --git a/poly2tri-glfw3.patch b/poly2tri-glfw3.patch
new file mode 100644
index 0000000..8ead0cc
--- /dev/null
+++ b/poly2tri-glfw3.patch
@@ -0,0 +1,59 @@
+--- poly2tri-26242d0aa7b8/testbed/main.cc.orig 2012-04-04 02:05:50.000000000 +0200
++++ poly2tri-26242d0aa7b8/testbed/main.cc 2015-07-04 18:11:18.741031421 +0200
+@@ -29,7 +29,7 @@
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+ #include <cstdlib>
+-#include <GL/glfw.h>
++#include <GLFW/glfw3.h>
+ #include <time.h>
+ #include <fstream>
+ #include <string>
+--- poly2tri-26242d0aa7b8/testbed/main.cc.orig 2015-07-04 18:12:17.604362282 +0200
++++ poly2tri-26242d0aa7b8/testbed/main.cc 2015-07-04 19:18:06.324196570 +0200
+@@ -76,6 +76,7 @@
+ bool draw_map = false;
+ /// Create a random distribution of points?
+ bool random_distribution = false;
++GLFWwindow *window = NULL;
+
+ template <class C> void FreeClear( C & cntr ) {
+ for ( typename C::iterator it = cntr.begin();
+@@ -229,11 +230,10 @@
+
+ if (glfwInit() != GL_TRUE)
+ ShutDown(1);
+- // 800 x 600, 16 bit color, no depth, alpha or stencil buffers, windowed
+- if (glfwOpenWindow(window_width, window_height, 5, 6, 5, 0, 0, 0, GLFW_WINDOW) != GL_TRUE)
++ window = glfwCreateWindow(window_width, window_height, "Poly2Tri - C++", NULL, NULL);
++ if (window == NULL)
+ ShutDown(1);
+
+- glfwSetWindowTitle("Poly2Tri - C++");
+ glfwSwapInterval(1);
+
+ glEnable(GL_BLEND);
+@@ -263,11 +263,11 @@
+
+ // escape to quit, arrow keys to rotate view
+ // Check if ESC key was pressed or window was closed
+- running = !glfwGetKey(GLFW_KEY_ESC) && glfwGetWindowParam(GLFW_OPENED);
++ running = !glfwGetKey(window, GLFW_KEY_ESCAPE) && !glfwWindowShouldClose(window);
+
+- if (glfwGetKey(GLFW_KEY_LEFT) == GLFW_PRESS)
++ if (glfwGetKey(window, GLFW_KEY_LEFT) == GLFW_PRESS)
+ rotate_y += delta_rotate;
+- if (glfwGetKey(GLFW_KEY_RIGHT) == GLFW_PRESS)
++ if (glfwGetKey(window, GLFW_KEY_RIGHT) == GLFW_PRESS)
+ rotate_y -= delta_rotate;
+ // z axis always rotates
+ rotate_z += delta_rotate;
+@@ -280,7 +280,7 @@
+ }
+
+ // swap back and front buffers
+- glfwSwapBuffers();
++ glfwSwapBuffers(window);
+ }
+ }
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/poly2tri.git/commitdiff/8140126b2f06be9a3af79e2fd852eb3a8543c17d
More information about the pld-cvs-commit
mailing list