require intltool-0.17.

2002-03-02  Sven Neumann  <sven@gimp.org>

	* autogen.sh: require intltool-0.17.

	* configure.in: require latest glib, pango and gtk+. Bail out if
	libtiff, libjpeg or libpng is not found.  You now need to explicitly
	disable TIFF, JPEG and PNG support.

	* HACKING
	* INSTALL
	* NEWS
	* README: udpated.

	* data/misc/Makefile.am: fixed dependencies.
This commit is contained in:
Sven Neumann 2002-03-02 18:04:05 +00:00 committed by Sven Neumann
parent 70cfe31f55
commit 9ea943e00e
8 changed files with 288 additions and 251 deletions

View file

@ -1,3 +1,18 @@
2002-03-02 Sven Neumann <sven@gimp.org>
* autogen.sh: require intltool-0.17.
* configure.in: require latest glib, pango and gtk+. Bail out if
libtiff, libjpeg or libpng is not found. You now need to explicitly
disable TIFF, JPEG and PNG support.
* HACKING
* INSTALL
* NEWS
* README: udpated.
* data/misc/Makefile.am: fixed dependencies.
2002-03-02 Sven Neumann <sven@gimp.org> 2002-03-02 Sven Neumann <sven@gimp.org>
* app/core/gimptoolinfo.c * app/core/gimptoolinfo.c

57
HACKING
View file

@ -14,7 +14,7 @@ fine GNU mirrors. Beta software can be found at alpha.gnu.org.
Available from http://www.freedesktop.org/software/pkgconfig/. Available from http://www.freedesktop.org/software/pkgconfig/.
- intltoolize 0.15 (or newer version) - intltoolize 0.17 (or newer version)
Available from ftp://ftp.gnome.org/pub/GNOME/stable/sources/intltool/. Available from ftp://ftp.gnome.org/pub/GNOME/stable/sources/intltool/.
@ -29,7 +29,7 @@ by running:
Basically this does the following for you: Basically this does the following for you:
cvsroot/gimp# aclocal; automake; autoconf cvsroot/gimp# aclocal; automake -a; autoconf
cvsroot/gimp# glib-gettextize; intltoolize cvsroot/gimp# glib-gettextize; intltoolize
The above commands create the "configure" script. Now you The above commands create the "configure" script. Now you
@ -38,8 +38,8 @@ Basically this does the following for you:
Before running autogen.sh or configure, make sure you have libtool in Before running autogen.sh or configure, make sure you have libtool in
your path. Also make sure glib-2.0.m4 glib-gettext.m4, gtk-2.0.m4, your path. Also make sure glib-2.0.m4 glib-gettext.m4, gtk-2.0.m4,
pkg.m4 and intltool.m4 are either installed in the same pkg.m4 and intltool.m4 are either installed in the same
$prefix/share/aclocal relative to your automake/aclocal installation $prefix/share/aclocal relative to your automake/aclocal installation
or call autogen.sh with or call autogen.sh with
'ACLOCAL_FLAGS="-I $prefix/share/aclocal" ./autogen.sh'. 'ACLOCAL_FLAGS="-I $prefix/share/aclocal" ./autogen.sh'.
@ -73,28 +73,29 @@ releases will do also.
Patches Patches
------- -------
Please submit patches to the gimp-developer@lists.xcf.berkeley.edu Please submit patches to the gimp-developer@lists.xcf.berkeley.edu
mailing list. All kinds of contributions are appreciated. Larger patches mailing list. All kinds of contributions are appreciated. Larger
should be uploaded to ftp://ftp.gimp.org/incoming/. Follow the rules patches should be uploaded to ftp://ftp.gimp.org/incoming/. Follow
there for naming your patches. the rules there for naming your patches.
Autogenerated Files Autogenerated Files
------------------- -------------------
Please notice that some files in the source are generated from other Please notice that some files in the source are generated from other
sources. All those files have a short notice about being autogenerated sources. All those files have a short notice about being autogenerated
somewhere at the top. Among them are the files ending in _pdb.[ch] in the somewhere at the top. Among them are the files ending in _pdb.[ch] in
libgimp directory and the files ending in _cmds.c in the app/pdb the libgimp directory and the files ending in _cmds.c in the app/pdb
subdirectory. Those are generated from the respective .pdb files in subdirectory. Those are generated from the respective .pdb files in
tools/pdbgen/pdb. The list of contributors is used in several files which tools/pdbgen/pdb. The list of contributors is used in several files
are for that reason generated from the file contributors in tools/authorsgen. which are for that reason generated from the file contributors in
tools/authorsgen.
Hackordnung Hackordnung
----------- -----------
We encourage you to follow the GIMP coding style throughout the GIMP project. We encourage you to follow the GIMP coding style throughout the GIMP
For the core components (application and libs) this coding style is enforced. project. For the core components (application and libs) this coding
The GIMP coding style is defined as follows: style is enforced. The GIMP coding style is defined as follows:
Function names are lowercase, words separated by underscores. Function names are lowercase, words separated by underscores.
Macros and enums are all uppercase, words seperated by underscores. Macros and enums are all uppercase, words seperated by underscores.
@ -107,13 +108,14 @@ The GIMP coding style is defined as follows:
- Do not use tabs (of course your editor can use tabs, but it - Do not use tabs (of course your editor can use tabs, but it
should write them to file as 8 spaces each). should write them to file as 8 spaces each).
- Opening brackets are on a new line and indented one level. - Opening brackets are on a new line and indented one level.
- Function header have the return type on one line, the name starting - Function header have the return type on one line, the name
in the first column of the following line. All parameters are starting in the first column of the following line. All
prototyped and there's a new line for each. parameters are prototyped and there's a new line for each.
Try to make use of GLib's object system as much as possible. Do not create Try to make use of GLib's object system as much as possible. Do not
wrappers around functions of parent classes. If you end up duplicating code, create wrappers around functions of parent classes. If you end up
try to create a common parent class and implement the common methods there. duplicating code, try to create a common parent class and implement
the common methods there.
Don't include headers in headers except where unavoidable (e.g. for Don't include headers in headers except where unavoidable (e.g. for
deriving objects). Opaque typedefs go to app/base/base-types.h, deriving objects). Opaque typedefs go to app/base/base-types.h,
@ -121,6 +123,7 @@ app/core/core-types.h etc.
Don't use the GTK wrappers around the GLib object and signal system. Don't use the GTK wrappers around the GLib object and signal system.
One goal of the 1.3 development branch is to make the GIMP code more readable One goal of the 1.3 development branch is to make the GIMP code more
and understandable. Please help us to achieve this goal by cleaning up the readable and understandable. Please help us to achieve this goal by
present code and make sure that all new code follows the coding guidelines. cleaning up the present code and make sure that all new code follows
the coding guidelines.

