git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/digikam@1075997 283d02a7-25f6-0310-bc7c-ecb5cbfe19dav3.5.13-sru
commit
5543c8d943
@ -0,0 +1,87 @@
|
||||
MAIN DEVELOPERS :
|
||||
---------------
|
||||
|
||||
Gilles Caulier <caulier dot gilles at gmail dot com> : Coordinator, lead developer, French translations.
|
||||
Marcel Wiesweg <marcel dot wiesweg at gmx dot de> : Lead developer.
|
||||
|
||||
CURRENT CONTRIBUTORS :
|
||||
--------------------
|
||||
|
||||
Luka Renko <lure at kubuntu dot org> : Developer, Kubuntu packages.
|
||||
Angelo Naselli <anaselli at linux dot it> : Developer, Mandriva packages.
|
||||
Arnd Baecker <arnd dot baecker at web dot de> : Developer.
|
||||
Andi Clemens <andi dot clemens at gmx dot net> : Developer.
|
||||
Francisco J. Cruz <fj dot cruz at supercable dot es> : Developer.
|
||||
Achim Bohnet <ach at mpe dot mpg dot de> : Bug reports, patches, Debian packages.
|
||||
Gerhard Kulzer <gerhard at kulzer dot net> : Bug reports, patches, and handbook writer.
|
||||
Oliver Doerr <oliver at doerr-privat dot de> : Beta tester, German translations.
|
||||
Fabien Salvi <fabien dot ubuntu at gmail dot com> : Webmaster, French translations.
|
||||
|
||||
OLD CONTRIBUTORS :
|
||||
----------------
|
||||
|
||||
Renchi Raju <renchi.raju at kdemail dot net> : 0.1.0 to 0.8.0 : main coordinator and lead developer.
|
||||
Ralf Holzer <kde at ralfhoelzer dot com> : Developer (0.7.x).
|
||||
Joern Ahrens <kde at jokele dot de> : Developer, digiKam webpage maintainer (0.7.x-0.8.x).
|
||||
Tom Albers <tomalbers at kde dot nl> : Developer, digiKam webpage maintainer (0.7.x-0.8.x).
|
||||
Todd Shoemaker <todd at theshoemakers dot net> : Developer (0.6.x).
|
||||
Unai Garro <ugarro at sourceforge dot net> : Developer (Hot Pixels Fixer tools).
|
||||
Gregory Kokanosky <gregory dot kokanosky at free dot fr> : Feedback and patches (0.6.x).
|
||||
Richard Taylor <r dot taylor at bcs dot org dot uk> : Feedback, patches, and handbook writter (0.7.x).
|
||||
Yves Chaufour <yves dot chaufour at wanadoo dot fr> : digiKam webpage maintainer (0.7.x).
|
||||
Charles Bouveyron <c dot bouveyron at tuxfamily dot org> : Beta tester (0.6.x).
|
||||
Sebastian Rooder <seppelrockt at web dot de> : Crystal icons style (0.6.2).
|
||||
Tung Nguyen <ntung at free dot fr> : Bug reports, French translations, new image plugins icon set.
|
||||
Pieter Voloshyn <pieter dot voloshyn at gmail dot com> : Image filter algorithms.
|
||||
|
||||
|
||||
OLD TRANSLATORS (before 0.7.0 release) :
|
||||
--------------------------------------
|
||||
|
||||
Stefano Rivoir <s dot rivoir at gts dot it> : Italian translations.
|
||||
Jan Toenjes <jan dot toenjes at web dot de> : German translations.
|
||||
Quique <quique at sindominio dot net> : Spanish translations.
|
||||
Marcus Meissner <marcus at jet dot franken dot de> : Czech translations.
|
||||
Janos Tamasi <janusz at vnet dot hu> : Hungarian translations.
|
||||
Rune Laursen <runerl at skjoldhoej dot dk> : Danish translations.
|
||||
Jasper van der Marel <jasper dot van dot der dot marel at wanadoo dot nl> : Dutch translations.
|
||||
Anna Sawicka <ania at kajak dot org dot pl> : Polish translations.
|
||||
|
||||
DIGIKAM SPLASHSCREENS CREDITS :
|
||||
------------------------------
|
||||
|
||||
0.9.6 : Andr Geszti Monteiro <agm2112 at gmail dot com>
|
||||
0.9.5 : Michel Pottier <Michel dot Pottier at free dot fr>
|
||||
0.9.4 : Michel Pottier <Michel dot Pottier at free dot fr>
|
||||
0.9.3 : Laurenz Gamper <lgamper at gmx dot ch>
|
||||
0.9.2 : Juergen Flosbach <juergen dot flosbach at bigfoot dot com>
|
||||
0.9.1 : Gilles Caulier <caulier dot gilles at gmail dot com>
|
||||
0.9.0 : Dennis Gnad <bluedrago at web dot de>
|
||||
0.8.2 : Andrea Gagliardi <andrea at euronia dot it>
|
||||
0.8.1 : Andrea Gagliardi <andrea at euronia dot it>
|
||||
0.8.0 : Tom Albers <tomalbers at kde dot nl>
|
||||
0.7.3 : Andreas Fischer
|
||||
0.7.2 : Caulier Gilles <caulier dot gilles at kdemail dot net>
|
||||
0.7.1 : Yemu
|
||||
0.7.0 : Yves Chaufour <yves dot chaufour at wanadoo dot fr>
|
||||
0.6.2 : Yves Chaufour <yves dot chaufour at wanadoo dot fr>
|
||||
0.6.1 : Jens Gassmann <jens dot gassmann at atomix dot de>
|
||||
0.6.0 : Renchi Raju <renchi dot raju at gmail dot com>
|
||||
0.5.0 : Renchi Raju <renchi dot raju at gmail dot com>
|
||||
0.4.0 : NONE
|
||||
|
||||
SHOWFOTO SPLASHSCREENS CREDITS :
|
||||
------------------------------
|
||||
|
||||
0.9.6 : Paul Waldo <paul at waldoware dot com>
|
||||
0.9.0 : Paul Radford <paul at radfordnz dot net>
|
||||
0.8.0 : Frédéric Martinot <fmartinot at gmail dot com>
|
||||
0.7.0 : Joel Koop <joel at tuxable dot com>
|
||||
0.6.0 : Juergen Flosbach <juergen dot flosbach at bigfoot dot com>
|
||||
0.5.0 : Rainer Krienke <rainer at krienke dot org>
|
||||
0.4.0 : Dudas Gabor <dudasg at freemail dot hu>
|
||||
0.3.2 : Julien Narboux <julien dot narboux at inria dot fr>
|
||||
0.3.1 : Maxime Delorme <maxime dot delorme at tiscali dot fr>
|
||||
0.3.0 : Caulier Gilles <caulier dot gilles at gmail dot com>
|
||||
0.2.0 : Joern Ahrens <kde at jokele dot de>
|
||||
0.1.0 : NONE
|
@ -0,0 +1,287 @@
|
||||
This file's purpose is to guide contributors and developers to help on the
|
||||
digiKam project.
|
||||
|
||||
========================================================================
|
||||
10 golden rules for starting with open source
|
||||
========================================================================
|
||||
|
||||
Before to contribute to digiKam project, please take a look to this link:
|
||||
|
||||
http://schlitt.info/applications/blog/index.php?/archives/541-10-golden-rules-for-starting-with-open-source.html
|
||||
|
||||
========================================================================
|
||||
Source code formatting:
|
||||
========================================================================
|
||||
|
||||
Adhere to this style guide strictly while adding new code to digiKam or
|
||||
working on existing code.
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
* Indentation length
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
Indent with 4 spaces exactly.
|
||||
|
||||
for eg:
|
||||
|
||||
void function()
|
||||
{
|
||||
....int a; // 4 spaces from beginning
|
||||
....for (int i=0; i<10; i++) // 4 spaces from beginning
|
||||
....{ // 4 spaces from beginning
|
||||
........a = i; // 4 spaces from previous indent block
|
||||
|
||||
Emacs by default will indent to 4 spaces
|
||||
vim users add this to you .vimrc
|
||||
set tabstop=4
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
* Tabs vs Spaces
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
Absolutely no tabs. Use a sensible editor which will convert tabs to spaces.
|
||||
This will reduce unnecessary changes in your cvs commits.
|
||||
|
||||
Emacs by default will convert tab to spaces.
|
||||
For vim users, add this to your .vimrc
|
||||
set expandtab
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
* Line length
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
Line length should never exceed 80 chars (unless really necessary - these
|
||||
cases are rare). Having long lines greatly reduces readability of code
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
* Bracketing
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
In almost all cases, {} brackets should start on a newline and should be
|
||||
aligned with previous line (follow the indentation spaces). for eg.
|
||||
|
||||
class A
|
||||
{ //new line
|
||||
...
|
||||
|
||||
for (int i=0; i<10; i++)
|
||||
{ //new line
|
||||
|
||||
if (a == foobar)
|
||||
{ //new line
|
||||
...
|
||||
}
|
||||
else
|
||||
{ // new line
|
||||
..
|
||||
}
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
* Positioning of Access modifiers
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
public, private, protected, public slots, ... should be aligned to the
|
||||
beginning of the line with no margin
|
||||
|
||||
class A
|
||||
{
|
||||
public: // aligned to left
|
||||
...
|
||||
private slots: // aligned to left
|
||||
|
||||
|
||||
Follow a consistent order in defining these attributes. The recommended
|
||||
order is public, protected (functions), private (functions),
|
||||
signals, public slots, protected slots, private slots, private (variables)
|
||||
|
||||
========================================================================
|
||||
Class, file and Variable names:
|
||||
========================================================================
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
* Class and filenames
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
- filenames should always be in lower-case
|
||||
- class names should match the filenames. Capitalize the first letter and
|
||||
other letters logically to improve readability
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
* Protected Member variables
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
- protected member variable names should always be of the form m_varName.
|
||||
- Captilize logically so that it becomes easy to read it. Do not capitalize
|
||||
the first letter after _ (Use m_varName not m_VarName)
|
||||
- variable names should be indicative of their functionality and also of
|
||||
the type they belong too if they are instances of qt widgets.
|
||||
for eg, QCheckBox* m_autoRotateCheckBox;
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
* Non-Member variables
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
- non-member variables should follow the same naming convention as the member
|
||||
variables, except for the leading m_
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
* Private Member variables
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
- private member variables must be stored in a d private container to reduce
|
||||
compilation time and improve binary compatibilty between digiKam components.
|
||||
See more informations how to use a 'd' private class at this url:
|
||||
|
||||
http://developer.kde.org/policies/librarypolicy.html
|
||||
|
||||
========================================================================
|
||||
Comments and Whitespace
|
||||
========================================================================
|
||||
|
||||
Use whitespaces liberally to improve readability. Add blank lines between logical
|
||||
sections of the code.
|
||||
|
||||
Comment as much as possible. Position comments at the beginning of the
|
||||
section/line you want to comment, NEVER at the end of the line
|
||||
|
||||
// put your comments here
|
||||
a = (b == foobar) ? 1 : -1;
|
||||
|
||||
a = (b == foobar) ? 1 : -1; // you are asking for trouble by putting comments here
|
||||
|
||||
|
||||
========================================================================
|
||||
Header files
|
||||
========================================================================
|
||||
|
||||
- Add copyright to top of every file. Use the same header than others digiKam
|
||||
source code.
|
||||
- Double inclusion protection defines are all upper case letters and are
|
||||
composed of the classname and a H suffix separated by underscore
|
||||
|
||||
#ifndef ANOTHERNICECLASS_H
|
||||
#define ANOTHERNICECLASS_H
|
||||
|
||||
class AnotherNiceClass
|
||||
{
|
||||
...
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
- Use forward declarations as much as possible.
|
||||
|
||||
class QFileInfo;
|
||||
|
||||
class A
|
||||
{
|
||||
....QFileInfo* m_fileInfo;
|
||||
|
||||
========================================================================
|
||||
General recommendations
|
||||
========================================================================
|
||||
|
||||
Please take a look into KDE contrib page tips before to write code/patches for
|
||||
digiKam project : http://techbase.kde.org/Contribute
|
||||
|
||||
Use the same .cpp/.h header than the rest of digiKam project.
|
||||
|
||||
Use a decent editor which does auto-indentation/syntax-highlighting for you.
|
||||
I personally use Emacs (Renchi) or Kdevelop (Gilles).
|
||||
There are excellent initializer scripts in the kdesdk
|
||||
package for xemacs and vim which can substantially increase your productivity.
|
||||
|
||||
Just to give a taste of what i can do with emacs (and kdesdk):
|
||||
|
||||
* automatically insert copyright (and ifdefs) in new files.
|
||||
* insertion of class function definitions for declared class
|
||||
functions in header with one keystroke
|
||||
* switch between header and declaration files with one keystroke
|
||||
* go to corresponding definition/declaration with one keystroke
|
||||
* tab completion of variable/function names already declared.
|
||||
|
||||
========================================================================
|
||||
GDB Backtrace
|
||||
========================================================================
|
||||
|
||||
If you found a context to crash digiKam, you can provide a backtrace using GDB debugger.
|
||||
digiKam need to be compiled with all debug info else the backtrace will not suitable.
|
||||
There is a configure option for that:
|
||||
|
||||
# make -f Makefile.cvs
|
||||
# ./configure --enable-debug=full
|
||||
# make
|
||||
# su
|
||||
# make install.
|
||||
|
||||
To make a backtrace with GDB use following command:
|
||||
|
||||
# gdb digikam
|
||||
> run
|
||||
> ...
|
||||
> _crash here_
|
||||
> ...
|
||||
> bt
|
||||
> _the backtrace is here_
|
||||
> quit
|
||||
|
||||
Post this backtrace at the right place (B.K.O or devel ML) for investigations by developers.
|
||||
|
||||
========================================================================
|
||||
Memory leak
|
||||
========================================================================
|
||||
|
||||
To check any memory leak problem in digiKam, valgrind is your friend (http://valgrind.org)
|
||||
Try this command line to use with valgrind :
|
||||
|
||||
valgrind --tool=memcheck --leak-check=full --error-limit=no digikam
|
||||
|
||||
========================================================================
|
||||
Profiling with cachegrind
|
||||
========================================================================
|
||||
|
||||
Valgrind also includes a tool to find out in which parts of your code time is spent.
|
||||
|
||||
valgrind --tool=callgrind digikam
|
||||
|
||||
Profiling can be disabled at startup to limit the output to the code you are interested in.
|
||||
Start with
|
||||
|
||||
valgrind --tool=callgrind --instr-atstart=no digikam
|
||||
|
||||
and prepare the situation you want to profile. Then, in another console, start profiling with
|
||||
"callgrind_control -i on" and, after the situation has passed, request a profile dump with
|
||||
"callgrind_control -d".
|
||||
The resulting callgrind.out files need to be viewed with the kcachegrind program, e.g.:
|
||||
|
||||
kcachegrind callgrind.out.16693.1
|
||||
|
||||
=================================================================================
|
||||
API Documentation Validation, User Documentation Validation, Source Code Checking
|
||||
=================================================================================
|
||||
|
||||
The following site check on a dayly basis for the a.m. errors:
|
||||
www.englishbreakfastnetwork.org/krazy/
|
||||
|
||||
It can be very useful, in particular before major releases.
|
||||
Don't trust it blindly! Sometimes they propose too advanced modifications that are no compatible with the prevailant include files.
|
||||
|
||||
========================================================================
|
||||
Usability issues
|
||||
========================================================================
|
||||
|
||||
OpenUsability project has define default menu structure and keyboard shortcuts:
|
||||
|
||||
http://wiki.openusability.org/guidelines/index.php/Appendices:Keyboard_Shortcuts
|
||||
|
||||
========================================================================
|
||||
Generate API documentation
|
||||
========================================================================
|
||||
|
||||
To generate API documentation, you need to install:
|
||||
|
||||
- Doxygen program (http://www.doxygen.org).
|
||||
- Dot program (http://www.graphviz.org)
|
||||
|
||||
Go to 'project' sub-folder and just run doxygen binary program. A new subfolder
|
||||
named 'api' will be create. Warning, this can take a while.
|
@ -0,0 +1,183 @@
|
||||
For list of dependencies, see the README file
|
||||
|
||||
Basic Installation
|
||||
==================
|
||||
|
||||
These are generic installation instructions.
|
||||
|
||||
The `configure' shell script attempts to guess correct values for
|
||||
various system-dependent variables used during compilation. It uses
|
||||
those values to create a `Makefile' in each directory of the package.
|
||||
It may also create one or more `.h' files containing system-dependent
|
||||
definitions. Finally, it creates a shell script `config.status' that
|
||||
you can run in the future to recreate the current configuration, a file
|
||||
`config.cache' that saves the results of its tests to speed up
|
||||
reconfiguring, and a file `config.log' containing compiler output
|
||||
(useful mainly for debugging `configure').
|
||||
|
||||
If you need to do unusual things to compile the package, please try
|
||||
to figure out how `configure' could check whether to do them, and mail
|
||||
diffs or instructions to the address given in the `README' so they can
|
||||
be considered for the next release. If at some point `config.cache'
|
||||
contains results you don't want to keep, you may remove or edit it.
|
||||
|
||||
The file `configure.in' is used to create `configure' by a program
|
||||
called `autoconf'. You only need `configure.in' if you want to change
|
||||
it or regenerate `configure' using a newer version of `autoconf'.
|
||||
|
||||
The simplest way to compile this package is:
|
||||
|
||||
1. `cd' to the directory containing the package's source code and type
|
||||
`./configure' to configure the package for your system. If you're
|
||||
using `csh' on an old version of System V, you might need to type
|
||||
`sh ./configure' instead to prevent `csh' from trying to execute
|
||||
`configure' itself.
|
||||
|
||||
Running `configure' takes awhile. While running, it prints some
|
||||
messages telling which features it is checking for.
|
||||
|
||||
2. Type `make' to compile the package.
|
||||
|
||||
3. Optionally, type `make check' to run any self-tests that come with
|
||||
the package.
|
||||
|
||||
4. Type `make install' to install the programs and any data files and
|
||||
documentation.
|
||||
|
||||
5. You can remove the program binaries and object files from the
|
||||
source code directory by typing `make clean'. To also remove the
|
||||
files that `configure' created (so you can compile the package for
|
||||
a different kind of computer), type `make distclean'. There is
|
||||
also a `make maintainer-clean' target, but that is intended mainly
|
||||
for the package's developers. If you use it, you may have to get
|
||||
all sorts of other programs in order to regenerate files that came
|
||||
with the distribution.
|
||||
|
||||
Compilers and Options
|
||||
=====================
|
||||
|
||||
Some systems require unusual options for compilation or linking that
|
||||
the `configure' script does not know about. You can give `configure'
|
||||
initial values for variables by setting them in the environment. Using
|
||||
a Bourne-compatible shell, you can do that on the command line like
|
||||
this:
|
||||
CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
|
||||
|
||||
Or on systems that have the `env' program, you can do it like this:
|
||||
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
|
||||
|
||||
Compiling For Multiple Architectures
|
||||
====================================
|
||||
|
||||
You can compile the package for more than one kind of computer at the
|
||||
same time, by placing the object files for each architecture in their
|
||||
own directory. To do this, you must use a version of `make' that
|
||||
supports the `VPATH' variable, such as GNU `make'. `cd' to the
|
||||
directory where you want the object files and executables to go and run
|
||||
the `configure' script. `configure' automatically checks for the
|
||||
source code in the directory that `configure' is in and in `..'.
|
||||
|
||||
If you have to use a `make' that does not supports the `VPATH'
|
||||
variable, you have to compile the package for one architecture at a time
|
||||
in the source code directory. After you have installed the package for
|
||||
one architecture, use `make distclean' before reconfiguring for another
|
||||
architecture.
|
||||
|
||||
Installation Names
|
||||
==================
|
||||
|
||||
By default, `make install' will install the package's files in
|
||||
`/usr/local/bin', `/usr/local/man', etc. You can specify an
|
||||
installation prefix other than `/usr/local' by giving `configure' the
|
||||
option `--prefix=PATH'.
|
||||
|
||||
You can specify separate installation prefixes for
|
||||
architecture-specific files and architecture-independent files. If you
|
||||
give `configure' the option `--exec-prefix=PATH', the package will use
|
||||
PATH as the prefix for installing programs and libraries.
|
||||
Documentation and other data files will still use the regular prefix.
|
||||
|
||||
In addition, if you use an unusual directory layout you can give
|
||||
options like `--bindir=PATH' to specify different values for particular
|
||||
kinds of files. Run `configure --help' for a list of the directories
|
||||
you can set and what kinds of files go in them.
|
||||
|
||||
If the package supports it, you can cause programs to be installed
|
||||
with an extra prefix or suffix on their names by giving `configure' the
|
||||
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
||||
|
||||
Optional Features
|
||||
=================
|
||||
|
||||
Some packages pay attention to `--enable-FEATURE' options to
|
||||
`configure', where FEATURE indicates an optional part of the package.
|
||||
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
||||
is something like `gnu-as' or `x' (for the X Window System). The
|
||||
`README' should mention any `--enable-' and `--with-' options that the
|
||||
package recognizes.
|
||||
|
||||
For packages that use the X Window System, `configure' can usually
|
||||
find the X include and library files automatically, but if it doesn't,
|
||||
you can use the `configure' options `--x-includes=DIR' and
|
||||
`--x-libraries=DIR' to specify their locations.
|
||||
|
||||
Specifying the System Type
|
||||
==========================
|
||||
|
||||
There may be some features `configure' can not figure out
|
||||
automatically, but needs to determine by the type of host the package
|
||||
will run on. Usually `configure' can figure that out, but if it prints
|
||||
a message saying it can not guess the host type, give it the
|
||||
`--host=TYPE' option. TYPE can either be a short name for the system
|
||||
type, such as `sun4', or a canonical name with three fields:
|
||||
CPU-COMPANY-SYSTEM
|
||||
|
||||
See the file `config.sub' for the possible values of each field. If
|
||||
`config.sub' isn't included in this package, then this package doesn't
|
||||
need to know the host type.
|
||||
|
||||
If you are building compiler tools for cross-compiling, you can also
|
||||
use the `--target=TYPE' option to select the type of system they will
|
||||
produce code for and the `--build=TYPE' option to select the type of
|
||||
system on which you are compiling the package.
|
||||
|
||||
Sharing Defaults
|
||||
================
|
||||
|
||||
If you want to set default values for `configure' scripts to share,
|
||||
you can create a site shell script called `config.site' that gives
|
||||
default values for variables like `CC', `cache_file', and `prefix'.
|
||||
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
||||
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
||||
`CONFIG_SITE' environment variable to the location of the site script.
|
||||
A warning: not all `configure' scripts look for a site script.
|
||||
|
||||
Operation Controls
|
||||
==================
|
||||
|
||||
`configure' recognizes the following options to control how it
|
||||
operates.
|
||||
|
||||
`--cache-file=FILE'
|
||||
Use and save the results of the tests in FILE instead of
|
||||
`./config.cache'. Set FILE to `/dev/null' to disable caching, for
|
||||
debugging `configure'.
|
||||
|
||||
`--help'
|
||||
Print a summary of the options to `configure', and exit.
|
||||
|
||||
`--quiet'
|
||||
`--silent'
|
||||
`-q'
|
||||
Do not print messages saying which checks are being made.
|
||||
|
||||
`--srcdir=DIR'
|
||||
Look for the package's source code in directory DIR. Usually
|
||||
`configure' can determine that directory automatically.
|
||||
|
||||
`--version'
|
||||
Print the version of Autoconf used to generate the `configure'
|
||||
script, and exit.
|
||||
|
||||
`configure' also accepts some other, not widely useful, options.
|
||||
|
@ -0,0 +1,11 @@
|
||||
/** @mainpage Extragear - Graphics
|
||||
*
|
||||
* The Graphics Extragear contains the following applications:
|
||||
*
|
||||
* - <a href="digikam/digikam/html/">digikam</a>
|
||||
* - gwenview
|
||||
* - kphotoalbum
|
||||
* - kst
|
||||
* - showimg
|
||||
*
|
||||
*/
|
@ -0,0 +1,10 @@
|
||||
# COMPILE_BEFORE_digikamimageplugins = digikam
|
||||
|
||||
AUTOMAKE_OPTIONS = foreign 1.6.1
|
||||
|
||||
include admin/deps.am
|
||||
include admin/Doxyfile.am
|
||||
|
||||
|
||||
$(top_srcdir)/acinclude.m4:
|
||||
SUBDIRS=$(TOPSUBDIRS)
|
@ -0,0 +1,9 @@
|
||||
COMPILE_BEFORE_digikamimageplugins = digikam
|
||||
|
||||
AUTOMAKE_OPTIONS = foreign 1.6.1
|
||||
|
||||
include admin/deps.am
|
||||
include admin/Doxyfile.am
|
||||
|
||||
$(top_srcdir)/acinclude.m4: $(top_srcdir)/*/*.m4
|
||||
|
@ -0,0 +1,14 @@
|
||||
all:
|
||||
@echo "This Makefile is only for the CVS repository"
|
||||
@echo "This will be deleted before making the distribution"
|
||||
@echo ""
|
||||
@if test ! -d admin; then \
|
||||
echo "Please recheckout this module!" ;\
|
||||
echo "for cvs: use checkout once and after that update again" ;\
|
||||
echo "for cvsup: checkout kde-common from cvsup and" ;\
|
||||
echo " link kde-common/admin to ./admin" ;\
|
||||
exit 1 ;\
|
||||
fi
|
||||
$(MAKE) -f admin/Makefile.common cvs
|
||||
|
||||
.SILENT:
|
@ -0,0 +1,8 @@
|
||||
**********************************************************************************************
|
||||
digiKam 0.9.6 - Release date: 2009-07-03
|
||||
|
||||
NEW FEATURES:
|
||||
|
||||
BUGFIXES FROM KDE BUGZILLA (alias B.K.O | http://bugs.kde.org):
|
||||
|
||||
|
@ -0,0 +1,132 @@
|
||||
DIGIKAM - THE PHOTO MANAGEMENT FOR THE MASSES
|
||||
|
||||
-- ABOUT -------------------------------------------------------------
|
||||
|
||||
digiKam is an easy to use and powerful digital photo management
|
||||
application, which makes importing, organizing and manipulating
|
||||
digital photos a "snap". An easy to use interface is provided
|
||||
to connect to your digital camera, preview the images and download
|
||||
and/or delete them.
|
||||
|
||||
The digiKam built-in image editor makes the common photo correction
|
||||
a simple task. The image editor is extensible via plugins and,
|
||||
since the digikamimageplugins project has been merged to digiKam core
|
||||
since release 0.9.2, all useful image editor plugins are available
|
||||
in the base installation.
|
||||
|
||||
digiKam can also make use of the KIPI image handling plugins to
|
||||
extend its capabilities even further for photo manipulations,
|
||||
import and export, etc. The kipi-plugins package contains many
|
||||
very useful extentions.
|
||||
|
||||
digiKam is based in part on the work of the Independent JPEG Group.
|
||||
|
||||
|
||||
-- AUTHORS ------------------------------------------------------------
|
||||
|
||||
See AUTHORS file for details.
|
||||
|
||||
|
||||
-- RELATED URLS -------------------------------------------------------
|
||||
|
||||
digiKam : http://www.digikam.org
|
||||
kipi-plugins : http://www.kipi-plugins.org
|
||||
|
||||
-- CONTACT ------------------------------------------------------------
|
||||
|
||||
If you have questions, comments, suggestions to make do email at :
|
||||
|
||||
digikam-users@kde.org
|
||||
|
||||
If you want contribute to digiKam developments do email at :
|
||||
|
||||
digikam-devel@kde.org
|
||||
|
||||
IRC channel from irc.freenode.org server: #digikam
|
||||
|
||||
-- BUG REPORTS --------------------------------------------------------
|
||||
|
||||
IMPORTANT : the bug reports and wishlist entries are hosted by the KDE bug report
|
||||
system which can be reached from the standard KDE help menu of digiKam.
|
||||
A mail will automaticly be sent to the digikam development mailing list.
|
||||
There is no need to contact directly the digikam mailing list for a bug report
|
||||
or a devel wish.
|
||||
|
||||
The current bugs and devel wishes reported to the bugilla servers can be seen
|
||||
at these urls :
|
||||
|
||||
* digiKam (KDE bugzilla):
|
||||
|
||||
http://bugs.kde.org/buglist.cgi?product=digikam&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED
|
||||
|
||||
* Image Editor plugins (KDE bugzilla):
|
||||
|
||||
http://bugs.kde.org/buglist.cgi?product=digikamimageplugins&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED
|
||||
|
||||
* Showfoto (KDE bugzilla):
|
||||
|
||||
http://bugs.kde.org/buglist.cgi?product=showfoto&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED
|
||||
|
||||
* Kipi-plugins (KDE bugzilla):
|
||||
|
||||
http://bugs.kde.org/buglist.cgi?product=kipiplugins&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED
|
||||
|
||||
Extra Bugzilla servers for shared libs used by digiKam :
|
||||
|
||||
* GPhoto2 library (sourceforge bugzilla):
|
||||
|
||||
http://gphoto.org/bugs
|
||||
|
||||
* Exiv2 library (robotbattle bugzilla):
|
||||
|
||||
http://dev.robotbattle.com/bugs/main_page.php
|
||||
|
||||
|
||||
-- DEPENDENCIES -------------------------------------------------------
|
||||
|
||||
AutoConf >= 2.5.x http://www.gnu.org/software/autoconf
|
||||
AutoMake >= 1.7.x http://www.gnu.org/software/automake
|
||||
libqt >= 3.3.x http://www.qtsoftware.com
|
||||
libkde >= 3.4.x (>=3.5.x recommended) http://www.kde.org
|
||||
libgphoto2 >= 2.x.x (>=2.4.x recommended) http://www.gphoto.org
|
||||
libkipi >= 0.1.5 (>=0.1.6 recommended) http://www.kipi-plugins.org
|
||||
libkexiv2 >= 0.1.6 (>=0.1.7 recommended) http://www.kipi-plugins.org
|
||||
libkdcraw >= 0.1.5 http://www.kipi-plugins.org
|
||||
liblcms >= 1.14.x http://www.littlecms.com
|
||||
libtiff >= 3.6.x (>=3.8.2 recommended) http://www.remotesensing.org/libtiff
|
||||
libpng >= 1.2.x http://www.libpng.org/pub/png/libpng.html
|
||||
libjasper >= 1.7.x http://www.ece.uvic.ca/~mdadams/jasper
|
||||
libsqlite3 >= 3.5.9 (optional) http://www.sqlite.org
|
||||
|
||||
Note : all library dependencies require development and binary packages installed on your
|
||||
computer to compile digiKam.
|
||||
|
||||
|
||||
-- INSTALLATION --------------------------------------------------------
|
||||
|
||||
In the source directory do :
|
||||
|
||||
1) export WANT_AUTOCONF_2_5=1
|
||||
2) export KDEDIR=KDE_installation_dir_on_your_system
|
||||
3) if you are installing libkipi in a non-standard location
|
||||
let pkg-config know about their paths:
|
||||
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/path/to/installation/lib/pkgconfig
|
||||
4) make -f Makefile.cvs
|
||||
5) ./configure
|
||||
6) make
|
||||
7) su
|
||||
8) make install
|
||||
|
||||
More specific compilation and installation options can be used with the 'configure' script.
|
||||
Get more information with the './configure --help' command line.
|
||||
|
||||
Note : use the '--enable-debug=full' option with the configure script to provide
|
||||
all needed information in a bug report.
|
||||
|
||||
|
||||
-- DONATE MONEY --------------------------------------------------------
|
||||
|
||||
If you love digiKam, you can help developpers to buy new photo devices to test
|
||||
and implemente new features. Thanks in advance for your generous donations.
|
||||
|
||||
For more informations, look at this url : http://www.digikam.org/?q=donation
|
@ -0,0 +1,63 @@
|
||||
------------------------------------------------------------------------------------
|
||||
0.9.x TODO LIST
|
||||
------------------------------------------------------------------------------------
|
||||
|
||||
* right hand side sidebar (allee):
|
||||
o Select an album
|
||||
o click on some empty space in the thumbnail view (-> selected image changes from blue selection
|
||||
background to dotted line (aka still has keyboard focus, right?)
|
||||
o Now select tabs in right hand side:
|
||||
+ Properties, metadata..: everyhing is disabled
|
||||
+ comments/tags tab on the other hand shows info about the image with keyboard focus
|
||||
Shouldn't every tab show now it's info in this case? (alternatively disable comments/tags too)
|
||||
|
||||
* ImageEditor:
|
||||
|
||||
- Polish keyboard focus in sidebar when navigate between album pictures.
|
||||
|
||||
|
||||
* B.K.O files to fix :
|
||||
|
||||
==> 113797 : Main interface : Little thumbnail refresh problem.
|
||||
==> 121804 : Main interface : Image overwritten with blank file when importing into same folder.
|
||||
|
||||
* Media support:
|
||||
|
||||
o Testing 3 plug cases with GPhoto camera
|
||||
1) digikam is not running and camera is pluged in
|
||||
-> media action dialog pops up and digikam should
|
||||
be in the list.
|
||||
2) digikam is already running when camera is plug in
|
||||
-> as 1) but already instance should be used
|
||||
(uniconize, switchToDesktop and bringToFront applied
|
||||
if necessary
|
||||
3) digikam is started/activated after action dialog was closed and
|
||||
camera is already connected
|
||||
-> camera menu allows to
|
||||
select the 'dynamicly added camera menu item
|
||||
to start download dialog
|
||||
ditto for unmounting in usm case
|
||||
|
||||
------------------------------------------------------------------------------------
|
||||
LATER 0.9.4 TODO LIST
|
||||
------------------------------------------------------------------------------------
|
||||
|
||||
* Improving metadata support:
|
||||
- Writing Metadata into PNG file like JPEG (Exiv2).
|
||||
- Writing Metadata into TIFF file like JPEG (Exiv2).
|
||||
- Writing Metadata to DNG format (=TIFF see DNG sdk from Adobe)
|
||||
- Writing Metadata to JPEG 2k files like JPEG (Exiv2).
|
||||
|
||||
* Database:
|
||||
- Implement versioning of picture based on Image editor 'Action List' feature.
|
||||
|
||||
* New CD/DVD album folders+database backup/restore tool :
|
||||
- Take a look of music database backup in amarok.
|
||||
- Take a look of image database backup in showimg.
|
||||
|
||||
* Showfoto improvements :
|
||||
- Add DBUS interface.
|
||||
- Add Support KUrl for better konqueror interactions.
|
||||
|
||||
* General:
|
||||
- Custom ordering of images
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,881 @@
|
||||
# generated automatically by aclocal 1.10.1 -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
|
||||
# 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
m4_ifndef([AC_AUTOCONF_VERSION],
|
||||
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
|
||||
m4_if(AC_AUTOCONF_VERSION, [2.61],,
|
||||
[m4_warning([this file was generated for autoconf 2.61.
|
||||
You have another version of autoconf. It may work, but is not guaranteed to.
|
||||
If you have problems, you may need to regenerate the build system entirely.
|
||||
To do so, use the procedure documented by the package, typically `autoreconf'.])])
|
||||
|
||||
# Copyright (C) 2002, 2003, 2005, 2006, 2007 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# AM_AUTOMAKE_VERSION(VERSION)
|
||||
# ----------------------------
|
||||
# Automake X.Y traces this macro to ensure aclocal.m4 has been
|
||||
# generated from the m4 files accompanying Automake X.Y.
|
||||
# (This private macro should not be called outside this file.)
|
||||
AC_DEFUN([AM_AUTOMAKE_VERSION],
|
||||
[am__api_version='1.10'
|
||||
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
|
||||
dnl require some minimum version. Point them to the right macro.
|
||||
m4_if([$1], [1.10.1], [],
|
||||
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
|
||||
])
|
||||
|
||||
# _AM_AUTOCONF_VERSION(VERSION)
|
||||
# -----------------------------
|
||||
# aclocal traces this macro to find the Autoconf version.
|
||||
# This is a private macro too. Using m4_define simplifies
|
||||
# the logic in aclocal, which can simply ignore this definition.
|
||||
m4_define([_AM_AUTOCONF_VERSION], [])
|
||||
|
||||
# AM_SET_CURRENT_AUTOMAKE_VERSION
|
||||
# -------------------------------
|
||||
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
|
||||
# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
|
||||
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
|
||||
[AM_AUTOMAKE_VERSION([1.10.1])dnl
|
||||
m4_ifndef([AC_AUTOCONF_VERSION],
|
||||
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
|
||||
_AM_AUTOCONF_VERSION(AC_AUTOCONF_VERSION)])
|
||||
|
||||
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
|
||||
# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
|
||||
# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
|
||||
#
|
||||
# Of course, Automake must honor this variable whenever it calls a
|
||||
# tool from the auxiliary directory. The problem is that $srcdir (and
|
||||
# therefore $ac_aux_dir as well) can be either absolute or relative,
|
||||
# depending on how configure is run. This is pretty annoying, since
|
||||
# it makes $ac_aux_dir quite unusable in subdirectories: in the top
|
||||
# source directory, any form will work fine, but in subdirectories a
|
||||
# relative path needs to be adjusted first.
|
||||
#
|
||||
# $ac_aux_dir/missing
|
||||
# fails when called from a subdirectory if $ac_aux_dir is relative
|
||||
# $top_srcdir/$ac_aux_dir/missing
|
||||
# fails if $ac_aux_dir is absolute,
|
||||
# fails when called from a subdirectory in a VPATH build with
|
||||
# a relative $ac_aux_dir
|
||||
#
|
||||
# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
|
||||
# are both prefixed by $srcdir. In an in-source build this is usually
|
||||
# harmless because $srcdir is `.', but things will broke when you
|
||||
# start a VPATH build or use an absolute $srcdir.
|
||||
#
|
||||
# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
|
||||
# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
|
||||
# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
|
||||
# and then we would define $MISSING as
|
||||
# MISSING="\${SHELL} $am_aux_dir/missing"
|
||||
# This will work as long as MISSING is not called from configure, because
|
||||
# unfortunately $(top_srcdir) has no meaning in configure.
|
||||
# However there are other variables, like CC, which are often used in
|
||||
# configure, and could therefore not use this "fixed" $ac_aux_dir.
|
||||
#
|
||||
# Another solution, used here, is to always expand $ac_aux_dir to an
|
||||
# absolute PATH. The drawback is that using absolute paths prevent a
|
||||
# configured tree to be moved without reconfiguration.
|
||||
|
||||
AC_DEFUN([AM_AUX_DIR_EXPAND],
|
||||
[dnl Rely on autoconf to set up CDPATH properly.
|
||||
AC_PREREQ([2.50])dnl
|
||||
# expand $ac_aux_dir to an absolute path
|
||||
am_aux_dir=`cd $ac_aux_dir && pwd`
|
||||
])
|
||||
|
||||
# AM_CONDITIONAL -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006
|
||||
# Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 8
|
||||
|
||||
# AM_CONDITIONAL(NAME, SHELL-CONDITION)
|
||||
# -------------------------------------
|
||||
# Define a conditional.
|
||||
AC_DEFUN([AM_CONDITIONAL],
|
||||
[AC_PREREQ(2.52)dnl
|
||||
ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
|
||||
[$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
|
||||
AC_SUBST([$1_TRUE])dnl
|
||||
AC_SUBST([$1_FALSE])dnl
|
||||
_AM_SUBST_NOTMAKE([$1_TRUE])dnl
|
||||
_AM_SUBST_NOTMAKE([$1_FALSE])dnl
|
||||
if $2; then
|
||||
$1_TRUE=
|
||||
$1_FALSE='#'
|
||||
else
|
||||
$1_TRUE='#'
|
||||
$1_FALSE=
|
||||
fi
|
||||
AC_CONFIG_COMMANDS_PRE(
|
||||
[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
|
||||
AC_MSG_ERROR([[conditional "$1" was never defined.
|
||||
Usually this means the macro was only invoked conditionally.]])
|
||||
fi])])
|
||||
|
||||
# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
|
||||
# Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 9
|
||||
|
||||
# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
|
||||
# written in clear, in which case automake, when reading aclocal.m4,
|
||||
# will think it sees a *use*, and therefore will trigger all it's
|
||||
# C support machinery. Also note that it means that autoscan, seeing
|
||||
# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
|
||||
|
||||
|
||||
# _AM_DEPENDENCIES(NAME)
|
||||
# ----------------------
|
||||
# See how the compiler implements dependency checking.
|
||||
# NAME is "CC", "CXX", "GCJ", or "OBJC".
|
||||
# We try a few techniques and use that to set a single cache variable.
|
||||
#
|
||||
# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
|
||||
# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
|
||||
# dependency, and given that the user is not expected to run this macro,
|
||||
# just rely on AC_PROG_CC.
|
||||
AC_DEFUN([_AM_DEPENDENCIES],
|
||||
[AC_REQUIRE([AM_SET_DEPDIR])dnl
|
||||
AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
|
||||
AC_REQUIRE([AM_MAKE_INCLUDE])dnl
|
||||
AC_REQUIRE([AM_DEP_TRACK])dnl
|
||||
|
||||
ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
|
||||
[$1], CXX, [depcc="$CXX" am_compiler_list=],
|
||||
[$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
|
||||
[$1], UPC, [depcc="$UPC" am_compiler_list=],
|
||||
[$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
|
||||
[depcc="$$1" am_compiler_list=])
|
||||
|
||||
AC_CACHE_CHECK([dependency style of $depcc],
|
||||
[am_cv_$1_dependencies_compiler_type],
|
||||
[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
|
||||
# We make a subdir and do the tests there. Otherwise we can end up
|
||||
# making bogus files that we don't know about and never remove. For
|
||||
# instance it was reported that on HP-UX the gcc test will end up
|
||||
# making a dummy file named `D' -- because `-MD' means `put the output
|
||||
# in D'.
|
||||
mkdir conftest.dir
|
||||
# Copy depcomp to subdir because otherwise we won't find it if we're
|
||||
# using a relative directory.
|
||||
cp "$am_depcomp" conftest.dir
|
||||
cd conftest.dir
|
||||
# We will build objects and dependencies in a subdirectory because
|
||||
# it helps to detect inapplicable dependency modes. For instance
|
||||
# both Tru64's cc and ICC support -MD to output dependencies as a
|
||||
# side effect of compilation, but ICC will put the dependencies in
|
||||
# the current directory while Tru64 will put them in the object
|
||||
# directory.
|
||||
mkdir sub
|
||||
|
||||
am_cv_$1_dependencies_compiler_type=none
|
||||
if test "$am_compiler_list" = ""; then
|
||||
am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
|
||||
fi
|
||||
for depmode in $am_compiler_list; do
|
||||
# Setup a source with many dependencies, because some compilers
|
||||
# like to wrap large dependency lists on column 80 (with \), and
|
||||
# we should not choose a depcomp mode which is confused by this.
|
||||
#
|
||||
# We need to recreate these files for each test, as the compiler may
|
||||
# overwrite some of them when testing with obscure command lines.
|
||||
# This happens at least with the AIX C compiler.
|
||||
: > sub/conftest.c
|
||||
for i in 1 2 3 4 5 6; do
|
||||
echo '#include "conftst'$i'.h"' >> sub/conftest.c
|
||||
# Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
|
||||
# Solaris 8's {/usr,}/bin/sh.
|
||||
touch sub/conftst$i.h
|
||||
done
|
||||
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
|
||||
|
||||
case $depmode in
|
||||
nosideeffect)
|
||||
# after this tag, mechanisms are not by side-effect, so they'll
|
||||
# only be used when explicitly requested
|
||||
if test "x$enable_dependency_tracking" = xyes; then
|
||||
continue
|
||||
else
|
||||
break
|
||||
fi
|
||||
;;
|
||||
none) break ;;
|
||||
esac
|
||||
# We check with `-c' and `-o' for the sake of the "dashmstdout"
|
||||
# mode. It turns out that the SunPro C++ compiler does not properly
|
||||
# handle `-M -o', and we need to detect this.
|
||||
if depmode=$depmode \
|
||||
source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
|
||||
depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
|
||||
$SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
|
||||
>/dev/null 2>conftest.err &&
|
||||
grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
|
||||
grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
|
||||
grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
|
||||
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
|
||||
# icc doesn't choke on unknown options, it will just issue warnings
|
||||
# or remarks (even with -Werror). So we grep stderr for any message
|
||||
# that says an option was ignored or not supported.
|
||||
# When given -MP, icc 7.0 and 7.1 complain thusly:
|
||||
# icc: Command line warning: ignoring option '-M'; no argument required
|
||||
# The diagnosis changed in icc 8.0:
|
||||
# icc: Command line remark: option '-MP' not supported
|
||||
if (grep 'ignoring option' conftest.err ||
|
||||
grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
|
||||
am_cv_$1_dependencies_compiler_type=$depmode
|
||||
break
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
cd ..
|
||||
rm -rf conftest.dir
|
||||
else
|
||||
am_cv_$1_dependencies_compiler_type=none
|
||||
fi
|
||||
])
|
||||
AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
|
||||
AM_CONDITIONAL([am__fastdep$1], [
|
||||
test "x$enable_dependency_tracking" != xno \
|
||||
&& test "$am_cv_$1_dependencies_compiler_type" = gcc3])
|
||||
])
|
||||
|
||||
|
||||
# AM_SET_DEPDIR
|
||||
# -------------
|
||||
# Choose a directory name for dependency files.
|
||||
# This macro is AC_REQUIREd in _AM_DEPENDENCIES
|
||||
AC_DEFUN([AM_SET_DEPDIR],
|
||||
[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
|
||||
AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
|
||||
])
|
||||
|
||||
|
||||
# AM_DEP_TRACK
|
||||
# ------------
|
||||
AC_DEFUN([AM_DEP_TRACK],
|
||||
[AC_ARG_ENABLE(dependency-tracking,
|
||||
[ --disable-dependency-tracking speeds up one-time build
|
||||
--enable-dependency-tracking do not reject slow dependency extractors])
|
||||
if test "x$enable_dependency_tracking" != xno; then
|
||||
am_depcomp="$ac_aux_dir/depcomp"
|
||||
AMDEPBACKSLASH='\'
|
||||
fi
|
||||
AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
|
||||
AC_SUBST([AMDEPBACKSLASH])dnl
|
||||
_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
|
||||
])
|
||||
|
||||
# Generate code to set up dependency tracking. -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
|
||||
# Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
#serial 3
|
||||
|
||||
# _AM_OUTPUT_DEPENDENCY_COMMANDS
|
||||
# ------------------------------
|
||||
AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
|
||||
[for mf in $CONFIG_FILES; do
|
||||
# Strip MF so we end up with the name of the file.
|
||||
mf=`echo "$mf" | sed -e 's/:.*$//'`
|
||||
# Check whether this is an Automake generated Makefile or not.
|
||||
# We used to match only the files named `Makefile.in', but
|
||||
# some people rename them; so instead we look at the file content.
|
||||
# Grep'ing the first line is not enough: some people post-process
|
||||
# each Makefile.in and add a new line on top of each file to say so.
|
||||
# Grep'ing the whole file is not good either: AIX grep has a line
|
||||
# limit of 2048, but all sed's we know have understand at least 4000.
|
||||
if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
|
||||
dirpart=`AS_DIRNAME("$mf")`
|
||||
else
|
||||
continue
|
||||
fi
|
||||
# Extract the definition of DEPDIR, am__include, and am__quote
|
||||
# from the Makefile without running `make'.
|
||||
DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
|
||||
test -z "$DEPDIR" && continue
|
||||
am__include=`sed -n 's/^am__include = //p' < "$mf"`
|
||||
test -z "am__include" && continue
|
||||
am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
|
||||
# When using ansi2knr, U may be empty or an underscore; expand it
|
||||
U=`sed -n 's/^U = //p' < "$mf"`
|
||||
# Find all dependency output files, they are included files with
|
||||
# $(DEPDIR) in their names. We invoke sed twice because it is the
|
||||
# simplest approach to changing $(DEPDIR) to its actual value in the
|
||||
# expansion.
|
||||
for file in `sed -n "
|
||||
s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
|
||||
sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
|
||||
# Make sure the directory exists.
|
||||
test -f "$dirpart/$file" && continue
|
||||
fdir=`AS_DIRNAME(["$file"])`
|
||||
AS_MKDIR_P([$dirpart/$fdir])
|
||||
# echo "creating $dirpart/$file"
|
||||
echo '# dummy' > "$dirpart/$file"
|
||||
done
|
||||
done
|
||||
])# _AM_OUTPUT_DEPENDENCY_COMMANDS
|
||||
|
||||
|
||||
# AM_OUTPUT_DEPENDENCY_COMMANDS
|
||||
# -----------------------------
|
||||
# This macro should only be invoked once -- use via AC_REQUIRE.
|
||||
#
|
||||
# This code is only required when automatic dependency tracking
|
||||
# is enabled. FIXME. This creates each `.P' file that we will
|
||||
# need in order to bootstrap the dependency handling code.
|
||||
AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
|
||||
[AC_CONFIG_COMMANDS([depfiles],
|
||||
[test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
|
||||
[AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
|
||||
])
|
||||
|
||||
# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
|
||||
# Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 8
|
||||
|
||||
# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS.
|
||||
AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
|
||||
|
||||
# Do all the work for Automake. -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
|
||||
# 2005, 2006, 2008 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 13
|
||||
|
||||
# This macro actually does too much. Some checks are only needed if
|
||||
# your package does certain things. But this isn't really a big deal.
|
||||
|
||||
# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
|
||||
# AM_INIT_AUTOMAKE([OPTIONS])
|
||||
# -----------------------------------------------
|
||||
# The call with PACKAGE and VERSION arguments is the old style
|
||||
# call (pre autoconf-2.50), which is being phased out. PACKAGE
|
||||
# and VERSION should now be passed to AC_INIT and removed from
|
||||
# the call to AM_INIT_AUTOMAKE.
|
||||
# We support both call styles for the transition. After
|
||||
# the next Automake release, Autoconf can make the AC_INIT
|
||||
# arguments mandatory, and then we can depend on a new Autoconf
|
||||
# release and drop the old call support.
|
||||
AC_DEFUN([AM_INIT_AUTOMAKE],
|
||||
[AC_PREREQ([2.60])dnl
|
||||
dnl Autoconf wants to disallow AM_ names. We explicitly allow
|
||||
dnl the ones we care about.
|
||||
m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
|
||||
AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
|
||||
AC_REQUIRE([AC_PROG_INSTALL])dnl
|
||||
if test "`cd $srcdir && pwd`" != "`pwd`"; then
|
||||
# Use -I$(srcdir) only when $(srcdir) != ., so that make's output
|
||||
# is not polluted with repeated "-I."
|
||||
AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
|
||||
# test to see if srcdir already configured
|
||||
if test -f $srcdir/config.status; then
|
||||
AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
|
||||
fi
|
||||
fi
|
||||
|
||||
# test whether we have cygpath
|
||||
if test -z "$CYGPATH_W"; then
|
||||
if (cygpath --version) >/dev/null 2>/dev/null; then
|
||||
CYGPATH_W='cygpath -w'
|
||||
else
|
||||
CYGPATH_W=echo
|
||||
fi
|
||||
fi
|
||||
AC_SUBST([CYGPATH_W])
|
||||
|
||||
# Define the identity of the package.
|
||||
dnl Distinguish between old-style and new-style calls.
|
||||
m4_ifval([$2],
|
||||
[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
|
||||
AC_SUBST([PACKAGE], [$1])dnl
|
||||
AC_SUBST([VERSION], [$2])],
|
||||
[_AM_SET_OPTIONS([$1])dnl
|
||||
dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
|
||||
m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
|
||||
[m4_fatal([AC_INIT should be called with package and version arguments])])dnl
|
||||
AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
|
||||
AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
|
||||
|
||||
_AM_IF_OPTION([no-define],,
|
||||
[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
|
||||
AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
|
||||
|
||||
# Some tools Automake needs.
|
||||
AC_REQUIRE([AM_SANITY_CHECK])dnl
|
||||
AC_REQUIRE([AC_ARG_PROGRAM])dnl
|
||||
AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
|
||||
AM_MISSING_PROG(AUTOCONF, autoconf)
|
||||
AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
|
||||
AM_MISSING_PROG(AUTOHEADER, autoheader)
|
||||
AM_MISSING_PROG(MAKEINFO, makeinfo)
|
||||
AM_PROG_INSTALL_SH
|
||||
AM_PROG_INSTALL_STRIP
|
||||
AC_REQUIRE([AM_PROG_MKDIR_P])dnl
|
||||
# We need awk for the "check" target. The system "awk" is bad on
|
||||
# some platforms.
|
||||
AC_REQUIRE([AC_PROG_AWK])dnl
|
||||
AC_REQUIRE([AC_PROG_MAKE_SET])dnl
|
||||
AC_REQUIRE([AM_SET_LEADING_DOT])dnl
|
||||
_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
|
||||