packages: libprojectM/libprojectM.spec, libprojectM/as-needed.patch (NEW) -...
glen
glen at pld-linux.org
Wed Jul 7 09:21:38 CEST 2010
Author: glen Date: Wed Jul 7 07:21:38 2010 GMT
Module: packages Tag: HEAD
---- Log message:
- cmake as needed broken, disable; rel 2
---- Files affected:
packages/libprojectM:
libprojectM.spec (1.14 -> 1.15) , as-needed.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: packages/libprojectM/libprojectM.spec
diff -u packages/libprojectM/libprojectM.spec:1.14 packages/libprojectM/libprojectM.spec:1.15
--- packages/libprojectM/libprojectM.spec:1.14 Wed Jul 7 08:32:33 2010
+++ packages/libprojectM/libprojectM.spec Wed Jul 7 09:21:33 2010
@@ -1,10 +1,23 @@
# $Revision$, $Date$
+# TODO
+# - cmake is borken and adds objects (static libs) in the middle of lists (Renderer/libRenderer.a):
+# Linking CXX shared library libprojectM.so
+# /usr/bin/cmake -E cmake_link_script CMakeFiles/projectM-shared.dir/link.txt --verbose=1
+# /usr/bin/ccache i686-pld-linux-g++ -fPIC -O2 -fno-strict-aliasing -fwrapv -march=i686 -mtune=pentium4 -gdwarf-3 -g2 -fopenmp -Wl,--as-needed -Wl,--no-copy-dt-needed-entries -Wl,-z,relro -Wl,-z,combreloc -shared -Wl,-soname,libprojectM.so.2 -o libprojectM.so.2.0.1 CMakeFiles/projectM-shared.dir/projectM.cpp.o CMakeFiles/projectM-shared.dir/PCM.cpp.o CMakeFiles/projectM-shared.dir/Preset.cpp.o CMakeFiles/projectM-shared.dir/fftsg.cpp.o CMakeFiles/projectM-shared.dir/KeyHandler.cpp.o CMakeFiles/projectM-shared.dir/timer.cpp.o CMakeFiles/projectM-shared.dir/wipemalloc.cpp.o CMakeFiles/projectM-shared.dir/PresetLoader.cpp.o CMakeFiles/projectM-shared.dir/PresetChooser.cpp.o CMakeFiles/projectM-shared.dir/PipelineMerger.cpp.o CMakeFiles/projectM-shared.dir/ConfigFile.cpp.o CMakeFiles/projectM-shared.dir/TimeKeeper.cpp.o CMakeFiles/projectM-shared.dir/PresetFactory.cpp.o CMakeFiles/projectM-shared.dir/PresetFactoryManager.cpp.o Renderer/libRenderer.a NativePresetFactory/li
bNativePresetFactory.a MilkdropPresetFactory/libMilkdropPresetFactory.a -lGLEW -lftgl -lfreetype -lGLU -lGL -lSM -lICE -lX11 -lXext Renderer/libRenderer.a -lm
+#
+# CMakeLists.txt having:
+# TARGET_LINK_LIBRARIES(projectM-shared ${PRESET_FACTORY_LINK_TARGETS} ${GLEW_LINK_TARGETS} m dl ${FTGL_LINK_TARGETS} ${OPENGL_LIBRARIES} ${IMAGE_LINK_TARGETS} ${CG_LINK_TARGETS})
+#
+# NativePresetFactory/CMakeLists.txt has:
+# TARGET_LINK_LIBRARIES(NativePresetFactory Renderer m)
+# which mixes .a between -l for dl
+
%define pkgname projectM
Summary: Awesome music visualizer
Summary(pl.UTF-8): Imponujący wizualizator muzyki
Name: libprojectM
Version: 2.0.1
-Release: 1
+Release: 2
Epoch: 1
License: LGPL
Group: Libraries
@@ -13,6 +26,7 @@
Patch0: %{name}-soname.patch
Patch1: %{name}-fonts.patch
Patch2: %{name}-static.patch
+Patch3: as-needed.patch
URL: http://projectm.sourceforge.net/
BuildRequires: cmake
BuildRequires: ftgl-devel >= 2.1.3
@@ -23,6 +37,9 @@
Requires: fonts-TTF-bitstream-vera
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+# cmake (or cmake rules) are broken, mixes .a (objects) with libs (-l)
+%define filterout_ld -Wl,--as-needed
+
%description
projectM is a reimplementation of Milkdrop under OpenGL. It is an
awesome music visualizer. There is nothing better in the world of
@@ -63,6 +80,7 @@
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
%build
%cmake \
@@ -116,6 +134,9 @@
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.15 2010/07/07 07:21:33 glen
+- cmake as needed broken, disable; rel 2
+
Revision 1.14 2010/07/07 06:32:33 glen
- up to 2.0.1
================================================================
Index: packages/libprojectM/as-needed.patch
diff -u /dev/null packages/libprojectM/as-needed.patch:1.1
--- /dev/null Wed Jul 7 09:21:38 2010
+++ packages/libprojectM/as-needed.patch Wed Jul 7 09:21:33 2010
@@ -0,0 +1,11 @@
+--- projectM-2.0.1-Source/CMakeLists.txt~ 2010-07-07 10:17:35.000000000 +0300
++++ projectM-2.0.1-Source/CMakeLists.txt 2010-07-07 10:18:19.717075182 +0300
+@@ -180,7 +180,7 @@
+ TARGET_LINK_LIBRARIES(projectM-static ${GLEW_LINK_TARGETS} m ${FTGL_LINK_TARGETS} ${OPENGL_LIBRARIES} ${IMAGE_LINK_TARGETS} ${CG_LINK_TARGETS} ${PRESET_FACTORY_LINK_TARGETS})
+ endif(BUILD_PROJECTM_STATIC)
+
+-TARGET_LINK_LIBRARIES(projectM-shared ${GLEW_LINK_TARGETS} m ${FTGL_LINK_TARGETS} ${OPENGL_LIBRARIES} ${IMAGE_LINK_TARGETS} ${CG_LINK_TARGETS} ${PRESET_FACTORY_LINK_TARGETS})
++TARGET_LINK_LIBRARIES(projectM-shared ${GLEW_LINK_TARGETS} m dl ${FTGL_LINK_TARGETS} ${OPENGL_LIBRARIES} ${IMAGE_LINK_TARGETS} ${CG_LINK_TARGETS} ${PRESET_FACTORY_LINK_TARGETS})
+
+ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/libprojectM.pc.in" "${CMAKE_CURRENT_SOURCE_DIR}/libprojectM.pc" @ONLY)
+ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/config.inp.in" "${CMAKE_CURRENT_SOURCE_DIR}/config.inp" @ONLY)
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/libprojectM/libprojectM.spec?r1=1.14&r2=1.15&f=u
More information about the pld-cvs-commit
mailing list