1echo '************************ xffm.org ************************************'
2# --with-core is default for RCx, but should be off for final release.
3#m4_define([tag], [Core])
4
5AC_PREREQ([2.63])
6
7#m4_define([vers], [5.1.3-10])
8m4_define([vers], [5.3.16.3])
9m4_define([librfm_vers], [5.3.16.3])
10m4_define([libdbh_file_compatibility], ["DBH_2.0/64bit"])
11m4_define([package], [rodent-iconmgr])
12m4_define([bugreport], [https://sourceforge.net/p/xffm/bugs/milestone/rodent-fgr/])
13m4_define([bugmail], ["https://sourceforge.net/p/xffm/bugs/milestone/rodent-fgr/"])
14m4_define([package_copyright], ["Copyright (c) 2000-2014 Edscott Wilson Garcia. <edscott@users.sf.net>"])
15m4_define([summary],["Advanced user icontheme manager"])
16m4_define([description],["Advanced user icon theme manager"])
17m4_define([homepage],["http://xffm.org/rodent-iconmgr.html"])
18m4_define([tarball],[package()-vers().tar.gz])
19#
20m4_define([master_site],[http://sourceforge.net/projects/xffm/files])
21m4_define([src_uri],[master_site()/vers()/tarball()])
22m4_define([license],["  GNU General Public License version 3  "])
23
24AC_COPYRIGHT([package_copyright()])
25#AC_DEFINE([COPYRIGHT],[package_copyright()],[Copyright information])
26#AUTOMAKE_OPTIONS=dist-bzip2
27#AC_INIT([Rodent],[vers()],[bugreport()],[package()],[homepage()])
28AC_INIT([package()],[vers],[bugreport],[package],[homepage])
29AC_CONFIG_MACRO_DIR([m4])
30LT_INIT(disable-static)
31AC_ARG_WITH(centos, [AC_HELP_STRING([--with-centos], [Create CentOS spec file instead of the default OpenSUSE spec file (packagers only)])])
32AC_SUBST(RPM_COMMENT)
33AC_SUBST([RPM_LICENSE])
34AC_SUBST([RPM_GROUP])
35AC_SUBST([RPM_FDUPES_REQUIRES])
36AC_SUBST([RPM_UDF_REQUIRES])
37
38if test "$with_centos" = "yes"; then
39    RPM_COMMENT="# RPM spec file for RedHat CentOS created by configure script."
40    RPM_LICENSE="GPLv3"
41    RPM_GROUP="General Purpose Desktop"
42    RPM_FDUPES_REQUIRES=
43    RPM_UDF_REQUIRES=
44else
45dnl These are the default OpenSUSE values.
46    RPM_COMMENT="# RPM spec file for SUSE OpenSUSE created by configure script."
47    RPM_LICENSE="GPL-3.0"
48    RPM_GROUP="System/GUI/Other"
49    RPM_FDUPES_REQUIRES="BuildRequires: fdupes"
50    RPM_UDF_REQUIRES="BuildRequires: update-desktop-files"
51fi
52
53
54
55AC_DEFINE(_GNU_SOURCE,[1],[Use GNU extensions if available])
56AC_SUBST([_GNU_SOURCE])
57AC_DEFINE([COPYRIGHT],[package_copyright()],[Copyright information])
58AC_SUBST([COPYRIGHT])
59AC_DEFINE([PACKAGE_COPYRIGHT],[package_copyright()],[Package copyright])
60AC_SUBST([PACKAGE_COPYRIGHT])
61
62AC_MSG_NOTICE([*** *** You may download librfm from http://sf.net/projects/xffm/files *** ***])
63XDT_CHECK_PACKAGE([LIBRFM], [librfm], [librfm_vers])
64
65
66# check for libzip
67AC_SUBST(GTK_VERSION)
68AC_SUBST(GTK_PREFIX)
69AC_SUBST(RFM_PREFIX)
70AC_SUBST(RFM_MODULE_DIR)
71
72GTK_VERSION=`$PKG_CONFIG --variable gtk_version librfm`
73GTK_PREFIX=`$PKG_CONFIG --variable prefix $GTK_VERSION`
74RFM_PREFIX=`$PKG_CONFIG --variable prefix librfm`
75RFM_MODULE_DIR=`$PKG_CONFIG --variable moduledir librfm`
76
77echo "GTK version used in librfm: $GTK_VERSION ($GTK_PREFIX)"
78
79AC_ARG_WITH(tcmalloc, [AC_HELP_STRING([--with-tcmalloc], [enable tcmalloc (developers only)])])
80AC_SUBST(TCMALLOC)
81if test "$with_tcmalloc" = "yes"; then
82    AC_DEFINE_UNQUOTED([TCMALLOC],[$with_tcmalloc],[compile with tcmalloc])
83    TCMALLOC="-L/usr/local/lib/ -ltcmalloc"
84else
85    TCMALLOC=
86fi
87
88
89#deprecated: AM_INIT_AUTOMAKE([package()], [vers()])
90#AM_INIT_AUTOMAKE([foreign])
91#m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES])
92AM_INIT_AUTOMAKE(1.11 foreign silent-rules)
93AM_SILENT_RULES([yes])
94RFM_VERINFO=1:0:0
95AC_SUBST(RFM_VERINFO)
96
97AM_MAINTAINER_MODE
98AC_CONFIG_HEADERS([config.h])
99
100
101
102#RFM_ENABLE_PLUGIN([EXPERIMENTAL], [experimental], [Experimental], [plugins], [no])
103RFM_MAX_PREVIEW_THREADS
104
105AC_SUBST([SUMMARY])SUMMARY=summary
106AC_SUBST([DESCRIPTION])DESCRIPTION=summary
107AC_SUBST([DESCRIPTION])RPM_DESCRIPTION=description
108AC_SUBST([HOMEPAGE])HOMEPAGE=homepage
109AC_DEFINE_UNQUOTED([HOMEPAGE],[homepage],[website])
110
111SRC_URI=src_uri()
112AC_SUBST([SRC_URI])
113LICENSE=license()
114AC_SUBST([LICENSE])
115AC_DEFINE_UNQUOTED([LICENSE],[license],[license])
116
117BUGMAIL=bugmail
118AC_SUBST([BUGMAIL])
119AC_DEFINE_UNQUOTED([BUGMAIL],[bugmail],[send bug reports to])
120MASTER_SITE=master_site()
121AC_SUBST([MASTER_SITE])
122
123DBH_FILE_VERSION=libdbh_file_compatibility()
124AC_SUBST([DBH_FILE_VERSION])
125
126DBH_VERSION=vers()
127AC_SUBST([DBH_VERSION])
128
129dnl Basic Checks
130dnl check for UNIX variants
131AC_ISC_POSIX
132
133dnl check for basic programs
134AC_PROG_CC
135AM_PROG_CC_C_O
136AC_PROG_INSTALL
137AC_PROG_LIBTOOL
138AC_PROG_INTLTOOL
139AC_PROG_MAKE_SET
140
141dnl Check for C compiler characteristics
142AC_C_BIGENDIAN
143AC_C_CONST
144AC_C_INLINE
145AC_C_LONG_DOUBLE
146AC_C_VOLATILE
147AC_HEADER_DIRENT
148AC_C_CONST
149AC_C_INLINE
150AC_HEADER_TIME
151AC_TYPE_SIGNAL
152
153dnl Check for system characteristics
154AC_MSG_CHECKING([integer bit order])
155case xyes in
156x$ac_cv_c_bigendian)
157  AC_MSG_RESULT([bigendian])
158  CFLAGS="$CFLAGS -DTURN"
159  ;;
160*)
161  AC_MSG_RESULT([littleendian])
162  ;;
163esac
164AC_CHECK_SIZEOF(short)
165AC_CHECK_SIZEOF(int)
166AC_CHECK_SIZEOF(long)
167AC_CHECK_SIZEOF(long long)
168AC_CHECK_SIZEOF(unsigned char *)
169AC_SYS_LARGEFILE
170m4_define([file_offset_bits], [$ac_cv_sys_file_offset_bits])
171if test "x$ac_cv_sys_file_offset_bits" != "xno"; then
172    AC_MSG_RESULT([FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits])
173    FILE_OFFSET_BITS=file_offset_bits()
174    AC_SUBST(FILE_OFFSET_BITS)
175fi
176AC_CHECK_SIZEOF(size_t)
177AC_CHECK_SIZEOF(off_t)
178m4_define([sizeof_file_pointer], [$ac_cv_sizeof_off_t])
179SIZEOF_FILE_POINTER=sizeof_file_pointer()
180AC_SUBST(SIZEOF_FILE_POINTER)
181FILE_POINTER="off_t"
182if test $ac_cv_sizeof_int = $ac_cv_sizeof_off_t; then
183    FILE_POINTER="int"
184fi
185if test $ac_cv_sizeof_long = $ac_cv_sizeof_off_t; then
186    FILE_POINTER="long"
187fi
188if test $ac_cv_sizeof_long_long = $ac_cv_sizeof_off_t; then
189    FILE_POINTER="long long"
190fi
191AC_SUBST(FILE_POINTER)
192
193dnl check for standard header files
194AC_HEADER_MAJOR
195AC_HEADER_STDC
196
197AC_CHECK_HEADERS([features.h time.h utime.h unistd.h stdarg.h signal.h errno.h stdlib.h stdio.h string.h fcntl.h grp.h limits.h paths.h pwd.h regex.h varargs.h ctype.h ])
198
199AC_CHECK_HEADERS([sys/time.h sys/select.h sys/types.h sys/param.h sys/ucred sys/wait.h sys/mman.h])
200
201AC_CHECK_HEADERS([mntent.h])
202
203AC_CHECK_HEADERS([fstab.h sys/param.h sys/ucred.h sys/mount.h])
204
205dnl check for standard functions
206AC_CHECK_FUNCS([setenv unsetenv])
207AC_CHECK_FUNCS(strlcpy snprintf strlcat lseek snprintf vsnprintf strcasecmp strncasecmp memcpy memmove memset)
208AC_CHECK_FUNCS([waitid signal sigaction])
209AC_SEARCH_LIBS([clock_gettime], [rt posix4])
210AC_CHECK_FUNCS([clock_gettime localtime localtime_r gettimeofday strftime])
211AC_CHECK_FUNCS([getmntinfo getfsent getmntent statfs])
212AC_CHECK_FUNCS([signal sigaction])
213dnl http://womble.decadent.org.uk/readdir_r-advisory.html
214AC_CHECK_FUNCS([fpathconf dirfd])
215AC_CHECK_MEMBERS([struct dirent.d_type], [], [], [[#include <dirent.h>]])
216
217dnl echo "J. Meyering macros..."
218dnl XXX - Why don't we use strftime instead?
219dnl    We would have to check to see if the displayed
220dnl    date formats remain the same for iso and utf locales.
221jm_FUNC_GNU_STRFTIME
222jm_FUNC_READDIR
223
224
225dnl .........................................................
226dnl .........................................................
227
228dnl check for standard libraries
229# check for POSIX shared memory
230AC_CHECK_LIB([rt],[shm_open])
231# check for POSIX threads
232AC_CHECK_LIB([pthread],[pthread_create])
233# check for POSIX threads GNU_SOURCE
234AC_CHECK_LIB([pthread],[pthread_tryjoin_np])
235if test "$ac_cv_lib_pthread_pthread_tryjoin_np" = yes; then
236  	AC_MSG_NOTICE([You have non portable GNU thread extensions. Good for you.])
237	AC_SUBST(HAVE_PTHREAD_TRYJOIN)
238	AC_DEFINE_UNQUOTED([HAVE_PTHREAD_TRYJOIN],[$ac_cv_lib_pthread_pthread_tryjoin_np],[enable non-standard GNU extensions])
239fi
240
241AC_CHECK_PROG(cv_pkgconfig, pkg-config, yes, no)
242
243dnl Check for required packages
244# check for libmagic (from "file" utility)
245AC_CHECK_LIB([magic],[magic_file])
246if test "yes" = "yes" ; then
247if test "$ac_cv_lib_magic_magic_file" = "no" ; then
248    AC_MSG_ERROR([*** Shucks! *** Error: libmagic header files were not found.  Debian package is  "libmagic-dev" or you can obtain the original author´s latest version by anonymous FTP on ftp.astron.com in the directory /pub/file/file-X.YZ.tar.gz. The Debian version adds a number of new magic entries. It can be obtained from every site carrying a Debian distribution (that is ftp.debian.org and mirrors)
249    In OpenSUSE/Fedora, the package is called "file-devel".])
250fi
251fi
252
253if test $prefix = NONE; then
254   echo "prefix = $ac_default_prefix"
255dnl   export PKG_CONFIG_PATH=$ac_default_prefix/lib/pkgconfig
256else
257   echo "prefix = $prefix"
258   ac_default_prefix=$prefix
259dnl   export PKG_CONFIG_PATH=$prefix/lib/pkgconfig
260fi
261dnl Here we set additional PKG_CONFIG_PATH, which is probably not necessary
262dnl echo "PKG_CONFIG_PATH = $PKG_CONFIG_PATH"
263
264AC_DEFINE_UNQUOTED([PREFIX],["$ac_default_prefix"],[Installation prefix])
265AC_SUBST([PREFIX])
266
267dnl These tests require pkg-config.
268
269AC_CHECK_PROGS([intltoolize],[intltoolize],no)
270if test $intltoolize = "no" ; then
271    AC_MSG_ERROR("intltool utilities not found. Please install intltool to build this package from source.");
272fi
273AC_CHECK_PROGS([gawk],[gawk],no)
274if test $gawk = "no" ; then
275    AC_MSG_ERROR("gawk program not found. Please install gawk to build this package from source.");
276fi
277
278RFM_LINUX_OR_BSD
279
280AM_CONDITIONAL(ONLY_LINUX, [test "$ac_uname_s" = "Linux"])
281RFM_GNU_AWK
282
283dnl Check for additional packages
284RFM_GNU_GREP
285
286RFM_GNU_LS
287RFM_GNU_CP
288RFM_GNU_MV
289RFM_GNU_LN
290RFM_GNU_RM
291RFM_GNU_SHRED
292RFM_GNU_GHOSTSCRIPT
293
294
295dnl check for additional system characteristics
296RFM_CHECK_DISTRO
297
298dnl Check for i18n support
299dnl In FreeBSD gettext is in /usr/local
300if test "$ac_uname_s" = "Linux"; then
301  CFLAGS="$CFLAGS"
302  LDFLAGS="$LDFLAGS"
303else
304  CFLAGS="$CFLAGS -I/usr/local/include"
305  LDFLAGS="$LDFLAGS -L/usr/local/lib"
306fi
307
308# Configurable options at script execution
309# Enable Debug option (implies core dumps)
310RFM_DEBUG
311
312# Enable Trace option (use with care)
313RFM_TRACE
314# Enable core dumps option
315RFM_CORE
316
317
318linguas="af am  an ar as ast  az  be@latin  be bg bn_IN bn bo br  bs ca ca@valencia crh csb cs cy da de  dz el en_AU en_CA en_GB  en_US eo es et eu fa fi  fr fur fy ga gl  gu gv  he hi hne hr hsb hu hy ia id ig io is it ja ka kg  kk km kn ko  ks ku ky  lb lg li lt lv mai mg mi mk ml mn mr ms  my nb nds ne  nl nn no nso oc or  pa pl ps pt_BR pt pt_PT ro ru rw se si sk sl  sq sr@ijekavianlatin sr@ijekavian sr@ije sr@latin  sr sv   ta te tg th tk  tr tt ug uk  ur uz@cyrillic uz vi wa xh yi yo zh_CN zh_HK zh zh_TW.Big5 zh_TW zu"
319XDT_I18N([$linguas])
320
321dnl final checks
322AC_CHECK_FILES([/usr/share/pixmaps /usr/local/share/pixmaps /usr/share/icons /usr/local/share/icons],[],[])
323
324AC_PROG_PS
325
326
327AC_CHECK_PROG(cv_dpkg, dpkg, yes, no)
328AM_CONDITIONAL(WANT_DEBIAN, [test "$cv_dpkg" = yes])
329#debian/changelog
330AC_SUBST(LIBDIR) LIBDIR=$libdir;
331
332AC_OUTPUT([
333rodent-iconmgr.settings
334Makefile
335rodent-iconmgr.spec
336Rodent-iconmgr.desktop.in
337Rodent-iconmgr.appdata.xml
338po/Makefile.in
339Build/Makefile
340man/Makefile
341icons/Makefile
342icons/png/Makefile
343icons/svg/Makefile
344debian/changelog
345debian/control
346])
347
348cat rodent-iconmgr.settings
349echo "Build: $build"
350RFM_MAKE_NOTICE
351
352
353