[libprojectM] Drop obsolete README.fedora file since users need not modify their config file manually anymore to p
Michael Schwendt
mschwendt at fedoraproject.org
Sat May 7 10:13:10 UTC 2011
commit 62b48f8f1e0e48072765e40368b995edc3755dee
Author: Michael Schwendt <mschwendt at fedoraproject.org>
Date: Sat May 7 12:12:54 2011 +0200
Drop obsolete README.fedora file since users need not modify their
config file manually anymore to prevent projectM from crashing.
Revise fonts patch: check that user's configured font files exist,
fall back to our defaults, add safety-check in spec file, replace
font paths in prep section. (#698404, #698381)
README.libprojectM | 4 ---
libprojectM-fonts.patch | 65 +++++++++++++++++++++++++++++++++++-----------
libprojectM.spec | 38 +++++++++++++++++++++------
3 files changed, 78 insertions(+), 29 deletions(-)
---
diff --git a/libprojectM-fonts.patch b/libprojectM-fonts.patch
index 09d5000..9ec4e38 100644
--- a/libprojectM-fonts.patch
+++ b/libprojectM-fonts.patch
@@ -1,7 +1,7 @@
-diff -rupN libprojectM-2.0.1.old/CMakeLists.txt libprojectM-2.0.1/CMakeLists.txt
---- libprojectM-2.0.1.old/CMakeLists.txt 2009-12-05 20:42:51.000000000 -0500
-+++ libprojectM-2.0.1/CMakeLists.txt 2010-07-17 11:41:28.000000000 -0400
-@@ -190,8 +190,6 @@ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_D
+diff -Nur libprojectM-2.0.1-orig/CMakeLists.txt libprojectM-2.0.1/CMakeLists.txt
+--- libprojectM-2.0.1-orig/CMakeLists.txt 2009-12-06 02:42:51.000000000 +0100
++++ libprojectM-2.0.1/CMakeLists.txt 2011-05-07 12:03:53.310040001 +0200
+@@ -190,8 +190,6 @@
FILE(GLOB presets "presets/*.milk" "presets/*.prjm" "presets/*.tga")
INSTALL(FILES ${presets} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/projectM/presets)
@@ -10,30 +10,63 @@ diff -rupN libprojectM-2.0.1.old/CMakeLists.txt libprojectM-2.0.1/CMakeLists.txt
INSTALL(FILES ${Renderer_SOURCE_DIR}/projectM.cg ${Renderer_SOURCE_DIR}/blur.cg DESTINATION ${CMAKE_INSTALL_PREFIX}/share/projectM/shaders)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/libprojectM.pc DESTINATION ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/pkgconfig)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/config.inp DESTINATION ${CMAKE_INSTALL_PREFIX}/share/projectM)
-diff -rupN libprojectM-2.0.1.old/config.inp.in libprojectM-2.0.1/config.inp.in
---- libprojectM-2.0.1.old/config.inp.in 2009-12-05 20:42:51.000000000 -0500
-+++ libprojectM-2.0.1/config.inp.in 2010-07-17 11:41:28.000000000 -0400
-@@ -17,6 +17,6 @@ Hard Cut Sensitivity = 10 # Lower
+diff -Nur libprojectM-2.0.1-orig/config.inp.in libprojectM-2.0.1/config.inp.in
+--- libprojectM-2.0.1-orig/config.inp.in 2009-12-06 02:42:51.000000000 +0100
++++ libprojectM-2.0.1/config.inp.in 2011-05-07 11:04:46.076248175 +0200
+@@ -17,6 +17,6 @@
Aspect Correction = true # Custom Shape Aspect Correction
Preset Path = @CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@/presets # preset location
-Title Font = @CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@/fonts/Vera.ttf
-Menu Font = @CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@/fonts/VeraMono.ttf
-+Title Font = @CMAKE_INSTALL_PREFIX@/share/fonts/dejavu/DejaVuSans.ttf
-+Menu Font = @CMAKE_INSTALL_PREFIX@/share/fonts/dejavu/DejaVuSansMono.ttf
++Title Font = @CMAKE_INSTALL_PREFIX at __FEDORA_TITLE_FONT__
++Menu Font = @CMAKE_INSTALL_PREFIX at __FEDORA_MENU_FONT__
-diff -rupN libprojectM-2.0.1.old/projectM.cpp libprojectM-2.0.1/projectM.cpp
---- libprojectM-2.0.1.old/projectM.cpp 2009-12-05 20:42:51.000000000 -0500
-+++ libprojectM-2.0.1/projectM.cpp 2010-07-17 11:43:00.000000000 -0400
-@@ -200,9 +200,9 @@ void projectM::readConfig (const std::st
+diff -Nur libprojectM-2.0.1-orig/projectM.cpp libprojectM-2.0.1/projectM.cpp
+--- libprojectM-2.0.1-orig/projectM.cpp 2009-12-06 02:42:51.000000000 +0100
++++ libprojectM-2.0.1/projectM.cpp 2011-05-07 12:03:56.471868101 +0200
+@@ -30,6 +30,7 @@
+
+ #include "timer.h"
+ #include <iostream>
++#include <fstream>
+ #ifdef LINUX
+ #include "time.h"
+ #endif
+@@ -163,6 +164,13 @@
+
+
+
++bool _fileExists(const std::string& path) {
++ std::ifstream f(path.c_str());
++ return f;
++}
++
++
++
+ void projectM::readConfig (const std::string & configFile )
+ {
+ std::cout << "[projectM] config file: " << configFile << std::endl;
+@@ -199,10 +207,20 @@
+ #endif
#ifdef LINUX
++ string titleFont = CMAKE_INSTALL_PREFIX "__FEDORA_TITLE_FONT__";
++ string menuFont = CMAKE_INSTALL_PREFIX "__FEDORA_MENU_FONT__";
_settings.titleFontURL = config.read<string>
- ( "Title Font", CMAKE_INSTALL_PREFIX "/share/projectM/fonts/Vera.ttf" );
-+ ( "Title Font", CMAKE_INSTALL_PREFIX "/share/fonts/dejavu/DejaVuSans.ttf" );
++ ( "Title Font", titleFont );
_settings.menuFontURL = config.read<string>
- ( "Menu Font", CMAKE_INSTALL_PREFIX "/share/projectM/fonts/VeraMono.ttf" );
-+ ( "Menu Font", CMAKE_INSTALL_PREFIX "/share/fonts/dejavu/DejaVuSansMono.ttf" );
++ ( "Menu Font", menuFont );
++ if ( !_fileExists(_settings.titleFontURL) ) {
++ std::cerr << "NOT FOUND: " << _settings.titleFontURL << std::endl;
++ _settings.titleFontURL = titleFont;
++ }
++ if ( !_fileExists(_settings.menuFontURL) ) {
++ std::cerr << "NOT FOUND: " << _settings.menuFontURL << std::endl;
++ _settings.menuFontURL = menuFont;
++ }
#endif
#ifdef WIN32
diff --git a/libprojectM.spec b/libprojectM.spec
index 3ffa59d..dfcaace 100644
--- a/libprojectM.spec
+++ b/libprojectM.spec
@@ -1,13 +1,13 @@
Name: libprojectM
Version: 2.0.1
-Release: 10%{?dist}
+Release: 11%{?dist}
Summary: The libraries for the projectM music visualization plugin
Group: Applications/Multimedia
License: LGPLv2+
URL: http://projectm.sourceforge.net/
Source0: http://downloads.sourceforge.net/projectm/%{name}-%{version}.tar.bz2
-Source1: README.libprojectM
-#Remove fonts from package:
+#Remove fonts from package
+#Change default fonts
Patch0: libprojectM-fonts.patch
#Bump soname
Patch1: libprojectM-soname.patch
@@ -21,6 +21,10 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: ftgl-devel, cmake, glew-devel
Requires: dejavu-sans-mono-fonts, dejavu-sans-fonts
+%global titlefont /share/fonts/dejavu/DejaVuSans.ttf
+%global menufont /share/fonts/dejavu/DejaVuSansMono.ttf
+
+
%description
projectM is an awesome music visualizer. There is nothing better in the world
of Unix. projectM's greatness comes from the hard work of the community. Users
@@ -39,13 +43,23 @@ developing applications that use %{name}.
%prep
%setup -q
-%patch0 -p1
+
+%patch0 -p1 -b .font-changes
+for f in config.inp.in projectM.cpp
+do
+ sed -i -e 's!__FEDORA_TITLE_FONT__!%{titlefont}!g' $f
+ sed -i -e 's!__FEDORA_MENU_FONT__!%{menufont}!g' $f
+ grep -q -s __FEDORA_ $f && exit 1
+done
+[ -e %{_prefix}%{titlefont} ] || exit 1
+[ -e %{_prefix}%{menufont} ] || exit 1
+
%patch1 -p1
%patch2 -p1
%patch3 -p0
%patch4 -p0
sed -i 's/\r//' ChangeLog
-cp -f %{SOURCE1} README.fedora
+
%build
%cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} -DLIB_INSTALL_DIR=%{_libdir} .
@@ -66,18 +80,24 @@ rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
-%doc ChangeLog README.fedora
+%doc ChangeLog COPYING
%{_libdir}/*.so.*
-%{_datadir}/projectM
+%{_datadir}/projectM/
%files devel
%defattr(-,root,root,-)
-%doc
-%{_includedir}/%{name}
+%{_includedir}/%{name}/
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%changelog
+* Sat May 7 2011 Michael Schwendt <mschwendt at fedoraproject.org> - 2.0.1-11
+- Drop obsolete README.fedora file since users need not modify their
+ config file manually anymore to prevent projectM from crashing.
+- Revise fonts patch: check that user's configured font files exist,
+ fall back to our defaults, add safety-check in spec file, replace
+ font paths in prep section. (#698404, #698381)
+
* Mon Apr 25 2011 Jameson Pugh <imntreal at gmail.com> - 2.0.1-10
- Fixed fonts patch
More information about the scm-commits
mailing list