update to 2.1.0 [release 2.1.0-1mamba;Sat Dec 08 2012]

This commit is contained in:
Automatic Build System 2024-01-06 05:27:06 +01:00
parent 3ba5ed679a
commit 7515db71b0
8 changed files with 366 additions and 0 deletions

View File

@ -0,0 +1,33 @@
Index: projectM.cpp
===================================================================
--- projectM.cpp (revision 1048)
+++ projectM.cpp (revision 1049)
@@ -907,3 +907,13 @@
}
+void projectM::changeTextureSize(int size) {
+ _settings.textureSize = size;
+
+ delete renderer;
+ renderer = new Renderer(_settings.windowWidth, _settings.windowHeight,
+ _settings.meshX, _settings.meshY,
+ _settings.textureSize, beatDetect, _settings.presetURL,
+ _settings.titleFontURL, _settings.menuFontURL);
+}
+
Index: projectM.hpp
===================================================================
--- projectM.hpp (revision 1048)
+++ projectM.hpp (revision 1049)
@@ -153,9 +153,9 @@
virtual ~projectM();
+ void changeTextureSize(int size);
-
const Settings & settings() const {
return _settings;
}

View File

@ -0,0 +1,37 @@
Index: TimeKeeper.hpp
===================================================================
--- TimeKeeper.hpp (revision 1063)
+++ TimeKeeper.hpp (revision 1064)
@@ -37,6 +37,8 @@
double sampledPresetDuration();
+ void ChangePresetDuration(int seconds) { _presetDuration = seconds; }
+
#ifndef WIN32
/* The first ticks value of the application */
struct timeval startTime;
Index: projectM.cpp
===================================================================
--- projectM.cpp (revision 1063)
+++ projectM.cpp (revision 1064)
@@ -917,3 +917,7 @@
_settings.titleFontURL, _settings.menuFontURL);
}
+void projectM::changePresetDuration(int seconds) {
+ timeKeeper->ChangePresetDuration(seconds);
+}
+
Index: projectM.hpp
===================================================================
--- projectM.hpp (revision 1063)
+++ projectM.hpp (revision 1064)
@@ -154,6 +154,7 @@
void changeTextureSize(int size);
+ void changePresetDuration(int seconds);
const Settings & settings() const {

View File

@ -0,0 +1,26 @@
Index: Renderer/TextureManager.cpp
===================================================================
--- Renderer/TextureManager.cpp (revision 1065)
+++ Renderer/TextureManager.cpp (working copy)
@@ -219,7 +219,7 @@
// Allocate a new a stream given the current directory name
if ((m_dir = opendir(dirname.c_str())) == NULL)
{
- std::cout<<"No Textures Loaded from "<<dirname<<std::endl;
+ //std::cout<<"No Textures Loaded from "<<dirname<<std::endl;
return; // no files loaded. m_entries is empty
}
Index: PresetLoader.cpp
===================================================================
--- PresetLoader.cpp (revision 1065)
+++ PresetLoader.cpp (working copy)
@@ -84,6 +84,8 @@
while ( ( dir_entry = readdir ( _dir ) ) != NULL )
{
+ if (dir_entry->d_name == 0)
+ continue;
std::ostringstream out;
// Convert char * to friendly string

View File

@ -0,0 +1,81 @@
Index: MilkdropPresetFactory/Parser.cpp
===================================================================
--- MilkdropPresetFactory/Parser.cpp (revision 1510)
+++ MilkdropPresetFactory/Parser.cpp (working copy)
@@ -1269,28 +1269,13 @@
/* Parses a floating point number */
int Parser::string_to_float(char * string, float * float_ptr)
{
+ std::istringstream stream(string);
+ stream >> *float_ptr;
- char ** error_ptr;
-
- if (*string == 0)
+ if (stream.fail())
return PROJECTM_PARSE_ERROR;
- error_ptr = (char**)wipemalloc(sizeof(char**));
-
- (*float_ptr) = strtod(string, error_ptr);
-
- /* These imply a succesful parse of the string */
- if ((**error_ptr == '\0') || (**error_ptr == '\r'))
- {
- free(error_ptr);
- error_ptr = NULL;
- return PROJECTM_SUCCESS;
- }
-
- (*float_ptr) = 0;
- free(error_ptr);
- error_ptr = NULL;
- return PROJECTM_PARSE_ERROR;
+ return PROJECTM_SUCCESS;
}
/* Parses a floating point number */
@@ -1298,11 +1283,9 @@
{
char string[MAX_TOKEN_SIZE];
- char ** error_ptr;
token_t token;
int sign;
- error_ptr =(char**) wipemalloc(sizeof(char**));
token = parseToken(fs, string);
@@ -1322,28 +1305,13 @@
if (string[0] == 0)
{
- free(error_ptr);
- error_ptr = NULL;
return PROJECTM_PARSE_ERROR;
}
- (*float_ptr) = sign*strtod(string, error_ptr);
+ std::istringstream stream(string);
+ stream >> *float_ptr;
- /* No conversion was performed */
- if ((**error_ptr == '\0') || (**error_ptr == '\r'))
- {
- free(error_ptr);
- error_ptr = NULL;
- return PROJECTM_SUCCESS;
- }
-
- if (PARSE_DEBUG) printf("parse_float: float conversion failed for string \"%s\"\n", string);
-
- (*float_ptr) = 0;
- free(error_ptr);
- error_ptr = NULL;
- return PROJECTM_PARSE_ERROR;
-
+ return PROJECTM_SUCCESS;
}
/* Parses a per frame equation. That is, interprets a stream of data as a per frame equation */

View File

@ -1,2 +1,5 @@
# libprojectM
projectM is an OpenGL based advanced music visualization program for Linux, Mac OSX, and Windows.
It is backward compatible with all the features of Milkdrop 1.x, but has many new toys and enhancements.

View File

@ -0,0 +1,21 @@
diff -Naur libprojectM-2.0.1-orig/CMakeLists.txt libprojectM-2.0.1/CMakeLists.txt
--- libprojectM-2.0.1-orig/CMakeLists.txt 2010-02-08 09:11:11.000000000 -0500
+++ libprojectM-2.0.1/CMakeLists.txt 2010-02-08 09:20:37.000000000 -0500
@@ -112,7 +112,7 @@
SET_TARGET_PROPERTIES(projectM PROPERTIES VERSION 2.0.1 SOVERSION 2.0.1)
-ADD_DEFINITIONS(-DUSE_THREADS)
+#ADD_DEFINITIONS(-DUSE_THREADS)
if (APPLE)
ADD_DEFINITIONS(-DMACOS -DSTBI_NO_DDS -DUSE_THREADS)
@@ -123,7 +123,7 @@
ADD_DEFINITIONS(-DWIN32 -DSTBI_NO_DDS -DUSE_THREADS)
else(WIN32)
set (RESOURCE_PREFIX "share/projectM")
-ADD_DEFINITIONS(-DLINUX -DSTBI_NO_DDS -DUSE_THREADS)
+ADD_DEFINITIONS(-DLINUX -DSTBI_NO_DDS)
endif(WIN32)
endif(APPLE)

View File

@ -0,0 +1,12 @@
diff -Naur libprojectM-2.0.1-orig/CMakeLists.txt libprojectM-2.0.1/CMakeLists.txt
--- libprojectM-2.0.1-orig/CMakeLists.txt 2010-01-16 17:23:11.000000000 -0500
+++ libprojectM-2.0.1/CMakeLists.txt 2010-01-16 17:23:40.000000000 -0500
@@ -110,7 +110,7 @@
ADD_LIBRARY(projectM SHARED ${projectM_SOURCES})
endif(BUILD_PROJECTM_STATIC)
-SET_TARGET_PROPERTIES(projectM PROPERTIES VERSION 2.00 SOVERSION 2)
+SET_TARGET_PROPERTIES(projectM PROPERTIES VERSION 2.0.1 SOVERSION 2.0.1)
ADD_DEFINITIONS(-DUSE_THREADS)

153
libprojectM.spec Normal file
View File

@ -0,0 +1,153 @@
Name: libprojectM
Version: 2.1.0
Release: 1mamba
Summary: An advanced MilkDrop-compatible music visualization library
Group: System/Libraries
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://projectm.sourceforge.net/
Source: http://downloads.sourceforge.net/project/projectm/%{version}/projectM-complete-%{version}-Source.tar.gz
Patch0: libprojectM-2.0.1-soname.patch
Patch1: libprojectM-2.0.1-USE_THREADS.patch
# patches for clementine
Patch2: 01-change-texture-size.patch
Patch3: 04-change-preset-duration.patch
Patch4: 05-fix-windows-crashes.patch
Patch5: 06-fix-numeric-locale.patch
License: LGPL
BuildRequires: cmake
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libfreetype-devel
BuildRequires: libftgl-devel
BuildRequires: libgcc
BuildRequires: libGL-devel
BuildRequires: libglew-devel
BuildRequires: libGLU-devel
BuildRequires: libgomp-devel
BuildRequires: libICE-devel
BuildRequires: libSM-devel
BuildRequires: libstdc++6-devel
BuildRequires: libX11-devel
BuildRequires: libXext-devel
## AUTOBUILDREQ-END
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%description
projectM is an OpenGL based advanced music visualization program for Linux, Mac OSX, and Windows.
It is backward compatible with all the features of Milkdrop 1.x, but has many new toys and enhancements.
%package devel
Group: Development/Libraries
Summary: Static libraries and headers for %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description devel
projectM is an OpenGL based advanced music visualization program for Linux, Mac OSX, and Windows.
It is backward compatible with all the features of Milkdrop 1.x, but has many new toys and enhancements.
This package contains static libraries and header files needed for development.
%package qt
Group: System/Libraries
Summary: An advanced MilkDrop-compatible music visualization library for Qt
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description qt
projectM is an OpenGL based advanced music visualization program for Linux, Mac OSX, and Windows.
It is backward compatible with all the features of Milkdrop 1.x, but has many new toys and enhancements.
This package contains the Qt library.
%package qt-devel
Group: Development/Libraries
Summary: Static libraries and headers for %{name}-qt
Requires: %{name}-qt = %{?epoch:%epoch:}%{version}-%{release}
%description qt-devel
projectM is an OpenGL based advanced music visualization program for Linux, Mac OSX, and Windows.
It is backward compatible with all the features of Milkdrop 1.x, but has many new toys and enhancements.
This package contains static libraries and header files needed for development.
%package -n projectM-pulseaudio
Group: Applications/Multimedia
Summary: Pulseaudio tool for %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description -n projectM-pulseaudio
projectM is an OpenGL based advanced music visualization program for Linux, Mac OSX, and Windows.
It is backward compatible with all the features of Milkdrop 1.x, but has many new toys and enhancements.
This package contains the Pulseaudio tool for %{name}.
%prep
%setup -q -n projectM-complete-%{version}-Source
%build
%cmake -d build \
-DCMAKE_BUILD_TYPE=RELEASE \
-DLIB_INSTALL_DIR=%{_libdir} \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DINCLUDE-PROJECTM-TEST:BOOL=FALSE
%make
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%makeinstall -C build
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%post qt -p /sbin/ldconfig
%postun qt -p /sbin/ldconfig
%files
%defattr(-,root,root)
%{_libdir}/libprojectM.so.*
%{_libdir}/libvisual-*/actor/libprojectM_libvisual.so
%dir %{_datadir}/projectM
%{_datadir}/projectM/config.inp
%dir %{_datadir}/projectM/fonts
%{_datadir}/projectM/fonts/*.ttf
%{_datadir}/projectM/presets
%{_datadir}/projectM/shaders/blur.cg
%{_datadir}/projectM/shaders/projectM.cg
%files devel
%defattr(-,root,root)
%dir %{_includedir}/libprojectM
%{_includedir}/libprojectM/*.hpp
%{_includedir}/libprojectM/*.h
%{_libdir}/libprojectM.so
%{_libdir}/pkgconfig/libprojectM.pc
%files qt
%defattr(-,root,root)
%{_libdir}/libprojectM-qt.so.*
%files qt-devel
%dir %{_includedir}/libprojectM-qt
%{_includedir}/libprojectM-qt/qprojectm*.hpp
%{_libdir}/libprojectM-qt.so
%{_libdir}/pkgconfig/libprojectM-qt.pc
%files -n projectM-pulseaudio
%defattr(-,root,root)
%{_bindir}/projectM-pulseaudio
%{_datadir}/applications/projectM-pulseaudio.desktop
%{_datadir}/pixmaps/prjm16-transparent.svg
%changelog
* Sat Dec 08 2012 Automatic Build System <autodist@mambasoft.it> 2.1.0-1mamba
- update to 2.1.0
* Wed Sep 22 2010 gil <puntogil@libero.it> 2.0.1-2mamba
- added clementine patches
* Mon Jul 05 2010 gil <puntogil@libero.it> 2.0.1-1mamba
- update to 2.0.1
* Tue Sep 02 2008 gil <puntogil@libero.it> 1.2.0-1mamba
- package created by autospec