1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
From 72f017641cf7acdb1d3caf408bbcdaec39de8ce3 Mon Sep 17 00:00:00 2001
From: Tomas Chvatal <tchvatal@suse.cz>
Date: Sat, 23 Feb 2013 11:21:44 +0100
Subject: [PATCH] Allow usage of system ProjectM
Conflicts:
configure.in
---
configure.in | 45 ++++++++++++++++++++++++----
xbmc/visualizations/XBMCProjectM/Makefile.in | 12 ++++----
2 files changed, 45 insertions(+), 12 deletions(-)
diff --git a/configure.in b/configure.in
index 78104ad..296eb4d 100644
--- a/configure.in
+++ b/configure.in
@@ -302,9 +302,15 @@ AC_ARG_ENABLE([rsxs],
AC_ARG_ENABLE([projectm],
[AS_HELP_STRING([--enable-projectm],
- [enable ProjectM visualisation (default is yes)])],
+ [enable ProjectM visualisation (default is auto)])],
[use_projectm=$enableval],
- [use_projectm=yes])
+ [use_projectm=auto])
+
+AC_ARG_WITH([projectm-presets-dir],
+ [AS_HELP_STRING([--with-projectm-presets-dir],
+ [path to ProjectM presets to incude in default list (default is bundled path)])],
+ [projectm_presets_dir=$withval],
+ [projectm_presets_dir=bundled])
AC_ARG_ENABLE([x11],
[AS_HELP_STRING([--enable-x11],
@@ -1257,9 +1263,38 @@ fi
if test "$use_projectm" = "no" || test "$use_gl" = "no"; then
AC_MSG_NOTICE($projectm_disabled)
DISABLE_PROJECTM=1
+ DISABLE_INTERNAL_PROJECTM=1
else
- AC_MSG_NOTICE($projectm_enabled)
- DISABLE_PROJECTM=0
+ if test "$host_vendor" != "apple" ; then
+ if test "$use_projectm" = "yes"; then
+ PKG_CHECK_MODULES([PROJECTM],[libprojectM],,[use_projectm="no";AC_MSG_ERROR([$projectm_disabled])])
+ else
+ PKG_CHECK_MODULES([PROJECTM],[libprojectM],,[use_projectm="no";AC_MSG_RESULT([$projectm_disabled])])
+ fi
+ if test "$use_projectm" != "no"; then
+ INCLUDES="$INCLUDES $PROJECTM_CFLAGS";LIBS="$LIBS $PROJECTM_LIBS"
+ fi
+ DISABLE_INTERNAL_PROJECTM=1
+ else
+ DISABLE_INTERNAL_PROJECTM=0
+ fi
+ if test "$use_projectm" != "no"; then
+ AC_MSG_NOTICE($projectm_enabled)
+ DISABLE_PROJECTM=0
+ # verify preset dir actually exist if user don't want to use bundled one
+ if test "$projectm_presets_dir" != "bundled" ; then
+ if ! test -d "$projectm_presets_dir"; then
+ AC_MSG_ERROR([$projectm_presets_dir is not existing directory])
+ fi
+ PROJECTM_PRESETS_DIR=$projectm_presets_dir
+ else
+ PROJECTM_PRESETS_DIR=libprojectM/presets/
+ fi
+ AC_SUBST(PROJECTM_PRESETS_DIR)
+ else
+ AC_MSG_NOTICE($projectm_disabled)
+ DISABLE_PROJECTM=1
+ fi
fi
# skin touched
@@ -2661,7 +2696,7 @@ XB_CONFIG_MODULE([xbmc/visualizations/XBMCProjectM/libprojectM],[
sed -ie "s|-I/opt/local/include| |" CMakeFiles/projectM.dir/flags.make
fi
set +x
-], [$DISABLE_PROJECTM])
+], [$DISABLE_INTERNAL_PROJECTM])
XB_CONFIG_MODULE([xbmc/visualizations/Goom/goom2k4-0],[
./configure \
diff --git a/xbmc/visualizations/XBMCProjectM/Makefile.in b/xbmc/visualizations/XBMCProjectM/Makefile.in
index 249338c..2c16306 100644
--- a/xbmc/visualizations/XBMCProjectM/Makefile.in
+++ b/xbmc/visualizations/XBMCProjectM/Makefile.in
@@ -18,16 +18,14 @@ $(SLIB): $(OBJS) libprojectM/libprojectM.dylib
libprojectM/libprojectM.dylib:
$(MAKE) -C libprojectM
else
-$(SLIB): $(OBJS) libprojectM/libprojectM.so
- $(CXX) $(CXXFLAGS) $(LDFLAGS) ./libprojectM/CMakeFiles/projectM.dir/*.o -fPIC -shared -o $(SLIB) $(OBJS) `cat @abs_top_srcdir@/xbmc/cores/DllLoader/exports/wrapper.def` @abs_top_srcdir@/xbmc/cores/DllLoader/exports/wrapper.o
+$(SLIB): $(OBJS)
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -fPIC -shared $(OBJS) `cat @abs_top_srcdir@/xbmc/cores/DllLoader/exports/wrapper.def` @abs_top_srcdir@/xbmc/cores/DllLoader/exports/wrapper.o -o $(SLIB)
$(MAKE) $(PRESETS)
-
-libprojectM/libprojectM.so:
- $(MAKE) -C libprojectM
endif
-$(PRESETS): libprojectM/presets/*
- zip -j $@ libprojectM/presets/*
+$(PRESETS):
+ zip -j $@ @PROJECTM_PRESETS_DIR@/*
+
CLEAN_FILES = \
libprojectM/libprojectM.so \
--
1.8.1.5
|