mirror of
https://github.com/projectM-visualizer/projectm.git
synced 2026-03-06 07:25:15 +00:00
Merge branch 'qt' of github.com:projectM-visualizer/projectm into qt
This commit is contained in:
60
configure.ac
60
configure.ac
@ -11,6 +11,16 @@ AX_CHECK_GL
|
||||
|
||||
AC_CHECK_LIB(c, dlopen, LIBDL="", AC_CHECK_LIB(dl, dlopen, LIBDL="-ldl"))
|
||||
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
src/Makefile
|
||||
src/libprojectM/Makefile
|
||||
src/libprojectM/Renderer/Makefile
|
||||
src/libprojectM/NativePresetFactory/Makefile
|
||||
src/libprojectM/MilkdropPresetFactory/Makefile
|
||||
])
|
||||
|
||||
dnl SDL
|
||||
AC_ARG_ENABLE([sdl],
|
||||
AS_HELP_STRING([--enable-sdl], [Build SDL2 app]),
|
||||
@ -20,18 +30,9 @@ AS_IF([test "x$enable_sdl" = "xyes"], [
|
||||
SDL_VERSION=2.0.5
|
||||
AS_IF([test "$TRAVIS"], [SDL_VERSION=2.0.2]) # travis has old SDL, we don't care
|
||||
AM_PATH_SDL2($SDL_VERSION, :, AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!]))
|
||||
AC_CONFIG_FILES([src/projectM-sdl/Makefile])
|
||||
])
|
||||
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
src/Makefile
|
||||
src/libprojectM/Makefile
|
||||
src/libprojectM/Renderer/Makefile
|
||||
src/libprojectM/NativePresetFactory/Makefile
|
||||
src/libprojectM/MilkdropPresetFactory/Makefile
|
||||
src/projectM-sdl/Makefile
|
||||
])
|
||||
dnl FIXME
|
||||
AC_CONFIG_FILES([src/libprojectM/config.inp], [sed -i -e"s/\${prefix}/$prefix/" src/libprojectM/config.inp])
|
||||
|
||||
@ -44,24 +45,31 @@ AC_ARG_ENABLE([qt],
|
||||
AS_HELP_STRING([--enable-qt], [Build Qt]),
|
||||
[], [enable_qt=no])
|
||||
AS_IF([test "x$enable_qt" = "xyes"], [
|
||||
PKG_CHECK_MODULES(QT, [Qt5Core, Qt5Gui], [], [AC_MSG_ERROR([Qt libraries are required.])])
|
||||
qt_CPPFLAGS="`$PKG_CONFIG --cflags-only-I Qt5Core Qt5Gui` $CPPFLAGS"
|
||||
qt_LDFLAGS="`$PKG_CONFIG --libs-only-L Qt5Core Qt5Gui` $LDFLAGS"
|
||||
qt_LIBS="`$PKG_CONFIG --libs-only-l Qt5Core Qt5Gui` $LIBS"
|
||||
|
||||
if ! `$PKG_CONFIG --atleast-version=5.0.0 Qt5Core`; then
|
||||
AC_MSG_ERROR([Qt >= 5.0.0 is required. Try installing qtdeclarative5-dev])
|
||||
fi
|
||||
|
||||
AC_CHECK_PROGS(MOC, [moc-qt5 moc])
|
||||
AC_CHECK_PROGS(UIC, [uic-qt5 uic])
|
||||
AC_CHECK_PROGS(RCC, [rcc])
|
||||
if test -z "$MOC" || test -z "$UIC" || test -z "$RCC"; then
|
||||
AC_MSG_ERROR([Qt utility programs moc, uic, and rcc are required.])
|
||||
fi
|
||||
AC_CONFIG_FILES([src/projectM-qt/Makefile])
|
||||
PKG_CHECK_MODULES(QT, [Qt5Core, Qt5Gui, Qt5Widgets Qt5OpenGL], [], [AC_MSG_ERROR([Qt libraries are required.])])
|
||||
qt_CPPFLAGS="`$PKG_CONFIG --cflags-only-I Qt5Core Qt5Gui Qt5Widgets Qt5OpenGL` $CPPFLAGS"
|
||||
qt_LDFLAGS="`$PKG_CONFIG --libs-only-L Qt5Core Qt5Gui Qt5Widgets Qt5OpenGL` $LDFLAGS"
|
||||
qt_LIBS="`$PKG_CONFIG --libs-only-l Qt5Core Qt5Gui Qt5Widgets Qt5OpenGL` $LIBS"
|
||||
|
||||
if ! `$PKG_CONFIG --atleast-version=5.0.0 Qt5Core`; then
|
||||
AC_MSG_ERROR([Qt >= 5.0.0 is required. Try installing qtdeclarative5-dev])
|
||||
fi
|
||||
|
||||
AC_CHECK_PROGS(MOC, [moc-qt5 moc])
|
||||
AC_CHECK_PROGS(UIC, [uic-qt5 uic])
|
||||
AC_CHECK_PROGS(RCC, [rcc])
|
||||
if test -z "$MOC" || test -z "$UIC" || test -z "$RCC"; then
|
||||
AC_MSG_ERROR([Qt utility programs moc, uic, and rcc are required.])
|
||||
fi
|
||||
AC_CONFIG_FILES([src/projectM-qt/Makefile])
|
||||
AC_CONFIG_FILES([src/projectM-pulseaudio/Makefile])
|
||||
|
||||
PKG_CHECK_MODULES(LIBPULSE, [libpulse], [], [AC_MSG_ERROR([Pulseaudio library libpulse is required.])])
|
||||
])
|
||||
|
||||
AM_CONDITIONAL([ENABLE_SDL], [test "$enable_sdl" = yes])
|
||||
AM_CONDITIONAL([ENABLE_QT], [test "$enable_qt" = yes])
|
||||
|
||||
|
||||
my_CFLAGS="-Wall -Wchar-subscripts -Wformat-security -Wmissing-declarations -Wpointer-arith -Wshadow -Wsign-compare -Wtype-limits "
|
||||
AC_SUBST([my_CFLAGS])
|
||||
|
||||
|
||||
@ -1 +1,9 @@
|
||||
SUBDIRS=libprojectM projectM-sdl
|
||||
if ENABLE_SDL
|
||||
PROJECTM_SDL_SUBDIR = projectM-sdl
|
||||
endif
|
||||
|
||||
if ENABLE_QT
|
||||
PROJECTM_QT_SUBDIR = projectM-qt projectM-pulseaudio
|
||||
endif
|
||||
|
||||
SUBDIRS=libprojectM ${PROJECTM_SDL_SUBDIR} ${PROJECTM_QT_SUBDIR}
|
||||
|
||||
62
src/projectM-pulseaudio/Makefile.am
Normal file
62
src/projectM-pulseaudio/Makefile.am
Normal file
@ -0,0 +1,62 @@
|
||||
SUFFIXES = .hpp .cpp _moc.cpp _qrc.qrc
|
||||
|
||||
projectM_pulseaudio_qtheaders = \
|
||||
QPulseAudioDeviceChooser.hpp \
|
||||
QPulseAudioDeviceModel.hpp \
|
||||
QPulseAudioThread.hpp
|
||||
|
||||
projectM_pulseaudio_moc_sources = $(projectM_pulseaudio_qtheaders:.hpp=_moc.cpp)
|
||||
|
||||
.hpp_moc.cpp:
|
||||
@MOC@ -o$@ $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(CPPFLAGS) $(MOC_CPPFLAGS)\
|
||||
$(qt_CPPFLAGS) $(qt_LDFLAGS) $(qt_LIBS) $<
|
||||
|
||||
ui_PulseDeviceChooserDialog.h: PulseDeviceChooserDialog.ui
|
||||
@UIC@ -o $@ $<
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-include $(top_builddir)/config.h \
|
||||
-DSYSCONFDIR=\""$(sysconfdir)"\" \
|
||||
-DPROJECTM_PREFIX=\""${prefix}"\" \
|
||||
-I${top_srcdir}/src/libprojectM \
|
||||
-I${top_srcdir}/src/libprojectM/Renderer \
|
||||
-I${top_srcdir}/src/projectM-qt \
|
||||
${QT_CFLAGS} \
|
||||
${LIBPULSE_CFLAGS} \
|
||||
-fPIC
|
||||
|
||||
AM_CFLAGS = ${my_CFLAGS} \
|
||||
-fvisibility=hidden \
|
||||
-ffunction-sections \
|
||||
-fdata-sections
|
||||
|
||||
bin_PROGRAMS = projectM-pulseaudio
|
||||
|
||||
projectM_pulseaudio_SOURCES = \
|
||||
$(projectM_pulseaudio_moc_sources) \
|
||||
qprojectM-pulseaudio.cpp \
|
||||
QPulseAudioDeviceChooser.cpp \
|
||||
QPulseAudioDeviceModel.cpp \
|
||||
QPulseAudioThread.cpp
|
||||
|
||||
projectM_pulseaudio_LDADD = \
|
||||
${QT_LIBS} \
|
||||
${LIBPULSE_LIBS} \
|
||||
${top_srcdir}/src/projectM-qt/libprojectM_qt.a \
|
||||
${top_srcdir}/src/libprojectM/libprojectM.la
|
||||
|
||||
projectM_pulseaudio_LDFLAGS = -static
|
||||
|
||||
projectM_pulseaudio_PROGRAM = projectM-pulseaudio
|
||||
|
||||
BUILT_SOURCES = \
|
||||
ui_PulseDeviceChooserDialog.h
|
||||
|
||||
CLEANFILES = \
|
||||
${BUILT_SOURCES} \
|
||||
${projectM_pulseaudio_moc_sources}
|
||||
|
||||
desktopdir = $(datadir)/applications
|
||||
dist_desktop_DATA = projectM-pulseaudio.desktop
|
||||
|
||||
dist_man_MANS = projectM-pulseaudio.1
|
||||
@ -1,55 +1,69 @@
|
||||
SUFFIXES = .hpp .cpp _moc.cpp _qrc.qrc
|
||||
|
||||
projectM_qt_qtheaders = qprojectm_mainwindow.hpp \
|
||||
qpresetfiledialog.hpp \
|
||||
qplaylistfiledialog.hpp \
|
||||
qplaylistmodel.hpp \
|
||||
qprojectmconfigdialog.hpp \
|
||||
qplaylisttableview.hpp \
|
||||
qpresettextedit.hpp \
|
||||
qpreseteditordialog.hpp \
|
||||
qprojectm.hpp \
|
||||
qprojectmwidget.hpp
|
||||
projectM_qt_moc_sources = $(projectM_qt_qtheaders:.h=_moc.cpp)
|
||||
.h_moc.cpp:
|
||||
@MOC@ -o$@ $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(MOC_CPPFLAGS)\
|
||||
$(qt_CPPFLAGS) $(qt_LDFLAGS) $(qt_LIBS) $<
|
||||
qpresetfiledialog.hpp \
|
||||
qplaylistfiledialog.hpp \
|
||||
qplaylistmodel.hpp \
|
||||
qprojectmconfigdialog.hpp \
|
||||
qplaylisttableview.hpp \
|
||||
qpresettextedit.hpp \
|
||||
qpreseteditordialog.hpp \
|
||||
qprojectm.hpp \
|
||||
qprojectmwidget.hpp
|
||||
|
||||
.h_ui.ui:
|
||||
@UIC@ -o $@ $<
|
||||
projectM_qt_moc_sources = $(projectM_qt_qtheaders:.hpp=_moc.cpp)
|
||||
|
||||
.cpp_qrc.qrc:
|
||||
@RCC@ -o $@ $<
|
||||
.hpp_moc.cpp:
|
||||
@MOC@ -o$@ $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(CPPFLAGS) $(MOC_CPPFLAGS)\
|
||||
$(qt_CPPFLAGS) $(qt_LDFLAGS) $(qt_LIBS) $<
|
||||
|
||||
bin_PROGRAMS = projectM-qt
|
||||
ui_qprojectm_mainwindow.h: qprojectm_mainwindow.ui
|
||||
@UIC@ -o $@ $<
|
||||
|
||||
ui_qpreseteditordialog.h: qpreseteditordialog.ui
|
||||
@UIC@ -o $@ $<
|
||||
|
||||
ui_qprojectmconfigdialog.h: qprojectmconfigdialog.ui
|
||||
@UIC@ -o $@ $<
|
||||
|
||||
projectM_qt_SOURCES = $(projectM_qt_moc_sources) \
|
||||
qprojectm_mainwindow.cpp \
|
||||
qprojectm_mainwindow.hpp \
|
||||
configfile.hpp configfile.cpp \
|
||||
qpresetfiledialog.hpp \
|
||||
qplaylistfiledialog.cpp \
|
||||
qplaylistfiledialog.hpp \
|
||||
qplaylistmodel.cpp \
|
||||
qplaylistmodel.hpp \
|
||||
qxmlplaylisthandler.hpp \
|
||||
qprojectmconfigdialog.cpp \
|
||||
qprojectmconfigdialog.hpp \
|
||||
qplaylisttableview.hpp \
|
||||
qpresettextedit.cpp \
|
||||
qpresettextedit.hpp \
|
||||
qpreseteditordialog.cpp \
|
||||
qpreseteditordialog.hpp \
|
||||
qprojectm.hpp \
|
||||
qprojectmwidget.hpp
|
||||
application_qrc.cpp: application.qrc
|
||||
@RCC@ -o $@ $<
|
||||
|
||||
|
||||
BUILT_SOURCES = \
|
||||
ui_qprojectm_mainwindow.h \
|
||||
ui_qpreseteditordialog.h \
|
||||
ui_qprojectmconfigdialog.h
|
||||
|
||||
noinst_LIBRARIES = libprojectM_qt.a
|
||||
|
||||
libprojectM_qt_a_SOURCES = \
|
||||
$(projectM_qt_moc_sources) \
|
||||
qprojectm_mainwindow.cpp \
|
||||
configfile.hpp configfile.cpp \
|
||||
qplaylistfiledialog.cpp \
|
||||
qplaylistmodel.cpp \
|
||||
qprojectmconfigdialog.cpp \
|
||||
qpresettextedit.cpp \
|
||||
qpreseteditordialog.cpp \
|
||||
application_qrc.cpp \
|
||||
$(test_moc_sources)
|
||||
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-include $(top_builddir)/config.h \
|
||||
-DSYSCONFDIR=\""$(sysconfdir)"\" \
|
||||
-I${top_srcdir}/src/libprojectM \
|
||||
-I${top_srcdir}/src/libprojectM/Renderer \
|
||||
${SDL_CFLAGS}
|
||||
-include $(top_builddir)/config.h \
|
||||
-DSYSCONFDIR=\""$(sysconfdir)"\" \
|
||||
-I${top_srcdir}/src/libprojectM \
|
||||
-I${top_srcdir}/src/libprojectM/Renderer \
|
||||
${QT_CFLAGS} \
|
||||
-fPIC
|
||||
|
||||
AM_CFLAGS = ${my_CFLAGS} \
|
||||
-fvisibility=hidden \
|
||||
-ffunction-sections \
|
||||
-fdata-sections
|
||||
-fvisibility=hidden \
|
||||
-ffunction-sections \
|
||||
-fdata-sections
|
||||
|
||||
CLEANFILES = \
|
||||
application_qrc.cpp \
|
||||
${BUILT_SOURCES} \
|
||||
${projectM_qt_moc_sources}
|
||||
|
||||
@ -1,13 +0,0 @@
|
||||
prefix=@CMAKE_INSTALL_PREFIX@
|
||||
exec_prefix=@CMAKE_INSTALL_PREFIX@
|
||||
libdir=@LIB_INSTALL_DIR@
|
||||
includedir=@CMAKE_INSTALL_PREFIX@/include
|
||||
pkgdatadir=@CMAKE_INSTALL_PREFIX@/share/projectM-qt
|
||||
sysconfdir=@CMAKE_INSTALL_PREFIX@/share/projectM-qt
|
||||
|
||||
Name: libprojectM-qt
|
||||
Version: 1.2.0
|
||||
Description: projectM-qt provides a full featured Qt4 graphical user interface to projectM
|
||||
Requires: libprojectM QtCore QtGui QtXml QtOpenGL
|
||||
+Libs: -L${libdir} -lprojectM-qt
|
||||
+Cflags: -I${includedir}
|
||||
@ -38,6 +38,8 @@
|
||||
#include "nullable.hpp"
|
||||
#include "qprojectmwidget.hpp"
|
||||
|
||||
extern int qInitResources();
|
||||
|
||||
class PlaylistWriteFunctor {
|
||||
public:
|
||||
PlaylistWriteFunctor(const QVector<QProjectM_MainWindow::PlaylistItemMetaData*>::iterator & begin,
|
||||
@ -77,7 +79,7 @@ QProjectM_MainWindow::QProjectM_MainWindow ( const std::string & config_file, QM
|
||||
configDialog(0), hHeader(0), vHeader(0), _menuVisible(true), _menuAndStatusBarsVisible(true),
|
||||
activePresetIndex(new Nullable<long>), playlistItemCounter(0), m_QPresetEditorDialog(0)
|
||||
{
|
||||
|
||||
qInitResources();
|
||||
|
||||
ui = new Ui::QProjectM_MainWindow();
|
||||
ui->setupUi ( this );
|
||||
|
||||
@ -1,12 +0,0 @@
|
||||
SOURCES += qgltest.cpp \
|
||||
main.cpp
|
||||
HEADERS += qgltest.h \
|
||||
QProjectMFileDialog.hpp
|
||||
TEMPLATE = app
|
||||
CONFIG += warn_on \
|
||||
thread \
|
||||
qt
|
||||
TARGET = ../bin/qgltest
|
||||
RESOURCES = application.qrc
|
||||
DISTFILES += ../CMakeLists.txt \
|
||||
CMakeLists.txt
|
||||
Reference in New Issue
Block a user