misc/projectM: Updated for version 3.1.12.

Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
This commit is contained in:
M.Dinslage 2021-07-28 17:35:22 -05:00 committed by Robby Workman
parent 309be9c0a2
commit 77a8082a4b
7 changed files with 45 additions and 131 deletions

View file

@ -1,5 +1,5 @@
projectM (Music visualization program)
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 (and now 2.x), but has many new toys and enhancements.
projectM is an open-source project that reimplements the esteemed Winamp
Milkdrop by Geiss in a more modern, cross-platform reusable library.
Its purpose in life is to read an audio input and to produce mesmerizing
visuals, detecting tempo, and rendering advanced equations into a limitless
array of user-contributed visualizations.

View file

@ -1,32 +0,0 @@
--- src/libprojectM/CMakeLists.txt.orig 2012-05-20 03:43:26.000000000 +0000
+++ src/libprojectM/CMakeLists.txt 2014-08-29 03:36:28.593809096 +0000
@@ -35,7 +35,7 @@
ADD_DEFINITIONS(-DCMAKE_INSTALL_PREFIX="\\\"${CMAKE_INSTALL_PREFIX}\\\"")
-SET(LIB_INSTALL_DIR "\${exec_prefix}/lib"
+SET(LIB_INSTALL_DIR "\${exec_prefix}/lib${LIB_SUFFIX}"
CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)"
FORCE)
@@ -234,7 +234,7 @@
FILE(GLOB presets "presets/*.milk" "presets/*.prjm" "presets/*.tga")
INSTALL(FILES ${presets} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/projectM/presets)
INSTALL(FILES ${Renderer_SOURCE_DIR}/projectM.cg ${Renderer_SOURCE_DIR}/blur.cg DESTINATION ${CMAKE_INSTALL_PREFIX}/share/projectM/shaders)
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/libprojectM.pc DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pkgconfig)
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/libprojectM.pc DESTINATION ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/pkgconfig)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/config.inp DESTINATION ${CMAKE_INSTALL_PREFIX}/share/projectM)
INSTALL(FILES projectM.hpp event.h dlldefs.h fatal.h PCM.hpp Common.hpp DESTINATION include/libprojectM)
-INSTALL(TARGETS projectM DESTINATION lib)
+INSTALL(TARGETS projectM DESTINATION lib${LIB_SUFFIX})
--- src/projectM-qt/CMakeLists.txt.orig 2012-05-20 03:43:25.000000000 +0000
+++ src/projectM-qt/CMakeLists.txt 2014-08-29 03:37:40.050705339 +0000
@@ -131,6 +131,6 @@
target_link_libraries(projectM-qt projectM GLEW GL ${QT_QTGUI_LIBRARIES} ${QT_QTOPENGL_LIBRARIES} ${QT_QTXML_LIBRARIES} ${QT_LIBRARIES})
install(FILES qprojectm_mainwindow.hpp DESTINATION include/libprojectM-qt)
-install(TARGETS projectM-qt DESTINATION lib)
-install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libprojectM-qt.pc" DESTINATION lib/pkgconfig)
+install(TARGETS projectM-qt DESTINATION lib${LIB_SUFFIX})
+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libprojectM-qt.pc" DESTINATION lib${LIB_SUFFIX}/pkgconfig)
install(FILES "images/icons/prjm16-transparent.svg" DESTINATION ${CMAKE_INSTALL_PREFIX}/share/pixmaps)

View file

@ -1,11 +0,0 @@
--- src/libprojectM/CMakeLists.txt.orig 2014-08-29 07:31:53.446941895 +0000
+++ src/libprojectM/CMakeLists.txt 2014-08-29 07:33:41.336200162 +0000
@@ -224,7 +224,7 @@
CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/config.inp.in" "${CMAKE_CURRENT_BINARY_DIR}/config.inp" @ONLY)
IF(projectM_FONT_MENU MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/Vera.ttf" OR projectM_FONT_TITLE MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/Vera.ttf")
- INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/fonts/VeraMono.ttf DESTINATION ${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts)
+ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/fonts/Vera.ttf DESTINATION ${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts)
ENDIF(projectM_FONT_MENU MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/Vera.ttf" OR projectM_FONT_TITLE MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/Vera.ttf")
IF(projectM_FONT_MENU MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/VeraMono.ttf" OR projectM_FONT_TITLE MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/VeraMono.ttf")

View file

