fixed return types for ::on_....; changed set_usize_... utility functions to set_size...
[ardour.git] / libs / pbd3 / pbd-config.in
1 #!/bin/sh
2
3 af_libs=
4 af_cflags=
5 prefix=@prefix@
6 exec_prefix=@exec_prefix@
7
8
9 ##
10 ## Define usage()
11 ##
12 usage()
13 {
14         cat <<EOF
15 Usage: pbd-config [OPTIONS] [LIBRARIES]
16 Options:
17   --cflags      print pre-processor and compiler flags
18   --libs        print library linking information
19   --libs-dirs   only print the -L/-R part of --libs
20   --libs-names  only print the -l part of --libs
21   --help        display this help and exit
22   --macros      print the path to m4 macros
23
24   --prefix[=DIR] 
25   --exec_prefix[=DIR] 
26   --version     output pbd version information
27 Libraries:
28          pbd
29 EOF
30         exit $1
31 }
32
33 ##
34 ## Process options
35 ##
36 parse()
37 {
38 # we must be called with at least one argument
39 if test $# -eq 0; then
40         usage 1 1>&2
41 fi
42
43 # at least one option should be selected
44 case "$1" in
45   --*)
46      ;;
47   *)
48      usage 1 1>&2
49      ;;
50 esac
51
52 # grab all -- arguments
53 while test $# -gt 0; do
54   case "$1" in
55   -*=*) af_optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
56   *) af_optarg= ;;
57   esac
58
59   case $1 in
60     --help)
61       usage 0 0>&2
62       ;;
63     --cflags)
64       af_echo_cflags=yes
65       ;;
66     --libs)
67       af_echo_libs_L=yes
68       af_echo_libs_l=yes
69       ;;
70     --libs-dirs)
71       af_echo_libs_L=yes
72       ;;
73     --libs-names)
74       af_echo_libs_l=yes
75       ;;
76     --macros*)
77
78 echo -I @prefix@/include/pbd/macros
79 exit
80
81       ;;
82     --prefix=*)
83       prefix=$af_optarg
84       af_prefix_set=yes
85       ;;
86     --prefix)
87       af_echo_prefix=yes
88       ;;
89     --exec_prefix=*)
90       exec_prefix=$af_optarg
91       af_exec_prefix_set=yes
92       ;;
93     --exec_prefix)
94       af_echo_exec_prefix=yes
95       ;;
96     --version)
97       af_echo_version=yes
98       ;;
99     --*)
100       usage 1 1>&2
101       ;;
102     *)
103       break
104       ;;
105   esac
106   shift
107 done
108
109 # if we have a default library use it
110 if test $# -eq 0; then
111 if test "X$af_lib_default" != "X"; then
112   af_lib__AF_LIB_DEFAULT=yes
113   return
114 fi
115 fi
116
117 while test $# -gt 0; do
118   case $1 in
119     pbd)
120       af_lib_pbd=yes
121       ;;
122     *)
123       usage 1 1>&2
124       ;;
125   esac
126   shift
127 done
128 }
129
130 print_result()
131 {
132 if test "X$af_echo_cflags" = "Xyes"; then
133     af_all_flags="$af_cflags"
134 fi
135
136 if test "X$af_echo_libs_L" = "Xyes" || test "X$af_echo_libs_l" = "Xyes"; then
137     af_all_flags="$af_all_flags $af_libs"
138 fi
139
140 if test -z "$af_all_flags" || test "X$af_all_flags" = "X "; then
141     exit 1
142 fi
143
144 # Straight out any possible duplicates, but be careful to
145 # get `-lfoo -lbar -lbaz' for `-lfoo -lbaz -lbar -lbaz'
146 af_other_flags=
147 af_lib_L_flags=
148 af_rev_libs=
149 for i in $af_all_flags; do
150     case "$i" in
151     # a library, save it for later, in reverse order
152     -l*) af_rev_libs="$i $af_rev_libs" ;;
153     -L*|-R*)
154         if test "X$af_echo_libs_L" = "Xyes"; then
155             case " $af_lib_L_flags " in
156             *\ $i\ *) ;;                              # already there
157             *) af_lib_L_flags="$af_lib_L_flags $i" ;; # add it to output
158             esac 
159         fi;;
160     *)
161         case " $af_other_flags " in
162         *\ $i\ *) ;;                                  # already there
163         *) af_other_flags="$af_other_flags $i" ;;     # add it to output
164         esac ;;
165     esac
166 done
167
168 af_ord_libs=
169 if test "X$af_echo_libs_l" = "Xyes"; then
170     for i in $af_rev_libs; do
171         case " $af_ord_libs " in
172         *\ $i\ *) ;;                          # already there
173         *) af_ord_libs="$i $af_ord_libs" ;;   # add it to output in reverse order
174         esac
175     done
176 fi
177
178 echo $af_other_flags $af_lib_L_flags $af_ord_libs
179 }
180
181 ##
182 ## Main Body
183 ##
184
185 parse $*
186
187
188 ##
189 ## Initialize names
190 ##
191
192
193
194
195
196 if test "X$af_echo_prefix" = "Xyes"; then
197         echo $prefix
198 fi
199
200 if test "X$af_echo_exec_prefix" = "Xyes"; then
201         echo $exec_prefix
202 fi
203
204 if test "X$af_echo_version" = "Xyes"; then
205         echo @LIBPBD_VERSION@
206         exit 0
207 fi
208
209
210 ##
211 ## Libraries
212 ##
213
214 #dummy because this should always be selected
215
216
217 if test "@includedir@" != /usr/include ; then
218   includes="-I@includedir@"
219 fi
220 if test "@libdir@" != /usr/lib ; then
221   libs="-L@libdir@"
222 fi
223 af_cflags="$af_cflags $includes @SIGC_CFLAGS@"
224 af_libs="$libs -lpbd @PBD_LIBS@ $af_libs"
225
226
227
228
229 print_result
230
231 exit 0
232