32
INSTALL
View file

@ -45,27 +45,34 @@ options can be listed using the command `./configure --help'. There
are five commands special options the GIMP `configure' script are five commands special options the GIMP `configure' script
recognizes. These are: recognizes. These are:
1. --enable-shared and --disable-shared. This option affects whether --enable-shared and --disable-shared. This option affects whether
shared libraries will be built or not. Shared libraries provide shared libraries will be built or not. Shared libraries provide
for much smaller executables. The default is to enable shared for much smaller executables. The default is to enable shared
libraries. Disabling shared libraries is almost never a good idea. libraries. Disabling shared libraries is almost never a good idea.
2. --enable-debug and --disable-debug. This option causes the build --enable-debug and --disable-debug. This option causes the build
process to compile with debugging enabled. If debugging is process to compile with debugging enabled. If debugging is
disabled, the GIMP will instead be compiled with optimizations turned disabled, the GIMP will instead be compiled with optimizations turned
on. The default is for debugging to be disabled. NOTE: This on. The default is for debugging to be disabled. NOTE: This
option is intended primarily as a convenience for developers. option is intended primarily as a convenience for developers.
3. --enable-ansi and --disable-ansi. This option causes stricter --enable-ansi and --disable-ansi. This option causes stricter
ANSI C checking to be performed when compiling with GCC. The ANSI C checking to be performed when compiling with GCC. The
default is for strict checking to be disabled. NOTE: This option default is for strict checking to be disabled. NOTE: This option
is intended primarily as a convenience for developers. is intended primarily as a convenience for developers.
4. --enable-gimpdir=DIR. This option changes the default directory --enable-gimpdir=DIR. This option changes the default directory
the gimp uses to search for its configuration files from ~/.gimp-1.3 the gimp uses to search for its configuration files from ~/.gimp-1.3
(the directory .gimp-1.3 in the users home directory) to DIR. (the directory .gimp-1.3 in the users home directory) to DIR.
5. --enable-perl and --disable-perl. The perl extension does not build --without-libtiff, without-libjpeg, --without-libpng. configure
will bail out if libtiff, libjpeg or libpng can not be found. You
better fix the underlying problem and install these libraries with
their header files. If you absolutely want to compile GIMP without
support for TIFF, JPEG or PNG you need to explicitely disable
them using the options given above.
--enable-perl and --disable-perl. The perl extension does not build
on all systems. If you experience problems use --disable-perl on all systems. If you experience problems use --disable-perl
and gimp will not even try to built it. The perl extension does and gimp will not even try to built it. The perl extension does
not usually respect the normal configure prefix but uses perl's not usually respect the normal configure prefix but uses perl's
@ -76,25 +83,18 @@ recognizes. These are:
get many errors on startup. See README.perl for even finer grained get many errors on startup. See README.perl for even finer grained
control about installation paths (and distribution making). control about installation paths (and distribution making).
6. --enable-nls and --disable-nls. This option changes whether to build --enable-threads and --enable-mp. This options control whether to build
GIMP with or without localisation support. This option is enabled by
default. If you'd like to enjoy GIMP in your native language, assuming
the necessary catalogs are available, then leave this option on. If
you'd like to have an English GIMP in every case then turn this option
off; this will also decrease the binary size by a few bits.
7. --enable-threads and --enable-mp. This options control whether to build
GIMP with or without support for multiple processors. This options are GIMP with or without support for multiple processors. This options are
off by default. If you do have multiply processors and run GIMP with off by default. If you do have multiply processors and run GIMP with
an OS supporting them you will like to enable this features to use an OS supporting them you will like to enable this features to use
all of your horsepower. Enabling it on singleprocessor systems won't all of your horsepower. Enabling it on singleprocessor systems won't
harm but cause a bit processing overhead. harm but cause a bit processing overhead.
8. --with-sendmail=[PATH]. This option is used to tell GIMP where to find --with-sendmail=[PATH]. This option is used to tell GIMP where to find
the sendmail command. Normally this options don't have to be used the sendmail command. Normally this options don't have to be used
because configure tries to find it in the usual places. because configure tries to find it in the usual places.
9. --with-gnome-desktop=[PATH]. This option specifies where to install --with-gnome-desktop=[PATH]. This option specifies where to install
a link to the gimp.desktop file for GNOME-2.0. The default value a link to the gimp.desktop file for GNOME-2.0. The default value
${prefix}/share/applications should be fine if GNOME-2.0 is installed ${prefix}/share/applications should be fine if GNOME-2.0 is installed
in the same prefix. No link is created if the specified directory in the same prefix. No link is created if the specified directory

