nexmon – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | # Configure paths for GLIB |
2 | # Owen Taylor 1997-2001 |
||
3 | |||
4 | dnl AM_PATH_GLIB_2_0([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]]) |
||
5 | dnl Test for GLIB, and define GLIB_CFLAGS and GLIB_LIBS, if gmodule, gobject, |
||
6 | dnl gthread, or gio is specified in MODULES, pass to pkg-config |
||
7 | dnl |
||
8 | AC_DEFUN([AM_PATH_GLIB_2_0], |
||
9 | [dnl |
||
10 | dnl Get the cflags and libraries from pkg-config |
||
11 | dnl |
||
12 | AC_ARG_ENABLE(glibtest, [ --disable-glibtest do not try to compile and run a test GLIB program], |
||
13 | , enable_glibtest=yes) |
||
14 | |||
15 | pkg_config_args=glib-2.0 |
||
16 | for module in . $4 |
||
17 | do |
||
18 | case "$module" in |
||
19 | gmodule) |
||
20 | pkg_config_args="$pkg_config_args gmodule-2.0" |
||
21 | ;; |
||
22 | gmodule-no-export) |
||
23 | pkg_config_args="$pkg_config_args gmodule-no-export-2.0" |
||
24 | ;; |
||
25 | gobject) |
||
26 | pkg_config_args="$pkg_config_args gobject-2.0" |
||
27 | ;; |
||
28 | gthread) |
||
29 | pkg_config_args="$pkg_config_args gthread-2.0" |
||
30 | ;; |
||
31 | gio*) |
||
32 | pkg_config_args="$pkg_config_args $module-2.0" |
||
33 | ;; |
||
34 | esac |
||
35 | done |
||
36 | |||
37 | PKG_PROG_PKG_CONFIG([0.16]) |
||
38 | |||
39 | no_glib="" |
||
40 | |||
41 | if test "x$PKG_CONFIG" = x ; then |
||
42 | no_glib=yes |
||
43 | PKG_CONFIG=no |
||
44 | fi |
||
45 | |||
46 | min_glib_version=ifelse([$1], ,2.0.0,$1) |
||
47 | AC_MSG_CHECKING(for GLIB - version >= $min_glib_version) |
||
48 | |||
49 | if test x$PKG_CONFIG != xno ; then |
||
50 | ## don't try to run the test against uninstalled libtool libs |
||
51 | if $PKG_CONFIG --uninstalled $pkg_config_args; then |
||
52 | echo "Will use uninstalled version of GLib found in PKG_CONFIG_PATH" |
||
53 | enable_glibtest=no |
||
54 | fi |
||
55 | |||
56 | if $PKG_CONFIG --atleast-version $min_glib_version $pkg_config_args; then |
||
57 | : |
||
58 | else |
||
59 | no_glib=yes |
||
60 | fi |
||
61 | fi |
||
62 | |||
63 | if test x"$no_glib" = x ; then |
||
64 | GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0` |
||
65 | GOBJECT_QUERY=`$PKG_CONFIG --variable=gobject_query glib-2.0` |
||
66 | GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0` |
||
67 | GLIB_COMPILE_RESOURCES=`$PKG_CONFIG --variable=glib_compile_resources gio-2.0` |
||
68 | |||
69 | GLIB_CFLAGS=`$PKG_CONFIG --cflags $pkg_config_args` |
||
70 | GLIB_LIBS=`$PKG_CONFIG --libs $pkg_config_args` |
||
71 | glib_config_major_version=`$PKG_CONFIG --modversion glib-2.0 | \ |
||
72 | sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` |
||
73 | glib_config_minor_version=`$PKG_CONFIG --modversion glib-2.0 | \ |
||
74 | sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` |
||
75 | glib_config_micro_version=`$PKG_CONFIG --modversion glib-2.0 | \ |
||
76 | sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` |
||
77 | if test "x$enable_glibtest" = "xyes" ; then |
||
78 | ac_save_CFLAGS="$CFLAGS" |
||
79 | ac_save_LIBS="$LIBS" |
||
80 | CFLAGS="$CFLAGS $GLIB_CFLAGS" |
||
81 | LIBS="$GLIB_LIBS $LIBS" |
||
82 | dnl |
||
83 | dnl Now check if the installed GLIB is sufficiently new. (Also sanity |
||
84 | dnl checks the results of pkg-config to some extent) |
||
85 | dnl |
||
86 | rm -f conf.glibtest |
||
87 | AC_TRY_RUN([ |
||
88 | #include <glib.h> |
||
89 | #include <stdio.h> |
||
90 | #include <stdlib.h> |
||
91 | |||
92 | int |
||
93 | main () |
||
94 | { |
||
95 | unsigned int major, minor, micro; |
||
96 | |||
97 | fclose (fopen ("conf.glibtest", "w")); |
||
98 | |||
99 | if (sscanf("$min_glib_version", "%u.%u.%u", &major, &minor, µ) != 3) { |
||
100 | printf("%s, bad version string\n", "$min_glib_version"); |
||
101 | exit(1); |
||
102 | } |
||
103 | |||
104 | if ((glib_major_version != $glib_config_major_version) || |
||
105 | (glib_minor_version != $glib_config_minor_version) || |
||
106 | (glib_micro_version != $glib_config_micro_version)) |
||
107 | { |
||
108 | printf("\n*** 'pkg-config --modversion glib-2.0' returned %d.%d.%d, but GLIB (%d.%d.%d)\n", |
||
109 | $glib_config_major_version, $glib_config_minor_version, $glib_config_micro_version, |
||
110 | glib_major_version, glib_minor_version, glib_micro_version); |
||
111 | printf ("*** was found! If pkg-config was correct, then it is best\n"); |
||
112 | printf ("*** to remove the old version of GLib. You may also be able to fix the error\n"); |
||
113 | printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n"); |
||
114 | printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n"); |
||
115 | printf("*** required on your system.\n"); |
||
116 | printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n"); |
||
117 | printf("*** to point to the correct configuration files\n"); |
||
118 | } |
||
119 | else if ((glib_major_version != GLIB_MAJOR_VERSION) || |
||
120 | (glib_minor_version != GLIB_MINOR_VERSION) || |
||
121 | (glib_micro_version != GLIB_MICRO_VERSION)) |
||
122 | { |
||
123 | printf("*** GLIB header files (version %d.%d.%d) do not match\n", |
||
124 | GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION, GLIB_MICRO_VERSION); |
||
125 | printf("*** library (version %d.%d.%d)\n", |
||
126 | glib_major_version, glib_minor_version, glib_micro_version); |
||
127 | } |
||
128 | else |
||
129 | { |
||
130 | if ((glib_major_version > major) || |
||
131 | ((glib_major_version == major) && (glib_minor_version > minor)) || |
||
132 | ((glib_major_version == major) && (glib_minor_version == minor) && (glib_micro_version >= micro))) |
||
133 | { |
||
134 | return 0; |
||
135 | } |
||
136 | else |
||
137 | { |
||
138 | printf("\n*** An old version of GLIB (%u.%u.%u) was found.\n", |
||
139 | glib_major_version, glib_minor_version, glib_micro_version); |
||
140 | printf("*** You need a version of GLIB newer than %u.%u.%u. The latest version of\n", |
||
141 | major, minor, micro); |
||
142 | printf("*** GLIB is always available from ftp://ftp.gtk.org.\n"); |
||
143 | printf("***\n"); |
||
144 | printf("*** If you have already installed a sufficiently new version, this error\n"); |
||
145 | printf("*** probably means that the wrong copy of the pkg-config shell script is\n"); |
||
146 | printf("*** being found. The easiest way to fix this is to remove the old version\n"); |
||
147 | printf("*** of GLIB, but you can also set the PKG_CONFIG environment to point to the\n"); |
||
148 | printf("*** correct copy of pkg-config. (In this case, you will have to\n"); |
||
149 | printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); |
||
150 | printf("*** so that the correct libraries are found at run-time))\n"); |
||
151 | } |
||
152 | } |
||
153 | return 1; |
||
154 | } |
||
155 | ],, no_glib=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) |
||
156 | CFLAGS="$ac_save_CFLAGS" |
||
157 | LIBS="$ac_save_LIBS" |
||
158 | fi |
||
159 | fi |
||
160 | if test "x$no_glib" = x ; then |
||
161 | AC_MSG_RESULT(yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)) |
||
162 | ifelse([$2], , :, [$2]) |
||
163 | else |
||
164 | AC_MSG_RESULT(no) |
||
165 | if test "$PKG_CONFIG" = "no" ; then |
||
166 | echo "*** A new enough version of pkg-config was not found." |
||
167 | echo "*** See http://www.freedesktop.org/software/pkgconfig/" |
||
168 | else |
||
169 | if test -f conf.glibtest ; then |
||
170 | : |
||
171 | else |
||
172 | echo "*** Could not run GLIB test program, checking why..." |
||
173 | ac_save_CFLAGS="$CFLAGS" |
||
174 | ac_save_LIBS="$LIBS" |
||
175 | CFLAGS="$CFLAGS $GLIB_CFLAGS" |
||
176 | LIBS="$LIBS $GLIB_LIBS" |
||
177 | AC_TRY_LINK([ |
||
178 | #include <glib.h> |
||
179 | #include <stdio.h> |
||
180 | ], [ return ((glib_major_version) || (glib_minor_version) || (glib_micro_version)); ], |
||
181 | [ echo "*** The test program compiled, but did not run. This usually means" |
||
182 | echo "*** that the run-time linker is not finding GLIB or finding the wrong" |
||
183 | echo "*** version of GLIB. If it is not finding GLIB, you'll need to set your" |
||
184 | echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" |
||
185 | echo "*** to the installed location Also, make sure you have run ldconfig if that" |
||
186 | echo "*** is required on your system" |
||
187 | echo "***" |
||
188 | echo "*** If you have an old version installed, it is best to remove it, although" |
||
189 | echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" ], |
||
190 | [ echo "*** The test program failed to compile or link. See the file config.log for the" |
||
191 | echo "*** exact error that occured. This usually means GLIB is incorrectly installed."]) |
||
192 | CFLAGS="$ac_save_CFLAGS" |
||
193 | LIBS="$ac_save_LIBS" |
||
194 | fi |
||
195 | fi |
||
196 | GLIB_CFLAGS="" |
||
197 | GLIB_LIBS="" |
||
198 | GLIB_GENMARSHAL="" |
||
199 | GOBJECT_QUERY="" |
||
200 | GLIB_MKENUMS="" |
||
201 | GLIB_COMPILE_RESOURCES="" |
||
202 | ifelse([$3], , :, [$3]) |
||
203 | fi |
||
204 | AC_SUBST(GLIB_CFLAGS) |
||
205 | AC_SUBST(GLIB_LIBS) |
||
206 | AC_SUBST(GLIB_GENMARSHAL) |
||
207 | AC_SUBST(GOBJECT_QUERY) |
||
208 | AC_SUBST(GLIB_MKENUMS) |
||
209 | AC_SUBST(GLIB_COMPILE_RESOURCES) |
||
210 | rm -f conf.glibtest |
||
211 | ]) |