[vlc-commits] Contribs: add projectM

Jean-Baptiste Kempf git at videolan.org
Tue Aug 9 00:07:53 CEST 2011


vlc | branch: master | Jean-Baptiste Kempf <jb at videolan.org> | Tue Aug  9 00:02:31 2011 +0200| [8c2eb7b42b898909b5adcb61fddbf99bd4866b4d] | committer: Jean-Baptiste Kempf

Contribs: add projectM

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8c2eb7b42b898909b5adcb61fddbf99bd4866b4d
---

 contrib/src/projectM/SHA512SUMS  |    1 +
 contrib/src/projectM/rules.mak   |   35 +++++++
 contrib/src/projectM/win32.patch |  201 ++++++++++++++++++++++++++++++++++++++
 3 files changed, 237 insertions(+), 0 deletions(-)

diff --git a/contrib/src/projectM/SHA512SUMS b/contrib/src/projectM/SHA512SUMS
new file mode 100644
index 0000000..4fd3308
--- /dev/null
+++ b/contrib/src/projectM/SHA512SUMS
@@ -0,0 +1 @@
+0edbf487d45983b0004ee67009931da985f3b9909cb10eb32a2c9116eed46f9cf9c7a1c696138d16a30aedd81d43ac5533fb7666c9fba9326c9c89f4e87f88db  projectM-2.0.1-Source.tar.gz
diff --git a/contrib/src/projectM/rules.mak b/contrib/src/projectM/rules.mak
new file mode 100644
index 0000000..286dd34
--- /dev/null
+++ b/contrib/src/projectM/rules.mak
@@ -0,0 +1,35 @@
+# PROJECTM
+PROJECTM_VERSION := 2.0.1
+PROJECTM_URL := $(SF)/projectm/$(PROJECTM_VERSION)/projectM-$(PROJECTM_VERSION)-Source.tar.gz
+
+PKGS += projectM
+ifeq ($(call need_pkg,"libprojectM"),)
+PKGS_FOUND += projectM
+endif
+
+$(TARBALLS)/projectM-$(PROJECTM_VERSION)-Source.tar.gz:
+	$(call download,$(PROJECTM_URL))
+
+.sum-projectM: projectM-$(PROJECTM_VERSION)-Source.tar.gz
+
+projectM: projectM-$(PROJECTM_VERSION)-Source.tar.gz .sum-projectM
+	$(UNPACK)
+ifdef HAVE_WIN32
+	$(APPLY) $(SRC)/projectM/win32.patch
+endif
+	$(MOVE)
+
+DEPS_projectM = glew $(DEPS_glew)
+
+.projectM: projectM .glew
+	-cd $< && rm CMakeCache.txt
+	cd $< && $(HOSTVARS) $(CMAKE) \
+		-DINCLUDE-PROJECTM-LIBVISUAL:BOOL=OFF \
+		-DDISABLE_NATIVE_PRESETS:BOOL=ON \
+		-DUSE_FTGL:BOOL=OFF \
+		-DINCLUDE-PROJECTM-PULSEAUDIO:BOOL=OFF \
+		-DINCLUDE-PROJECTM-QT:BOOL=OFF \
+		-DBUILD_PROJECTM_STATIC:BOOL=ON .
+	cd $< && $(MAKE) install
+	-cd $<; cp Renderer/libRenderer.a MilkdropPresetFactory/libMilkdropPresetFactory.a $(PREFIX)/lib
+	touch $@
diff --git a/contrib/src/projectM/win32.patch b/contrib/src/projectM/win32.patch
new file mode 100644
index 0000000..88204b4
--- /dev/null
+++ b/contrib/src/projectM/win32.patch
@@ -0,0 +1,201 @@
+diff -ruN libprojectM/Renderer/TextureManager.cpp libprojectM.new/Renderer/TextureManager.cpp
+--- libprojectM/Renderer/TextureManager.cpp	2009-12-01 07:38:42.000000000 +0100
++++ libprojectM.new/Renderer/TextureManager.cpp	2009-12-03 23:28:44.000000000 +0100
+@@ -59,7 +59,7 @@
+ 	ilLoadL(IL_TYPE_UNKNOWN,(ILvoid*) M_data, M_bytes);
+ 	GLuint tex = ilutGLBindTexImage();
+ #else
+-	 uint tex = SOIL_load_OGL_texture_from_memory(
++	 unsigned int tex = SOIL_load_OGL_texture_from_memory(
+ 					  M_data,
+ 					  M_bytes,
+ 					  SOIL_LOAD_AUTO,
+@@ -173,7 +173,7 @@
+ #else
+        int width, height;
+ 
+-       uint tex = SOIL_load_OGL_texture_size(
++       unsigned int tex = SOIL_load_OGL_texture_size(
+     		   imageURL.c_str(),
+ 					  SOIL_LOAD_AUTO,
+ 					  SOIL_CREATE_NEW_ID,
+diff -ruN libprojectM/win32-dirent.h libprojectM.new/win32-dirent.h
+--- libprojectM/win32-dirent.h	2009-12-01 07:38:42.000000000 +0100
++++ libprojectM.new/win32-dirent.h	2009-12-03 23:29:13.000000000 +0100
+@@ -19,7 +19,7 @@
+ 
+ typedef struct DIR DIR;
+ 
+-static int errno;
++//static int errno;
+ 
+ struct dirent
+ {
+diff -ruN libprojectM/PresetLoader.hpp libprojectM.new2/PresetLoader.hpp
+--- libprojectM/PresetLoader.hpp	2009-12-01 07:38:42.000000000 +0100
++++ libprojectM.new2/PresetLoader.hpp	2009-12-04 00:29:20.000000000 +0100
+@@ -6,7 +6,7 @@
+ #include <sys/types.h>
+ 
+ #ifdef WIN32
+-#include "win32-dirent.h"
++#include <dirent.h>
+ #endif
+ 
+ #ifdef LINUX
+diff -ruN libprojectM/projectM.cpp libprojectM.new2/projectM.cpp
+--- libprojectM/projectM.cpp	2009-12-01 07:38:42.000000000 +0100
++++ libprojectM.new2/projectM.cpp	2009-12-04 00:28:29.000000000 +0100
+@@ -24,9 +24,6 @@
+ #include "fatal.h"
+ #include "Common.hpp"
+ 
+-#ifdef WIN32
+-#include "win32-dirent.h"
+-#endif
+ 
+ #include "timer.h"
+ #include <iostream>
+diff -ruN libprojectM/projectM.hpp libprojectM.new2/projectM.hpp
+--- libprojectM/projectM.hpp	2009-12-01 07:38:42.000000000 +0100
++++ libprojectM.new2/projectM.hpp	2009-12-04 00:28:22.000000000 +0100
+@@ -29,11 +29,7 @@
+ #ifndef _PROJECTM_HPP
+ #define _PROJECTM_HPP
+ 
+-#ifdef WIN32
+-#include "win32-dirent.h"
+-#else
+ #include <dirent.h>
+-#endif /** WIN32 */
+ #include <cmath>
+ #include <cstdio>
+ #include <string>
+
+--- libprojectM/CMakeLists.txt	2009-12-01 07:38:42.000000000 +0100
++++ libprojectM.new/CMakeLists.txt	2009-12-04 00:34:12.000000000 +0100
+@@ -121,15 +121,13 @@
+ 
+ SET_TARGET_PROPERTIES(projectM PROPERTIES VERSION 2.00 SOVERSION 2)
+ 
+-ADD_DEFINITIONS(-DUSE_THREADS)
+-
+ if (APPLE)
+ ADD_DEFINITIONS(-DMACOS -DSTBI_NO_DDS -DUSE_THREADS)
+ set(RESOURCE_PREFIX "Resources")
+ else (APPLE)
+ if (WIN32)
+ set (RESOURCE_PREFIX "Resources")
+-ADD_DEFINITIONS(-DWIN32 -DSTBI_NO_DDS -DUSE_THREADS)
++ADD_DEFINITIONS(-DWIN32 -DSTBI_NO_DDS )
+ else(WIN32)
+ set (RESOURCE_PREFIX "share/projectM")
+ ADD_DEFINITIONS(-DLINUX -DSTBI_NO_DDS -DUSE_THREADS)
+--- libprojectM.new/CMakeLists.txt	2009-12-04 00:34:12.000000000 +0100
++++ libprojectM/CMakeLists.txt	2009-12-04 09:04:54.000000000 +0100
+@@ -62,6 +62,8 @@
+ SET(PRESET_FACTORY_SOURCES ${PRESET_FACTORY_SOURCES} ${NativePresetFactory_SOURCE_DIR})
+ SET(PRESET_FACTORY_BINARY_DIR ${PRESET_FACTORY_BINARY_DIR} ${NativePresetFactory_BINARY_DIR})
+ SET(PRESET_FACTORY_LINK_TARGETS ${PRESET_FACTORY_LINK_TARGETS} NativePresetFactory)
++else (NOT DISABLE_NATIVE_PRESETS)
++ADD_DEFINITIONS(-DDISABLE_NATIVE_PRESETS)
+ endif(NOT DISABLE_NATIVE_PRESETS)
+ 
+ if (NOT DISABLE_MILKDROP_PRESETS)
+@@ -114,6 +116,7 @@
+ endif(COMMAND cmake_policy)
+ 
+ if (BUILD_PROJECTM_STATIC)
++ADD_DEFINITIONS(-DGLEW_STATIC)
+ ADD_LIBRARY(projectM STATIC ${projectM_SOURCES})
+ else(BUILD_PROJECTM_STATIC)
+ ADD_LIBRARY(projectM SHARED ${projectM_SOURCES})
+--- libprojectM.new/libprojectM.pc.in	2009-12-04 00:33:48.000000000 +0100
++++ libprojectM/libprojectM.pc.in	2009-12-04 08:59:27.000000000 +0100
+@@ -9,5 +9,5 @@
+ Version: 2.0.0
+ Description: projectM - OpenGL Milkdrop
+ Requires:
+-Libs: -L${libdir} -lprojectM 
++Libs: -L${libdir} -lprojectM -lglu32 -lglew32 -lopengl32
+ Cflags: -I${includedir} 
+--- libprojectM/libprojectM.pc.in	2009-12-04 09:55:20.000000000 +0100
++++ libprojectM.new/libprojectM.pc.in	2009-12-04 09:54:55.000000000 +0100
+@@ -9,5 +9,5 @@
+ Version: 2.0.0
+ Description: projectM - OpenGL Milkdrop
+ Requires:
+-Libs: -L${libdir} -lprojectM -lglu32 -lglew32 -lopengl32
++Libs: -L${libdir} -lprojectM ${libdir}/libMilkdropPresetFactory.a ${libdir}/libRenderer.a  ${libdir}/libprojectM.a -lglu32 -lglew32 -lopengl32
+ Cflags: -I${includedir} 
+diff -ruN libprojectM.new/libprojectM.pc.in libprojectM/libprojectM.pc.in
+--- libprojectM.new/libprojectM.pc.in	2009-12-04 09:54:55.000000000 +0100
++++ libprojectM/libprojectM.pc.in	2009-12-04 10:15:18.000000000 +0100
+@@ -1,6 +1,6 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=@CMAKE_INSTALL_PREFIX@
+-libdir=@LIB_INSTALL_DIR@
++libdir=@CMAKE_INSTALL_PREFIX@/lib
+ includedir=@CMAKE_INSTALL_PREFIX@/include
+ pkgdatadir=@CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@
+ sysconfdir=@CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@
+@@ -9,5 +9,5 @@
+ Version: 2.0.0
+ Description: projectM - OpenGL Milkdrop
+ Requires:
+-Libs: -L${libdir} -lprojectM ${libdir}/libMilkdropPresetFactory.a ${libdir}/libRenderer.a  ${libdir}/libprojectM.a -lglu32 -lglew32 -lopengl32
++Libs: -L${libdir} -lprojectM -lMilkdropPresetFactory -lRenderer -lglu32 -lglew32 -lopengl32
+ Cflags: -I${includedir} 
+diff -ruN libprojectM.new/MilkdropPresetFactory/CMakeLists.txt libprojectM/MilkdropPresetFactory/CMakeLists.txt
+--- libprojectM.new/MilkdropPresetFactory/CMakeLists.txt	2009-12-01 07:38:42.000000000 +0100
++++ libprojectM/MilkdropPresetFactory/CMakeLists.txt	2009-12-04 10:26:42.000000000 +0100
+@@ -5,7 +5,11 @@
+       cmake_policy(SET CMP0003 NEW)
+     endif(COMMAND cmake_policy)
+ 
+-SET(MilkdropPresetFactory_SOURCES BuiltinFuncs.cpp Func.cpp MilkdropPreset.cpp Param.hpp PresetFrameIO.cpp CustomShape.cpp  Eval.cpp MilkdropPresetFactory.cpp PerPixelEqn.cpp BuiltinParams.cpp InitCond.cpp Parser.cpp CustomWave.cpp Expr.cpp PerPointEqn.cpp Param.cpp PerFrameEqn.cpp IdlePreset.cpp)
++SET(MilkdropPresetFactory_SOURCES BuiltinFuncs.cpp Func.cpp MilkdropPreset.cpp
++        Param.hpp PresetFrameIO.cpp CustomShape.cpp  Eval.cpp
++        MilkdropPresetFactory.cpp PerPixelEqn.cpp BuiltinParams.cpp
++        InitCond.cpp Parser.cpp CustomWave.cpp Expr.cpp PerPointEqn.cpp
++        Param.cpp PerFrameEqn.cpp IdlePreset.cpp ../PresetFactory.cpp )
+ 
+ SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
+ 
+diff -ruN libprojectM.new/Renderer/Renderer.cpp libprojectM/Renderer/Renderer.cpp
+--- libprojectM.new/Renderer/Renderer.cpp	2009-12-01 07:38:42.000000000 +0100
++++ libprojectM/Renderer/Renderer.cpp	2009-12-04 10:21:38.000000000 +0100
+@@ -222,7 +222,7 @@
+ 	glTranslatef(-0.5, -0.5, 0);
+ 
+ 	// When console refreshes, there is a chance the preset has been changed by the user
+-	refreshConsole();
++	//refreshConsole();
+ 	draw_title_to_screen(false);
+ 	if (this->showhelp % 2)
+ 		draw_help();
+diff -ruN libprojectM/RandomNumberGenerators.hpp libprojectM.new/RandomNumberGenerators.hpp
+--- libprojectM/RandomNumberGenerators.hpp	2009-12-01 07:38:42.000000000 +0100
++++ libprojectM.new/RandomNumberGenerators.hpp	2010-01-09 01:09:38.000000000 +0100
+@@ -4,6 +4,7 @@
+ #include <vector>
+ #include <cassert>
+ #include <iostream>
++#include <stdlib.h>
+ 
+ #define WEIGHTED_RANDOM_DEBUG 0
+ 
+diff -ruN libprojectM/Renderer/TextureManager.cpp libprojectM.new/Renderer/TextureManager.cpp
+--- libprojectM/Renderer/TextureManager.cpp	2010-01-09 01:16:11.000000000 +0100
++++ libprojectM.new/Renderer/TextureManager.cpp	2010-01-09 01:03:59.000000000 +0100
+@@ -30,6 +30,10 @@
+ #include "IdleTextures.hpp"
+ 
+ 
++#include <stdio.h>
++#include <stdlib.h>
++#include <time.h>
++
+ 
+ TextureManager::TextureManager(const std::string _presetURL): presetURL(_presetURL)
+ {



More information about the vlc-commits mailing list