4 exec_prefix
="@exec_prefix@"
6 datarootdir
="@datarootdir@"
15 builtins
="@BUILTINS@ "
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
36 Usage: vlc-config OPTIONS MODULES
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
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.)
76 if test $# -eq 0; then
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}"
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 # Gettext, data and plugin location
105 cppflags
="${cppflags} -DLOCALEDIR=\"@datadir@/locale\""
106 cppflags
="${cppflags} -DPLUGIN_PATH=\"@libdir@/vlc\""
109 # Various additional defines
111 if [ "${debug}" = yes ]; then
112 cppflags
="${cppflags} -DDEBUG"
113 cflags
="${cflags} -g"
114 cxxflags
="${cxxflags} -g"
115 objcflags
="${objcflags} -g"
116 ldflags
="${ldflags} -g"
118 if [ "${cprof}" = yes ]; then
119 cppflags
="${cppflags} -DCPROF"
120 cflags
="${cflags} -finstrument-functions"
121 cxxflags
="${cxxflags} -finstrument-functions"
122 objcflags
="${objcflags} -finstrument-functions"
124 if [ "${gprof}" = yes ]; then
125 cppflags
="${cppflags} -DGPROF"
126 cflags
="${cflags} -pg"
127 cxxflags
="${cxxflags} -pg"
128 objcflags
="${objcflags} -pg"
129 ldflags
="${ldflags} -pg"
131 if [ "${release}" = yes ]; then
132 cppflags
="${cppflags} -DHAVE_RELEASE"
134 if [ "${optim}" = size
]; then
135 cflags
="${cflags} ${cflags_optim_size} ${cflags_tuning}"
136 cxxflags
="${cxxflags} ${cflags_optim_size} ${cflags_tuning}"
137 objcflags
="${objcflags} ${cflags_optim_size} ${cflags_tuning}"
138 if [ "${debug}" != yes -a "${gprof}" != yes -a "${cprof}" != yes ]; then
139 cflags
="${cflags} ${cflags_optim_nodebug}"
140 cxxflags
="${cxxflags} ${cflags_optim_nodebug}"
141 objcflags
="${objcflags} ${cflags_optim_nodebug}"
143 elif [ "${optim}" = speed
]; then
144 cflags
="${cflags} ${cflags_optim_speed} ${cflags_tuning}"
145 cxxflags
="${cxxflags} ${cflags_optim_speed} ${cflags_tuning}"
146 objcflags
="${objcflags} ${cflags_optim_speed} ${cflags_tuning}"
147 if [ "${debug}" != yes -a "${gprof}" != yes -a "${cprof}" != yes ]; then
148 cflags
="${cflags} ${cflags_optim_nodebug}"
149 cxxflags
="${cxxflags} ${cflags_optim_nodebug}"
150 objcflags
="${objcflags} ${cflags_optim_nodebug}"
153 cflags
="${cflags} ${cflags_nooptim}"
154 cxxflags
="${cxxflags} ${cflags_nooptim}"
155 objcflags
="${objcflags} ${cflags_nooptim}"
159 # The main argument loop
161 while test $# -gt 0; do
163 -*=*) optarg
=`echo "$1" | sed 's/-[_a-zA-Z0-9\-]*=//'` ;;
170 if test "${exec_prefix_set}" = no
; then
171 exec_prefix
="${optarg}"
178 exec_prefix
="${optarg}"
219 cppflags
="${cppflags} -D__LIBVLC__ -I${top_builddir}src/misc"
223 cppflags
="${cppflags} -D__LIBVLC__ -D__PLUGIN__"
227 cppflags
="${cppflags} -D__LIBVLC__ -D__BUILTIN__"
235 libs
="${libs} -lvlc -lvlc-control"
242 # Register per-module *FLAGS
245 # Register module targets
246 register_targets
"$1"
252 # If a module was requested, use its name
254 if test -n "${module}"; then
255 cppflags
="${cppflags} -DMODULE_NAME=${module} -DMODULE_NAME_IS_${module}"
259 # Output what we were asked
261 if test "${echo_linkage}" = yes; then
262 if test "${echo_plugin}" = yes; then
263 for module
in `echo "${plugins}"`; do
264 register_flags
"${module}"
267 if test "${echo_builtin}" = yes; then
268 for module
in `echo "${builtins}"`; do
269 register_flags
"${module}"
276 if test "${echo_target}" = yes; then
277 if test "${echo_plugin}" = yes; then
278 for module
in `echo "${plugins}"`; do
279 register_targets
"${module}"
281 for target
in `echo "${list}"`; do printf "${top_builddir}modules/${target}_plugin "; done
284 if test "${echo_builtin}" = yes; then
285 for module in `echo "${builtins}"`; do
286 register_targets "${module}"
288 for target in `echo "${list}"`; do printf "${top_builddir}modules/${target}.a "; done
294 if test "${echo_list}" = yes; then
295 if test "${echo_plugin}" = yes; then
299 if test "${echo_builtin}" = yes; then
306 if test "${echo_prefix}" = yes; then
309 if test "${echo_exec_prefix}" = yes; then
310 echo "${exec_prefix}"
312 if test "${echo_cppflags}" = yes; then
315 if test "${echo_cflags}" = yes; then
316 echo "${cppflags} ${cflags}"
318 if test "${echo_cxxflags}" = yes; then
319 echo "${cppflags} ${cxxflags}"
321 if test "${echo_objcflags}" = yes; then
322 echo "${cppflags} ${objcflags}"
324 if test "${echo_ldflags}" = yes; then
329 # There are 4 possibilities
330 # - We are a plugin or a builtin
331 # - We are building from the outside (external):
332 # - Give full libvlc linkflags + -lvlc (in libdir)
333 # - Link with builtins in libdir
334 # - We are building something from the inside (builtin)
335 # - Link with builtins in place
336 # If you want something shared from the inside (binding),
337 # you need "builtin vlc"
338 if test "${echo_libs}" = yes; then
339 if test "${echo_builtin}" = yes; then
340 for module
in `echo "${builtins}"`; do
341 register_targets
"${module}"
342 register_flags
"${module}"
344 for target
in `echo "${list}"`; do printf "${top_builddir}modules/${target}.a "; done
346 if test "${echo_external}" = yes; then
347 for module in `echo "${builtins}"`; do
348 libs="${libs} @libdir@/vlc/lib${module}.a"
350 for module in `echo "${builtins}"`; do
351 register_flags "${module}"