loader: Upgrade pop/push pack headers from latest wine git to fix compilation on...
[vlc/vlc-acra.git] / vlc-config.in.in
blob6c95b4605e0e0ca241244818b03950ddb383cfd2
1 #!/bin/sh
3 prefix="@prefix@"
4 exec_prefix="@exec_prefix@"
5 exec_prefix_set=no
6 datarootdir="@datarootdir@"
8 release="@release@"
9 debug="@debug@"
10 gprof="@gprof@"
11 cprof="@cprof@"
12 optim="@optim@"
14 plugins="@PLUGINS@ "
15 builtins="@BUILTINS@ "
17 cppflags=""
18 cflags=""
19 cxxflags=""
20 objcflags=""
21 ldflags=""
22 libs=""
24 cflags_tuning="@CFLAGS_TUNING@"
25 cflags_optim_size="@CFLAGS_OPTIM_SIZE@"
26 cflags_optim_speed="@CFLAGS_OPTIM_SPEED@"
27 cflags_optim_nodebug="@CFLAGS_OPTIM_NODEBUG@"
28 cflags_nooptim="@CFLAGS_NOOPTIM@"
31 # Do not touch below this place unless you really know what you are doing
33 usage()
35 cat << BLAH
36 Usage: vlc-config OPTIONS MODULES
37 Options:
38 [--prefix[=DIR]] set prefix
39 [--exec-prefix[=DIR]] set exec prefix
40 [--version] print version and exit
41 [--linkage] print linkage mode (c, c++, objc)
42 [--target] print targets and exit
43 [--list] print modules names and exit
44 [--libs] output linking flags
45 [--cflags] output C compilation flags
46 [--cxxflags] output C++ compilation flags
47 [--objcflags] output Objective C compilation flags
48 Modules:
49 vlc the main VLC object
50 plugin flags for plugin modules
51 builtin flags for built-in modules
52 pic flags for PIC code
53 MODULE any available module (dummy, gtk, avi, etc.)
54 BLAH
55 exit $1
58 register_flags()
60 case "$1" in
61 #@1@#
64 esac
67 register_targets()
69 case "$1" in
70 #@2@#
73 esac
76 if test $# -eq 0; then
77 usage 1 1>&2
81 # No need to include the default @*FLAGS@ values here because they are
82 # automatically added when using $(COMPILE), $(CXXCOMPILE) or $(OBJCCOMPILE)
84 if test "@includedir@" != "/usr/include"; then
85 includes="-I@includedir@"
87 if test "${top_builddir}" != ""; then
88 top_builddir="${top_builddir}/"
89 elif test "${TOP_BUILDDIR}" != ""; then
90 top_builddir="${TOP_BUILDDIR}/"
92 includes="${includes}"
93 cppflags="${includes}"
94 module=""
95 linkage="c"
98 # On Linux and Solaris, activate 64-bit off_t (by default under BSD)
100 cppflags="${cppflags} -D_FILE_OFFSET_BITS=64 -D__USE_UNIX98 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE"
103 # Various additional defines
105 if [ "${debug}" = yes ]; then
106 cppflags="${cppflags} -DDEBUG"
107 cflags="${cflags} -g"
108 cxxflags="${cxxflags} -g"
109 objcflags="${objcflags} -g"
110 ldflags="${ldflags} -g"
112 if [ "${cprof}" = yes ]; then
113 cppflags="${cppflags} -DCPROF"
114 cflags="${cflags} -finstrument-functions"
115 cxxflags="${cxxflags} -finstrument-functions"
116 objcflags="${objcflags} -finstrument-functions"
118 if [ "${gprof}" = yes ]; then
119 cppflags="${cppflags} -DGPROF"
120 cflags="${cflags} -pg"
121 cxxflags="${cxxflags} -pg"
122 objcflags="${objcflags} -pg"
123 ldflags="${ldflags} -pg"
125 if [ "${release}" = yes ]; then
126 cppflags="${cppflags} -DHAVE_RELEASE"
128 if [ "${optim}" = size ]; then
129 cflags="${cflags} ${cflags_optim_size} ${cflags_tuning}"
130 cxxflags="${cxxflags} ${cflags_optim_size} ${cflags_tuning}"
131 objcflags="${objcflags} ${cflags_optim_size} ${cflags_tuning}"
132 if [ "${debug}" != yes -a "${gprof}" != yes -a "${cprof}" != yes ]; then
133 cflags="${cflags} ${cflags_optim_nodebug}"
134 cxxflags="${cxxflags} ${cflags_optim_nodebug}"
135 objcflags="${objcflags} ${cflags_optim_nodebug}"
137 elif [ "${optim}" = speed ]; then
138 cflags="${cflags} ${cflags_optim_speed} ${cflags_tuning}"
139 cxxflags="${cxxflags} ${cflags_optim_speed} ${cflags_tuning}"
140 objcflags="${objcflags} ${cflags_optim_speed} ${cflags_tuning}"
141 if [ "${debug}" != yes -a "${gprof}" != yes -a "${cprof}" != yes ]; then
142 cflags="${cflags} ${cflags_optim_nodebug}"
143 cxxflags="${cxxflags} ${cflags_optim_nodebug}"
144 objcflags="${objcflags} ${cflags_optim_nodebug}"
146 else
147 cflags="${cflags} ${cflags_nooptim}"
148 cxxflags="${cxxflags} ${cflags_nooptim}"
149 objcflags="${objcflags} ${cflags_nooptim}"
153 # The main argument loop
155 while test $# -gt 0; do
156 case "$1" in
157 -*=*) optarg=`echo "$1" | sed 's/-[_a-zA-Z0-9\-]*=//'` ;;
158 *) optarg= ;;
159 esac
161 case "$1" in
162 --prefix=*)
163 prefix="${optarg}"
164 if test "${exec_prefix_set}" = no ; then
165 exec_prefix="${optarg}"
168 --prefix)
169 echo_prefix=yes
171 --exec-prefix=*)
172 exec_prefix="${optarg}"
173 exec_prefix_set=yes
175 --exec-prefix)
176 echo_exec_prefix=yes
178 --version)
179 echo "@VERSION@"
180 exit 0
182 --linkage)
183 echo_linkage=yes
185 --target)
186 echo_target=yes
188 --list)
189 echo_list=yes
191 --cflags)
192 echo_cflags=yes
194 --cppflags)
195 echo_cppflags=yes
197 --cxxflags)
198 echo_cxxflags=yes
200 --objcflags)
201 echo_objcflags=yes
203 --ldflags)
204 echo_ldflags=yes
206 --libs|-libs)
207 echo_libs=yes
210 usage 1 1>&1
212 libvlc)
213 cppflags="${cppflags} -D__LIBVLC__ -I${top_builddir}src/misc"
215 plugin)
216 echo_plugin=yes
217 cppflags="${cppflags} -D__LIBVLC__ -D__PLUGIN__"
219 builtin)
220 echo_builtin=yes
221 cppflags="${cppflags} -D__LIBVLC__ -D__BUILTIN__"
223 pic)
225 mozilla)
227 external)
228 echo_external=yes
229 libs="${libs} -lvlc -lvlc-control"
232 module="$1"
234 esac
236 # Register per-module *FLAGS
237 register_flags "$1"
239 # Register module targets
240 register_targets "$1"
242 shift
243 done
246 # If a module was requested, use its name
248 if test -n "${module}"; then
249 cppflags="${cppflags} -DMODULE_NAME=${module} -DMODULE_NAME_IS_${module}"
253 # Output what we were asked
255 if test "${echo_linkage}" = yes; then
256 if test "${echo_plugin}" = yes; then
257 for module in `echo "${plugins}"`; do
258 register_flags "${module}"
259 done
261 if test "${echo_builtin}" = yes; then
262 for module in `echo "${builtins}"`; do
263 register_flags "${module}"
264 done
266 echo "${linkage}"
267 exit 0
270 if test "${echo_target}" = yes; then
271 if test "${echo_plugin}" = yes; then
272 for module in `echo "${plugins}"`; do
273 register_targets "${module}"
274 done
275 for target in `echo "${list}"`; do printf "${top_builddir}modules/${target}_plugin "; done
276 printf '\n'
278 if test "${echo_builtin}" = yes; then
279 for module in `echo "${builtins}"`; do
280 register_targets "${module}"
281 done
282 for target in `echo "${list}"`; do printf "${top_builddir}modules/${target}.a "; done
283 printf '\n'
285 exit 0
288 if test "${echo_list}" = yes; then
289 if test "${echo_plugin}" = yes; then
290 echo "${plugins}"
291 printf '\n'
293 if test "${echo_builtin}" = yes; then
294 echo "${builtins}"
295 printf '\n'
297 exit 0
300 if test "${echo_prefix}" = yes; then
301 echo "${prefix}"
303 if test "${echo_exec_prefix}" = yes; then
304 echo "${exec_prefix}"
306 if test "${echo_cppflags}" = yes; then
307 echo "${cppflags}"
309 if test "${echo_cflags}" = yes; then
310 echo "${cppflags} ${cflags}"
312 if test "${echo_cxxflags}" = yes; then
313 echo "${cppflags} ${cxxflags}"
315 if test "${echo_objcflags}" = yes; then
316 echo "${cppflags} ${objcflags}"
318 if test "${echo_ldflags}" = yes; then
319 echo "${ldflags}"
322 # Libs
323 # There are 4 possibilities
324 # - We are a plugin or a builtin
325 # - We are building from the outside (external):
326 # - Give full libvlc linkflags + -lvlc (in libdir)
327 # - Link with builtins in libdir
328 # - We are building something from the inside (builtin)
329 # - Link with builtins in place
330 # If you want something shared from the inside (binding),
331 # you need "builtin vlc"
332 if test "${echo_libs}" = yes; then
333 if test "${echo_builtin}" = yes; then
334 for module in `echo "${builtins}"`; do
335 register_targets "${module}"
336 register_flags "${module}"
337 done
338 for target in `echo "${list}"`; do printf "${top_builddir}modules/${target}.a "; done
340 if test "${echo_external}" = yes; then
341 for module in `echo "${builtins}"`; do
342 libs="${libs} @libdir@/vlc/lib${module}.a"
343 done
344 for module in `echo "${builtins}"`; do
345 register_flags "${module}"
346 done
347 register_flags "vlc"
349 echo "${libs}"