3
NEWS
View file

@ -25,7 +25,10 @@ Overview of Changes in GIMP 1.3.4
- First draft of a new vectors tool [Simon, Mitch] - First draft of a new vectors tool [Simon, Mitch]
- Undo cleanups [Mitch] - Undo cleanups [Mitch]
- Changed tips file format to XML [Sven] - Changed tips file format to XML [Sven]
- Added desktop file for GNOME-2 [Sven]
- Added GimpItem class to generalize core code even further [Mitch] - Added GimpItem class to generalize core code even further [Mitch]
- Improved preferences dialog [Mitch, Sven]
- New tool icons [Jimmac]
- Bugfixes - Bugfixes
- More stuff not mentioned here (see the ChangeLog) - More stuff not mentioned here (see the ChangeLog)

64
README
View file

@ -46,17 +46,18 @@ discussion. There is more info at
https://lists.xcf.berkeley.edu/mailman/listinfo/<listname> https://lists.xcf.berkeley.edu/mailman/listinfo/<listname>
substituting <listname> for "gimp-announce", "gimp-user", "gimp-win-user", substituting <listname> for "gimp-announce", "gimp-user",
or "gimp-developer" (without the quotes, of course) depending on the list "gimp-win-user", or "gimp-developer" (without the quotes, of course)
you want to subscribe to. Links to the mailing list archives can be found depending on the list you want to subscribe to. Links to the mailing
at the same addresses as given above. list archives can be found at the same addresses as given above.
Gimp-announce is a low-traffic list with announcements about new releases Gimp-announce is a low-traffic list with announcements about new
of GIMP and plug-ins. Gimp-user is a mailing list dedicated to user problems, releases of GIMP and plug-ins. Gimp-user is a mailing list dedicated
hints and tips, discussion of cool effects, etc. Gimp-developer is to user problems, hints and tips, discussion of cool effects, etc.
oriented to GIMP core and plug-in developers. Most people will only want Gimp-developer is oriented to GIMP core and plug-in developers. Most
to be subscribed to gimp-user. If you want to help develop The GIMP, the people will only want to be subscribed to gimp-user. If you want to
gimp-developer mailing list is a good starting point. help develop The GIMP, the gimp-developer mailing list is a good
starting point.
There are two mailing lists dedicated to the Win32 port, "gimpwin-users" There are two mailing lists dedicated to the Win32 port, "gimpwin-users"
and "gimpwin-dev". Especially the latter also carries traffic about the and "gimpwin-dev". Especially the latter also carries traffic about the
@ -67,11 +68,14 @@ or
gimpwin-dev-subscribe@egroups.com gimpwin-dev-subscribe@egroups.com
respectively. You can also use the web interface at respectively. You can also use the web interface at
http://www.egroups.com/group/gimpwin-users/ and
http://www.egroups.com/group/gimpwin-dev/ . Note that as these mailing http://www.egroups.com/group/gimpwin-users/ and
lists are hosted on egroups.com, the messages from the list contain http://www.egroups.com/group/gimpwin-dev/
relatively unintrusive and easily ignored advertisements at the
end. But if you are absolutely allergic to ads, don't subscribe. Note that as these mailing lists are hosted on egroups.com, the
messages from the list contain relatively unintrusive and easily
ignored advertisements at the end. But if you are absolutely allergic
to ads, don't subscribe.
3. IRC 3. IRC
@ -83,27 +87,29 @@ Many of the developers hang out there. One of the Byxnet servers are:
irc.gimp.org:6667 irc.gimp.org:6667
4. Customizing 4. Customizing
============== ==============
The look of GIMP's interface can be customized like any other GTK app The look of GIMP's interface can be customized like any other GTK app
by editing the ~/.gtkrc file or by using "themes" (ready-made by editing the ~/.gtkrc file or by using "themes" (ready-made
customizations). For downloadable themes and further details, see customizations). For downloadable themes and further details, see
http://gtk.themes.org. Additionally GIMP reads ~/.gimp-1.3/gtkrc so you http://gtk.themes.org. Additionally GIMP reads ~/.gimp-1.3/gtkrc so
can have settings that only apply to The GIMP. you can have settings that only apply to The GIMP.
Included is a set of keybindings similar to those in Adobe Photoshop.
You can find them in the ps-menurc file. To use them, copy this file
to ~/.gimp-1.3/menurc. You can also manually change the keybindings to
any of your choice by editing ~/.gimp-1.3/menurc.
Included is a set of keybindings similar to those in Adobe Photoshop (tm).
You can find them in the ps-menurc file. To use them, copy this file to
~/.gimp-1.3/menurc. You can also manually change the keybindings to any of
your choice by editing ~/.gimp-1.3/menurc.
5. Bugs 5. Bugs
======= =======
Since this is a developers version, we are at the moment not really Since this is a developers version, we are at the moment not really
interested in receiving bug-reports. If you find a bug, contact the person interested in receiving bug-reports. If you find a bug, contact the
who is working on this particular part of the program (check the ChangeLog) person who is working on this particular part of the program (check
or try to fix it yourself. the ChangeLog) or try to fix it yourself.
Have fun, Have fun,
@ -114,11 +120,3 @@ Have fun,
Manish Singh Manish Singh
Sven Neumann Sven Neumann
Michael Natterer Michael Natterer

View file

@ -91,10 +91,10 @@ fi
echo "Testing intltoolize... " echo "Testing intltoolize... "
VER=`intltoolize --version | grep intltoolize | sed "s/.* \([0-9.]*\)/\1/"` VER=`intltoolize --version | grep intltoolize | sed "s/.* \([0-9.]*\)/\1/"`
if expr $VER \>= 0.15 >/dev/null; then if expr $VER \>= 0.17 >/dev/null; then
echo "looks OK." echo "looks OK."
else else
echo "too old! (Need 0.15, have $VER)" echo "too old! (Need 0.17, have $VER)"
DIE=1 DIE=1
fi fi
echo echo

View file

@ -2,9 +2,9 @@ dnl Process this file with autoconf to produce a configure script.
AC_INIT(etc/gimprc.in) AC_INIT(etc/gimprc.in)
GLIB_REQUIRED_VERSION=1.3.14 GLIB_REQUIRED_VERSION=1.3.15
GTK_REQUIRED_VERSION=$GLIB_REQUIRED_VERSION GTK_REQUIRED_VERSION=$GLIB_REQUIRED_VERSION
PANGOFT2_REQUIRED_VERSION=0.24 PANGOFT2_REQUIRED_VERSION=0.26
GTKDOC_REQUIRED_VERSION=0.6 GTKDOC_REQUIRED_VERSION=0.6
# #
@ -190,13 +190,6 @@ AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
CFLAGS=$gimp_save_CFLAGS CFLAGS=$gimp_save_CFLAGS
AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)]))) AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
gimp_save_CPPFLAGS="$CPPFLAGS"
gimp_save_LDFLAGS="$LDFLAGS"
gimp_save_LIBS="$LIBS"
CPPFLAGS="$CPPFLAGS $GTK_CFLAGS"
LDFLAGS="$LDFLAGS `echo $GTK_LIBS | sed 's/\(.*\)\(-lgtk.*\)/\1/'`"
LIBS="$LIBS $GTK_LIBS"
dnl Test for MMX stuff dnl Test for MMX stuff
have_asm_mmx=false have_asm_mmx=false
@ -246,125 +239,6 @@ AM_CONDITIONAL(HAVE_ASM_MMX, test x$have_asm_mmx = xtrue)
dnl build of gimp-remote is disabled for now dnl build of gimp-remote is disabled for now
dnl GIMP_REMOTE="gimp-remote-1.3" dnl GIMP_REMOTE="gimp-remote-1.3"
dnl Check if building for GTK+-X11
gdk_target=`$PKG_CONFIG --variable=target gtk+-2.0`
if test "$gdk_target" = x11; then
dnl Test for Xmu
if test -z "$LIBXMU"; then
AC_CHECK_LIB(Xmu, XmuClientWindow,
[AC_CHECK_HEADER(X11/Xmu/WinUtil.h,
WEBBROWSER="webbrowser"; LIBXMU='-lXmu -lXt -lSM -lICE',
[AC_MSG_WARN(*** webbrowser plug-in will not be built (XMU header file not found) ***)])],
[AC_CHECK_LIB(Xmu, XmuUpdateMapHints,
[AC_CHECK_HEADER(X11/Xmu/WinUtil.h,
WEBBROWSER="webbrowser"; LIBXMU='-lXmu -lXt',
[AC_MSG_WARN(*** webbrowser plug-in will not be built (XMU header file not found) ***)])],
AC_MSG_WARN(*** webbrowser plug-in will not be built (XMU library not found) ***), -lXt)], -lXt -lSM -lICE)
fi
else
AC_MSG_WARN([
*** Not building for GTK+-X11 (GDK backend is $gdk_target).
*** Webbrowser plug-in will not be built.])
fi
dnl Test for libaa
if test -z "$LIBAA"; then
AC_CHECK_LIB(aa, aa_printf,
[AC_CHECK_HEADER(aalib.h,
AA='aa'; LIBAA='-laa',
[AC_MSG_WARN(*** AA plug-in will not be built (AA header file not found) ***)])],
[AC_MSG_WARN(*** AA plug-in will not be built (AA library not found) ***)])
fi
dnl Test for libtiff
if test -z "$LIBTIFF"; then
AC_CHECK_LIB(tiff, TIFFReadScanline,
[AC_CHECK_HEADER(tiffio.h,
TIFF='tiff'; LIBTIFF='-ltiff',
[AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF header files not found) ***)])],
[AC_CHECK_LIB(tiff, TIFFWriteScanline,
[AC_CHECK_HEADER(tiffio.h,
TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
[AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF header files not found) ***)])],
[AC_CHECK_LIB(tiff34, TIFFFlushData,
[AC_CHECK_HEADER(tiffio.h,
TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
[AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF header files not found) ***)])],
[AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF library not found) ***)], -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
fi
dnl Test for libjpeg
if test -z "$LIBJPEG"; then
AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
jpeg_ok=yes,
[jpeg_ok=no
AC_MSG_WARN(*** JPEG plug-in will not be built (JPEG library not found) ***)
AC_MSG_WARN(*** XJT plug-in will not be built (JPEG library not found) ***)])
if test "$jpeg_ok" = yes; then
AC_MSG_CHECKING([for jpeglib.h])
AC_TRY_CPP(
[#include <stdio.h>
#undef HAVE_STDDEF_H
#undef HAVE_STDLIB_H
#undef PACKAGE
#undef VERSION
#include <jpeglib.h>],
jpeg_ok=yes,
jpeg_ok=no)
AC_MSG_RESULT($jpeg_ok)
if test "$jpeg_ok" = yes; then
JPEG='jpeg'; XJT='xjt'; LIBJPEG='-ljpeg'
AC_CHECK_LIB(jpeg, jpeg_simple_progression,
AC_DEFINE(HAVE_PROGRESSIVE_JPEG),
AC_MSG_WARN(JPEG library does not support progressive saving.))
else
AC_MSG_WARN(*** JPEG plug-in will not be built (JPEG header file not found) ***)
AC_MSG_WARN(*** XJT plug-in will not be built (JPEG header file not found) ***)
fi
fi
fi
dnl Test for libz
if test -z "$LIBZ"; then
AC_CHECK_LIB(z, gzsetparams,
[AC_CHECK_HEADER(zlib.h,
PSP='psp'; LIBZ='-lz',
[AC_MSG_WARN(*** PSP and PNG plug-ins will not be built (ZLIB header files not found) ***)])],
[AC_MSG_WARN(*** PSP and PNG plug-ins will not be built (ZLIB library not found) ***)])
fi
dnl Test for libpng
if test -z "$LIBPNG" && test -n "$LIBZ"; then
AC_CHECK_LIB(png, png_read_info,
[AC_CHECK_HEADER(png.h,
png_ok=yes,
png_ok=no)],
[AC_MSG_WARN(*** PNG plug-in will not be built (PNG library not found) ***)], -lz -lm)
if test "$png_ok" = yes; then
AC_MSG_CHECKING([for png_structp in png.h])
AC_TRY_COMPILE([#include <png.h>],
[png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
png_ok=yes,
png_ok=no)
AC_MSG_RESULT($png_ok)
if test "$png_ok" = yes; then
PNG='png'; LIBPNG="-lpng $LIBZ"
else
AC_MSG_WARN(*** PNG plug-in will not be built (PNG library is too old) ***)
fi
else
AC_MSG_WARN(*** PNG plug-in will not be built (PNG header file not found) ***)
fi
fi
dnl Test for libmpeg
if test -z "$LIBMPEG"; then
AC_CHECK_LIB(mpeg, GetMPEGFrame,
[AC_CHECK_HEADER(mpeg.h,
MPEG='mpeg'; LIBMPEG='-lmpeg'; GAP_DECODE_MPEG='gap_decode_mpeg',
[AC_MSG_WARN(*** MPEG plug-in will not be built (MPEG header file not found) ***)])],
[AC_MSG_WARN(*** MPEG plug-in will not be built (MPEG library not found) ***)])
fi
dnl Check for shared memory dnl Check for shared memory
AC_CHECK_HEADER(sys/ipc.h, [AC_DEFINE(HAVE_IPC_H)], no_sys_ipc=yes) AC_CHECK_HEADER(sys/ipc.h, [AC_DEFINE(HAVE_IPC_H)], no_sys_ipc=yes)
@ -496,6 +370,194 @@ if test "$have_glib_inline" = "no"; then
AC_C_INLINE AC_C_INLINE
fi fi
dnl Threads
dnl AC_ARG_ENABLE(threads, [ --enable-threads support POSIX threading [default=no]])
dnl if test "x$enable_threads" = "xyes"; then
dnl AC_CHECK_LIB(pthread, pthread_attr_init,
dnl [AC_DEFINE(USE_PTHREADS)
dnl GIMP_THREAD_LIBS="-lpthread"
dnl GIMP_THREAD_FLAGS="-D_REENTRANT"],
dnl # AIX has libpthreads, cause they're special. Special friends (TM)
dnl AC_CHECK_LIB(pthreads, pthread_attr_init,
dnl [AC_DEFINE(USE_PTHREADS)
dnl GIMP_THREAD_LIBS="-lpthreads"
dnl GIMP_THREAD_FLAGS="-D_REENTRANT -D_THREAD_SAFE"]))
dnl fi
dnl Multi-Processor Support
AC_ARG_ENABLE(mp, [ --enable-mp support multiple processors [default=no]])
if test "x$enable_mp" = "xyes"; then
AC_CHECK_LIB(pthread, pthread_attr_init,
[AC_DEFINE(ENABLE_MP)
GIMP_MP_LIBS="-lpthread"
GIMP_MP_FLAGS="-D_REENTRANT"],
# AIX has libpthreads, cause they're special. Special friends (TM)
AC_CHECK_LIB(pthreads, pthread_attr_init,
[AC_DEFINE(ENABLE_MP)
GIMP_MP_LIBS="-lpthreads"
GIMP_MP_FLAGS="-D_REENTRANT -D_THREAD_SAFE"]))
fi
dnl Check if building for GTK+-X11
gdk_target=`$PKG_CONFIG --variable=target gtk+-2.0`
if test "$gdk_target" = x11; then
dnl Test for Xmu
if test -z "$LIBXMU"; then
AC_CHECK_LIB(Xmu, XmuClientWindow,
[AC_CHECK_HEADER(X11/Xmu/WinUtil.h,
WEBBROWSER="webbrowser"; LIBXMU='-lXmu -lXt -lSM -lICE',
[AC_MSG_WARN(*** webbrowser plug-in will not be built (XMU header file not found) ***)])],
[AC_CHECK_LIB(Xmu, XmuUpdateMapHints,
[AC_CHECK_HEADER(X11/Xmu/WinUtil.h,
WEBBROWSER="webbrowser"; LIBXMU='-lXmu -lXt',
[AC_MSG_WARN(*** webbrowser plug-in will not be built (XMU header file not found) ***)])],
AC_MSG_WARN(*** webbrowser plug-in will not be built (XMU library not found) ***), -lXt)], -lXt -lSM -lICE)
fi
else
AC_MSG_WARN([
*** Not building for GTK+-X11 (GDK backend is $gdk_target).
*** Webbrowser plug-in will not be built.])
fi
dnl Test for libtiff
AC_ARG_WITH(libtiff, [ --without-libtiff build without TIFF support])
if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
AC_CHECK_LIB(tiff, TIFFReadScanline,
[AC_CHECK_HEADER(tiffio.h,
TIFF='tiff'; LIBTIFF='-ltiff',
[AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF header files not found) ***)])],
[AC_CHECK_LIB(tiff, TIFFWriteScanline,
[AC_CHECK_HEADER(tiffio.h,
TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
[AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF header files not found) ***)])],
[AC_CHECK_LIB(tiff34, TIFFFlushData,
[AC_CHECK_HEADER(tiffio.h,
TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
[AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF header files not found) ***)])],
[AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF library not found) ***)], -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
fi
if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
AC_MSG_ERROR([
*** Checks for TIFF libary failed. You can build without it by passing
*** --without-libtiff to configure but you won't be able to use TIFFs then.])
fi
dnl Test for libjpeg
AC_ARG_WITH(libjpeg, [ --without-libjpeg build without JPEG support])
if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
jpeg_ok=yes,
[jpeg_ok=no
AC_MSG_WARN(*** JPEG plug-in will not be built (JPEG library not found) ***)
AC_MSG_WARN(*** XJT plug-in will not be built (JPEG library not found) ***)])
if test "$jpeg_ok" = yes; then
AC_MSG_CHECKING([for jpeglib.h])
AC_TRY_CPP([
#include <stdio.h>
#undef HAVE_STDDEF_H
#undef HAVE_STDLIB_H
#undef PACKAGE
#undef VERSION
#include <jpeglib.h>],
jpeg_ok=yes,
jpeg_ok=no)
AC_MSG_RESULT($jpeg_ok)
if test "$jpeg_ok" = yes; then
JPEG='jpeg'; XJT='xjt'; LIBJPEG='-ljpeg'
AC_CHECK_LIB(jpeg, jpeg_simple_progression,
AC_DEFINE(HAVE_PROGRESSIVE_JPEG),
AC_MSG_WARN(JPEG library does not support progressive saving.))
else
AC_MSG_WARN(*** JPEG plug-in will not be built (JPEG header file not found) ***)
AC_MSG_WARN(*** XJT plug-in will not be built (JPEG header file not found) ***)
fi
fi
fi
if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
AC_MSG_ERROR([
*** Checks for JPEG library failed. You can build without it by passing
*** --without-libjpeg to configure but you won't be able to use JPEGs then.])
fi
dnl Test for libz
if test -z "$LIBZ"; then
AC_CHECK_LIB(z, gzsetparams,
[AC_CHECK_HEADER(zlib.h,
PSP='psp'; LIBZ='-lz',
[AC_MSG_WARN(*** PSP and PNG plug-ins will not be built (ZLIB header files not found) ***)])],
[AC_MSG_WARN(*** PSP and PNG plug-ins will not be built (ZLIB library not found) ***)])
fi
dnl Test for libpng
AC_ARG_WITH(libpng, [ --without-libpng build without PNG support])
if test x$with_libpng != xno && test -z "$LIBPNG" && test -n "$LIBZ"; then
AC_CHECK_LIB(png, png_read_info,
[AC_CHECK_HEADER(png.h,
png_ok=yes,
png_ok=no)],
[AC_MSG_WARN(*** PNG plug-in will not be built (PNG library not found) ***)], -lz -lm)
if test "$png_ok" = yes; then
AC_MSG_CHECKING([for png_structp in png.h])
AC_TRY_COMPILE([#include <png.h>],
[png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
png_ok=yes,
png_ok=no)
AC_MSG_RESULT($png_ok)
if test "$png_ok" = yes; then
PNG='png'; LIBPNG="-lpng $LIBZ"
else
AC_MSG_WARN(*** PNG plug-in will not be built (PNG library is too old) ***)
fi
else
AC_MSG_WARN(*** PNG plug-in will not be built (PNG header file not found) ***)
fi
fi
if test x$with_libpng != xno && test -z "$LIBPNG"; then
AC_MSG_ERROR([
*** Checks for PNG library failed. You can build without it by passing
*** --without-libpng to configure but you won't be able to use PNGs then.])
fi
dnl Test for libaa
if test -z "$LIBAA"; then
AC_CHECK_LIB(aa, aa_printf,
[AC_CHECK_HEADER(aalib.h,
AA='aa'; LIBAA='-laa',
[AC_MSG_WARN(*** AA plug-in will not be built (AA header file not found) ***)])],
[AC_MSG_WARN(*** AA plug-in will not be built (AA library not found) ***)])
fi
dnl Test for libmpeg
if test -z "$LIBMPEG"; then
AC_CHECK_LIB(mpeg, GetMPEGFrame,
[AC_CHECK_HEADER(mpeg.h,
MPEG='mpeg'; LIBMPEG='-lmpeg'; GAP_DECODE_MPEG='gap_decode_mpeg',
[AC_MSG_WARN(*** MPEG plug-in will not be built (MPEG header file not found) ***)])],
[AC_MSG_WARN(*** MPEG plug-in will not be built (MPEG library not found) ***)])
fi
dnl Test for libXpm
gimp_save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $X_LIBS"
if test -z "$LIBXPM"; then
AC_CHECK_LIB(Xpm, XpmReadFileToXpmImage,
[AC_CHECK_HEADER(X11/xpm.h,
XPM='xpm'; LIBXPM="$X_LIBS $X_PRE_LIBS -lX11 -lXpm",
[AC_MSG_WARN(*** XPM plug-in will not be built (XPM header file not found) ***)])],
[AC_MSG_WARN(*** XPM plug-in will not be built (XPM library not found) ***)], $X_PRE_LIBS -lX11)
fi
LDFLAGS="$gimp_save_LDFLAGS"
dnl This is for the help browser dnl This is for the help browser
dnl AC_PATH_PROG(GNOME_CONFIG,gnome-config,no) dnl AC_PATH_PROG(GNOME_CONFIG,gnome-config,no)
dnl if test "$GNOME_CONFIG" = "no"; then dnl if test "$GNOME_CONFIG" = "no"; then
@ -537,50 +599,6 @@ dnl HELPBROWSER=
dnl fi dnl fi
dnl fi dnl fi
CPPFLAGS="$gimp_save_CPPFLAGS"
LDFLAGS="$gimp_save_LDFLAGS"
LIBS="$gimp_save_LIBS"
dnl Test for libXpm
gimp_save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $X_LIBS"
if test -z "$LIBXPM"; then
AC_CHECK_LIB(Xpm, XpmReadFileToXpmImage,
[AC_CHECK_HEADER(X11/xpm.h,
XPM='xpm'; LIBXPM="$X_LIBS $X_PRE_LIBS -lX11 -lXpm",
[AC_MSG_WARN(*** XPM plug-in will not be built (XPM header file not found) ***)])],
[AC_MSG_WARN(*** XPM plug-in will not be built (XPM library not found) ***)], $X_PRE_LIBS -lX11)
fi
LDFLAGS="$gimp_save_LDFLAGS"
dnl Threads
dnl AC_ARG_ENABLE(threads, [ --enable-threads support POSIX threading [default=no]])
dnl if test "x$enable_threads" = "xyes"; then
dnl AC_CHECK_LIB(pthread, pthread_attr_init,
dnl [AC_DEFINE(USE_PTHREADS)
dnl GIMP_THREAD_LIBS="-lpthread"
dnl GIMP_THREAD_FLAGS="-D_REENTRANT"],
dnl # AIX has libpthreads, cause they're special. Special friends (TM)
dnl AC_CHECK_LIB(pthreads, pthread_attr_init,
dnl [AC_DEFINE(USE_PTHREADS)
dnl GIMP_THREAD_LIBS="-lpthreads"
dnl GIMP_THREAD_FLAGS="-D_REENTRANT -D_THREAD_SAFE"]))
dnl fi
dnl Multi-Processor Support
AC_ARG_ENABLE(mp, [ --enable-mp support multiple processors [default=no]])
if test "x$enable_mp" = "xyes"; then
AC_CHECK_LIB(pthread, pthread_attr_init,
[AC_DEFINE(ENABLE_MP)
GIMP_MP_LIBS="-lpthread"
GIMP_MP_FLAGS="-D_REENTRANT"],
# AIX has libpthreads, cause they're special. Special friends (TM)
AC_CHECK_LIB(pthreads, pthread_attr_init,
[AC_DEFINE(ENABLE_MP)
GIMP_MP_LIBS="-lpthreads"
GIMP_MP_FLAGS="-D_REENTRANT -D_THREAD_SAFE"]))
fi
gimpdatadir=$datadir/$PACKAGE/$GIMP_MAJOR_VERSION.$GIMP_MINOR_VERSION gimpdatadir=$datadir/$PACKAGE/$GIMP_MAJOR_VERSION.$GIMP_MINOR_VERSION
gimpplugindir=$libdir/$PACKAGE/$GIMP_MAJOR_VERSION.$GIMP_MINOR_VERSION gimpplugindir=$libdir/$PACKAGE/$GIMP_MAJOR_VERSION.$GIMP_MINOR_VERSION

View file

@ -17,7 +17,7 @@ EXTRA_DIST = \
gen_sources = desktop-foo gen_sources = desktop-foo
CLEANFILES = $(gen_sources) CLEANFILES = $(gen_sources)
gimp.desktop: gimp.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) gimp.desktop: gimp.desktop.in $(wildcard $(top_srcdir)/po/*.po)
sed -e 's|.[{]prefix[}]|${prefix}|' $< > desktop-foo \ sed -e 's|.[{]prefix[}]|${prefix}|' $< > desktop-foo \
&& $(INTLTOOL_MERGE) $(top_srcdir)/po desktop-foo $(@) -d -u -c $(top_builddir)/po/.intltool-merge-cachemake \ && $(INTLTOOL_MERGE) $(top_srcdir)/po desktop-foo $(@) -d -u -c $(top_builddir)/po/.intltool-merge-cachemake \
&& rm -r desktop-foo && rm -r desktop-foo