@ -1,63 +0,0 @@
diff -x '*orig' -rup projectM-complete-2.1.0-Source/src/libprojectM/Common.hpp projectM-complete-2.1.0-Source.new/src/libprojectM/Common.hpp
--- projectM-complete-2.1.0-Source/src/libprojectM/Common.hpp 2012-05-20 04:43:26.000000000 +0100
+++ projectM-complete-2.1.0-Source.new/src/libprojectM/Common.hpp 2016-03-17 05:00:14.176905540 +0000
@@ -63,7 +63,8 @@ extern FILE *fmemopen(void *buf, size_t
#ifdef LINUX
#include <cstdlib>
-#define projectM_isnan isnan
+#include <cmath>
+#define projectM_isnan std::isnan
#endif
diff -x '*orig' -rup projectM-complete-2.1.0-Source/src/libprojectM/MilkdropPresetFactory/Parser.cpp
projectM-complete-2.1.0-Source.new/src/libprojectM/MilkdropPresetFactory/Parser.cpp
--- projectM-complete-2.1.0-Source/src/libprojectM/MilkdropPresetFactory/Parser.cpp 2012-05-20 04:43:26.000000000 +0100
+++ projectM-complete-2.1.0-Source.new/src/libprojectM/MilkdropPresetFactory/Parser.cpp 2016-03-17 05:00:14.177905556 +0000
@@ -1406,7 +1406,7 @@ PerFrameEqn * Parser::parse_implicit_per
PerFrameEqn * per_frame_eqn;
GenExpr * gen_expr;
- if (fs == NULL)
+ if (!fs)
return NULL;
if (param_string == NULL)
return NULL;
@@ -1561,7 +1561,7 @@ InitCond * Parser::parse_per_frame_init_
if (preset == NULL)
return NULL;
- if (fs == NULL)
+ if (!fs)
return NULL;
if ((token = parseToken(fs, name)) != tEq)
@@ -1875,7 +1875,7 @@ int Parser::parse_shapecode(char * token
/* Null argument checks */
if (preset == NULL)
return PROJECTM_FAILURE;
- if (fs == NULL)
+ if (!fs)
return PROJECTM_FAILURE;
if (token == NULL)
return PROJECTM_FAILURE;
@@ -2166,7 +2166,7 @@ int Parser::parse_wave(char * token, std
if (token == NULL)
return PROJECTM_FAILURE;
- if (fs == NULL)
+ if (!fs)
return PROJECTM_FAILURE;
if (preset == NULL)
return PROJECTM_FAILURE;
@@ -2348,7 +2348,7 @@ int Parser::parse_shape(char * token, st
if (token == NULL)
return PROJECTM_FAILURE;
- if (fs == NULL)
+ if (!fs)
return PROJECTM_FAILURE;
if (preset == NULL)
return PROJECTM_FAILURE;

View file

@ -2,7 +2,7 @@
# Slackware build script for projectM
# Copyright 2017 Matt Dinslage, Springfield, MO
# Copyright 2021 Matt Dinslage, Springfield, MO
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -25,11 +25,13 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=projectM
VERSION=${VERSION:-3.1.7}
VERSION=${VERSION:-3.1.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
SRCNAM=projectm
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
@ -69,26 +71,44 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
rm -rf $SRCNAM-$VERSION
tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# thanks archlinux!
./configure --prefix=/usr --enable-gles --enable-sdl --enable-threading --enable-qt
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool # Fix overlinking
./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--disable-static \
--build=$ARCH-slackware-linux
make
make install DESTDIR=$PKG
# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS.txt LICENSE.txt README.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install

View file

@ -1,10 +1,10 @@
PRGNAM="projectM"
VERSION="3.1.7"
HOMEPAGE="http://projectm.sourceforge.net/"
DOWNLOAD="https://github.com/projectM-visualizer/projectm/releases/download/v3.1.7/projectM-3.1.7.tar.gz"
MD5SUM="abd4cab7abec65fe05b4dcc064bf5ba3"
VERSION="3.1.12"
HOMEPAGE="https://github.com/projectM-visualizer/projectm"
DOWNLOAD="https://github.com/projectM-visualizer/projectm/archive/v3.1.12/projectm-3.1.12.tar.gz"
MD5SUM="8b583aa05d1ab66985fa89d593b480d5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="ftgl glm"
REQUIRES=""
MAINTAINER="M.Dinslage"
EMAIL="daedra1980@gmail.com"

View file

@ -6,13 +6,13 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
projectM: projectM (Music visualization program)
projectM:
projectM: projectM is an OpenGL based advanced music visualization program
projectM: for Linux, Mac OSX, and Windows. It is backward compatible with
projectM: all the features of Milkdrop 1.x (and now 2.x), but has many new
projectM: toys and enhancements.
projectM: projectM (cross-platform music visualization)
projectM:
projectM: projectM is an open-source project that reimplements the esteemed
projectM: Winamp Milkdrop by Geiss in a more modern, cross-platform reusable
projectM: library. Its purpose in life is to read an audio input and to
projectM: produce mesmerizing visuals, detecting tempo, and rendering advanced
projectM: equations into a limitless array of user-contributed visualizations.
projectM:
projectM:
projectM: