[openscad] Correct version imported
Miro Hrončok
churchyard at fedoraproject.org
Sun Jan 27 22:22:15 UTC 2013
commit ae178deb6a1ef0ffc6d21a41510b1ac0283bb628
Author: Miro Hrončok <miro at hroncok.cz>
Date: Sun Jan 27 23:22:03 2013 +0100
Correct version imported
openscad-tests-cmake-glewfix.patch | 158 ++++++++++++++++++++++++++++++++++++
openscad.spec | 16 +++-
2 files changed, 169 insertions(+), 5 deletions(-)
---
diff --git a/openscad-tests-cmake-glewfix.patch b/openscad-tests-cmake-glewfix.patch
new file mode 100644
index 0000000..c03a412
--- /dev/null
+++ b/openscad-tests-cmake-glewfix.patch
@@ -0,0 +1,158 @@
+From 9f83c8ffe71c12f0134e54e897a5a828dd7ec512 Mon Sep 17 00:00:00 2001
+From: don bright <hugh.m.bright at gmail.com>
+Date: Sun, 27 Jan 2013 20:06:08 +0100
+Subject: [PATCH] fix bugs and rewrite GLEW finding code to be more clear.
+
+---
+ tests/CMakeLists.txt | 18 +++++-----
+ tests/FindGLEW.cmake | 93 +++++++++++++++++++++++++-------------------------
+ 2 files changed, 56 insertions(+), 55 deletions(-)
+
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index 87e5319..9f41682 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -289,8 +289,7 @@ if (NOT $ENV{GLEWDIR} STREQUAL "")
+ elseif (NOT $ENV{OPENSCAD_LIBRARIES} STREQUAL "")
+ set(GLEW_DIR "$ENV{OPENSCAD_LIBRARIES}")
+ endif()
+-if (NOT GLEW_INCLUDE_DIR)
+- message(STATUS "OPENCSG_DIR: " ${OPENCSG_DIR})
++if (GLEW_DIR)
+ find_path(GLEW_INCLUDE_DIR
+ GL/glew.h
+ HINTS ${GLEW_DIR}/include
+@@ -299,14 +298,15 @@ if (NOT GLEW_INCLUDE_DIR)
+ NAMES GLEW glew
+ HINTS ${GLEW_DIR}/lib ${GLEW_DIR}/lib64
+ NO_DEFAULT_PATH)
+- if (NOT GLEW_LIBRARY)
+- find_package(GLEW REQUIRED)
+- if (NOT GLEW_LIBRARY)
+- message(FATAL_ERROR "GLEW not found")
+- endif()
++ if (GLEW_INCLUDE_DIR AND GLEW_LIBRARY)
++ message(STATUS "GLEW include: " ${GLEW_INCLUDE_DIR})
++ message(STATUS "GLEW library: " ${GLEW_LIBRARY})
++ set(GLEW_FOUND 1)
+ endif()
+- message(STATUS "GLEW include: " ${GLEW_INCLUDE_DIR})
+- message(STATUS "GLEW library: " ${GLEW_LIBRARY})
++endif()
++
++if (NOT GLEW_FOUND)
++ find_package(GLEW REQUIRED)
+ endif()
+
+ inclusion(GLEW_DIR GLEW_INCLUDE_DIR)
+diff --git a/tests/FindGLEW.cmake b/tests/FindGLEW.cmake
+index 1d94ca2..f571fe2 100644
+--- a/tests/FindGLEW.cmake
++++ b/tests/FindGLEW.cmake
+@@ -10,56 +10,57 @@
+ # a few lines of this file are based on the LGPL code found at
+ # http://openlibraries.org/browser/trunk/FindGLEW.cmake?rev=1383
+
+-include(FindPkgConfig)
++if (WIN32 AND MSVC)
++ if (WIN32_STATIC_BUILD) # passed from caller
++ set(GLEW_LIB_SEARCH_NAME glew32s.lib) # static, non-debug (Release)
++ else ()
++ set(GLEW_LIB_SEARCH_NAME glew32.lib) # other. untested with OpenSCAD
++ endif()
++else () # GCC
++ set(GLEW_LIB_SEARCH_NAME "libglew32s.a")
++endif ()
+
+-if (PKG_CONFIG_FOUND)
+- message("Doing pkg config glew check...")
+- pkg_check_modules(GLEW glew>=1.6)
++if (WIN32)
++ find_path(GLEW_INCLUDE_DIR GL/glew.h
++ $ENV{PROGRAMFILES}/GLEW/include
++ ${PROJECT_SOURCE_DIR}/src/nvgl/glew/include
++ DOC "The directory where GL/glew.h resides")
++ find_library(GLEW_LIBRARY
++ NAMES ${GLEW_LIB_SEARCH_NAME}
++ PATHS
++ $ENV{PROGRAMFILES}/GLEW/lib
++ ${PROJECT_SOURCE_DIR}/src/nvgl/glew/bin
++ ${PROJECT_SOURCE_DIR}/src/nvgl/glew/lib
++ DOC "The GLEW library")
++else()
++ find_path(GLEW_INCLUDE_DIR GL/glew.h
++ PATHS /usr/include /usr/local/include /usr/pkg/include
++ NO_DEFAULT_PATH
++ DOC "The directory where GL/glew.h resides")
++ find_library(GLEW_LIBRARY
++ NAMES GLEW glew
++ PATHS /usr/lib /usr/local/lib /usr/pkg/lib /lib /lib64 /usr/lib64
++ NO_DEFAULT_PATH
++ DOC "The GLEW library")
+ endif()
+
+-if (GLEW_LIBRARIES)
+- set(GLEW_INCLUDE_DIR "${GLEW_INCLUDE_DIRS}")
+- set(GLEW_LIBRARY ${GLEW_LDFLAGS})
++if (GLEW_INCLUDE_DIR AND GLEW_LIBRARY)
++ set(GLEW_FOUND 1 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise")
++ message(STATUS "GLEW include found in " ${GLEW_INCLUDE_DIR} )
++ message(STATUS "GLEW library found in " ${GLEW_LIBRARY} )
+ else()
+- if (WIN32 AND MSVC)
+- if (WIN32_STATIC_BUILD) # passed from caller
+- set(GLEW_LIB_SEARCH_NAME glew32s.lib) # static, non-debug (Release)
+- else ()
+- set(GLEW_LIB_SEARCH_NAME glew32.lib) # other. untested with OpenSCAD
+- endif()
+- else () # GCC
+- set(GLEW_LIB_SEARCH_NAME "libglew32s.a")
+- endif ()
+-
+- if (WIN32)
+- find_path(GLEW_INCLUDE_DIR GL/glew.h
+- $ENV{PROGRAMFILES}/GLEW/include
+- ${PROJECT_SOURCE_DIR}/src/nvgl/glew/include
+- DOC "The directory where GL/glew.h resides")
+- find_library(GLEW_LIBRARY
+- NAMES ${GLEW_LIB_SEARCH_NAME}
+- PATHS
+- $ENV{PROGRAMFILES}/GLEW/lib
+- ${PROJECT_SOURCE_DIR}/src/nvgl/glew/bin
+- ${PROJECT_SOURCE_DIR}/src/nvgl/glew/lib
+- DOC "The GLEW library")
+- else (WIN32)
+- find_path(GLEW_INCLUDE_DIR GL/glew.h
+- PATHS /usr/include /usr/local/include /usr/pkg/include
+- NO_DEFAULT_PATH
+- DOC "The directory where GL/glew.h resides")
+- find_library(GLEW_LIBRARY
+- NAMES GLEW glew
+- PATHS /usr/lib /usr/local/lib /usr/pkg/lib
+- NO_DEFAULT_PATH
+- DOC "The GLEW library")
+- endif (WIN32)
++ set(GLEW_FOUND 0 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise")
++endif()
+
+- if (GLEW_INCLUDE_DIR)
+- set(GLEW_FOUND 1 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise")
+- message(STATUS "GLEW include found in " ${GLEW_INCLUDE_DIR} )
+- message(STATUS "GLEW library found in " ${GLEW_LIBRARY} )
+- else()
+- set(GLEW_FOUND 0 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise")
++if (NOT GLEW_FOUND)
++ message("Doing pkg config glew check...")
++ pkg_check_modules(GLEW glew>=1.6)
++ if (GLEW_FOUND)
++ set(GLEW_INCLUDE_DIR "${GLEW_INCLUDEDIR}")
++ set(GLEW_LIBRARY ${GLEW_LDFLAGS})
+ endif()
+ endif()
++
++if (NOT GLEW_FOUND)
++ message(FATAL_ERROR "GLEW not found")
++endif()
+--
+1.7.10
+
diff --git a/openscad.spec b/openscad.spec
index dffc278..3faf743 100644
--- a/openscad.spec
+++ b/openscad.spec
@@ -8,6 +8,7 @@ License: GPLv2 with exceptions
Group: Applications/Engineering
URL: http://www.openscad.org/
Source0: https://openscad.googlecode.com/files/%{name}-%{shortversion}.src.tar.gz
+Patch0: %{name}-tests-cmake-glewfix.patch
BuildRequires: qt-devel >= 4.4
BuildRequires: bison >= 2.4
BuildRequires: flex >= 2.5.35
@@ -32,11 +33,18 @@ interested in creating computer-animated movies.
%prep
%setup -qn %{name}-%{shortversion}
+%patch0 -p1
%build
qmake-qt4 VERSION=%{shortversion} PREFIX=%{_prefix}
make %{?_smp_mflags}
+# tests
+cd tests
+cmake .
+make %{?_smp_mflags}
+cd -
+
%install
make install INSTALL_ROOT=%{buildroot}
# manpage
@@ -48,13 +56,11 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
# tests
cd tests
-cmake . -DGLEW_INCLUDE_DIR=/usr/include/GL/
-make %{?_smp_mflags}
-ctest -C All || :
+ctest %{?_smp_mflags} -C All || : # let the tests fail, as they probably won't work in Koji
cd -
# remove MCAD (separate package) after the tests
-rm -rf /libraries/MCAD
+rm -rf %{buildroot}%{_datadir}/%{name}/libraries/MCAD
%files
%doc COPYING README.md RELEASE_NOTES
@@ -71,7 +77,7 @@ rm -rf /libraries/MCAD
- Using source tarball
- Reffer to the shorter version in the app
- Run tests
-
+- Added patch so test will compile
* Sat Jan 19 2013 Miro Hrončok <mhroncok at redhat.com> - 2013.01.17-1
- New stable release 2013.01
- Updated to respect GitHub rule
More information about the scm-commits
mailing list