Age | Commit message (Collapse) | Author | Files |
|
* configure.boot: Remove check for gethostbyaddr
* dico/autologin.c (hostcmp): Rewrite using getaddrinfo.
* dicod/accesslog.c (sockaddr_to_hostname): Rewrite using getnameinfo.
* xdico/xhostname.c (xdico_local_hostname): : Rewrite using getaddrinfo.
|
|
|
|
|
|
|
|
This fixes the bug introduced by 4da4ddea3a.
* bootstrap (po_sync): Create the LINGUAS list.
New option --update-po.
|
|
|
|
After pulling updates from gnulib, it was discovered that it had added
an unwanted dependency to the libdico. The dependency was added b
redefining fseek to rpl_fseek in the config.h. Of course, that's quite
OK for user programs and in fact that's one of the purposes of gnulib,
so it's doing its job all right. However, this kind of depedencies is
not acceptable in installable libraries, such as libdico.
There are two ways of fixing this: (1) by including libgnu to the
libdico, or (2) by creating pristine (i.e. stripped of any gnulib
stuff) version of config.h and using it in the library sources.
The first approach was used in mailutils for the libmu_aux convenience
library. However, in dico I wouldn't like to introduce additional
dependencies to the installable libraries and modules, therefore
second approach has been chosen.
Two separare configuration headers are introduced:
include/prog/config.h
Configuration header with gnulib dependencies. It is used by
libxdico, and user-space programs: dico, dicod, idxgcide and
some test programs.
include/lib/config.h
Pristine header, free from any gnulib additions. It is used by all
installable libraries, including dicod modules.
In order to create pristine header, bootstrap uses specially prepared
temporary edition of configure.ac, which is stripped off any gl_.*
statements.
This approach introduces additional difficulties. The two header files
are of course listed in the AC_CONFIG_HEADERS statement in
configure.ac. Autotools give precedence to the first one. It is the
only file for which autoheader creates the .h.in template. Further,
automake creates in each Makefile.am the DEFAULT_INCLUDES statement,
which lists the directory part of the first header, and this value is
used in the compiler command line. This means that to include the
pristine header, its path prefix needs to be specified.
To avoid this, the nostdinc option is passed to AM_INIT_AUTOMAKE.
As a side effect, it makes it impossible to build libltdl in the
recursive mode (although its Makefile.am pretends otherwise). Thus,
libltdl is built in nonrecursive mode from the main Makefile.am.
Similar problem occurs with the gnulib itself, although in this case
its bootstrapping tool provides sufficient mechanisms to help overcome
it. Gnulib is built as a sub-library of libxdico. As a side effect,
the libextra library is no longer needed.
Another side effect is that the rewritten bootstrap script made it
possible to use gnulib-tool directly, instead of using
gnulib/build-aux/bootstrap wrapper.
Following bugs are fixed by this change:
https://puszcza.gnu.org.ua/bugs/?416
https://puszcza.gnu.org.ua/bugs/?417
https://puszcza.gnu.org.ua/bugs/?418
Almost all files in the project are affected by this change. However,
some changes are pure bugfixes. These are:
* lib/mergesort.c (mergesort): Rename to dico_mergesort to avoid name
clash on Free and OpenBSD.
* lib/stream.c (dico_stream_getdelim): Fix memory reallocation
algorithm.
* lib/utf8.c (utf8_wc_strstr): Reset errno to 0.
* lib/libi18n.c: Don't depend on gnu/configmake.h
* modules/wordnet/module.ac: Move definition of WORDNET_COND out of
conditional context. This fixes the functionality of the
configure --without-wordnet option.
Some obsolete and unused files have been removed. These are:
* include/gjdict.xbm
* lib/bushu.dat
* lib/bushu.h
* lib/cursor.xbm
* lib/jiscvt.c
* makedict/
Main set of changes is:
* bootstrap: Mostly rewritten as described above.
* GNUmakefile: New file for the ease of maintenance.
* maint/bootstrap.mk: New file.
* gnulib.modules: Moved to maint/
* maint/printflike: New file. Lists printf-like functions for gettext.
* configure.boot: Use AC_CONFIG_HEADERS with two header files.
Use nostdinc option to AM_INIT_AUTOMAKE.
(LTDL_INIT): Use nonrecursive option.
(DICO_PROG_CONFIG,DICO_LIB_CONFIG)
(DICO_PROG_INCLUDES,DICO_MODULE_INCLUDES): New substitution variables.
(GRECS_HOST_PROJECT_INCLUDES): Fix value.
(COND_LIBDICOSASL): New conditional.
* Makefile.am: Build libltdl.
* lib/Makefile.am: Move convenience libraries to another
directory. Build only libdico.
* dico/Makefile.am: Fix LDADD and includes.
* dicod/Makefile.am: Likewise.
* dicod/tests/Makefile.am: Likewise.
* lib/tests/Makefile.am: Likewise.
* modules/*/Makefile.am: Likewise.
The directory struture is reorganized and the sources of convenience
libraries moved to a separate directory:
* xdico/Makefile.am: New file
* xdico/appi18n.c
* xdico/gsaslstr.c
* xdico/iputil.c
* xdico/timer.c
* xdico/userprivs.c
* xdico/xalloc-die.c
* xdico/xhostname.c
* xdico/xscript.c
* xdico/xstream.c
* xdico/xtkn.c
* xdico/xutil.c: All moved from lib
* xdico/gnu/Makefile.am: New file.
* xdico/gnu: Gnulib sources imported to this directory.
|
|
|
|
|
|
|
|
|
|
* bootstrap (run): Properly capture stderr
* dicod/main.c (keywords): Mark string values as GRECS_CONST.
* modules/metaphone2/tests/testsuite.at (DICOD_TEST): New macro.
* modules/metaphone2/tests/comp00.at: Use DICOD_TEST. Ignore
config file, if present.
* modules/metaphone2/tests/comp01.at: Likewise.
* modules/metaphone2/tests/comp02.at: Likewise.
* modules/metaphone2/tests/encode.at: Likewise.
|
|
* bootstrap: Read the list of files that form a module from
modules/template/README.
* modules/.gitignore: Don't ignore all Makefile.am's
* modules/stub.am (EXTRA_DIST): Add template/README and <TEMPLATE>.
* modules/template.am: Rename to modules/template/Makefile.am
* modules/template/README: New file.
* modules/template.c: Rename to modules/template/module.c
* modules/template/tests/Makefile.am: New file.
* modules/template/tests/atlocal.in: New file.
* modules/template/tests/testsuite.at: New file.
|
|
* modinc: Rename to bootstrap.
* bootstrap: Add generic bootstrapping code.
* stub.ac: Rename to configure.boot.
* Makefile.am: Fix EXTRA_DIST
* README-hacking: Document bootstrap.
|
|
* gnulib: New module.
* .gitignore: Update.
* bootstrap: Rewrite from scratch.
* gnulib.modules: Remove deprecated modules.
* bootstrap.conf: Rename to gnulibinit.conf
* modules/.gitignore: New file.
* dico/Makefile.am: Link to libgnu.la, instead of libgnu.a
* dicod/Makefile.am: Likewise.
* dicod/tests/Makefile.am: Likewise.
* makedict/Makefile.am: Likewise.
* modules/gcide/Makefile.am: Likewise.
* stub.ac: Minor change.
|
|
* .gitignore: Add configure.ac
* Makefile.am (EXTRA_DIST): Add stub.ac and modinc
* bootstrap: Obtain package name from stub.ac
* bootstrap.conf: Call modinc
* configure.ac: Remove.
* stub.ac: New file.
* modinc: New file.
* modules/dict.org/Makefile.am (EXTRA_DIST): add module.ac
* modules/dict.org/module.ac: New file.
* modules/guile/Makefile.am (EXTRA_DIST): add module.ac
* modules/guile/module.ac: New file.
* modules/ldap/Makefile.am (EXTRA_DIST): add module.ac
* modules/ldap/module.ac: New file.
* modules/pam/Makefile.am (EXTRA_DIST): add module.ac
* modules/pam/module.ac: New file.
* modules/pcre/Makefile.am (EXTRA_DIST): add module.ac
* modules/pcre/module.ac: New file.
* modules/python/Makefile.am (EXTRA_DIST): add module.ac
* modules/python/module.ac: New file.
* modules/wordnet/Makefile.am (EXTRA_DIST): add module.ac
* modules/wordnet/module.ac: New file.
* modules/Makefile.am: Remove.
* modules/stub.am: New file.
* modules/template.am: New file.
* modules/template.c: Use modinc macro variable to create
struct dico_database_module.
|
|
* bootstrap (gnulib_extra_files): Remove "missing".
* configure.ac: Require libtool 2.4 and gettext 0.18
* dicod/cmdline.opt: Use the program_version option.
* dicod/dicod.h (program_version): New extern.
* gint: Upgrade.
* grecs: Upgrade.
* lib/levenshtein.c (dico_levenshtein_distance): Avoid
assigning dist at each iteration.
* dico/Makefile.am: Use AM_CPPFLAGS instead of INCLUDES.
* dicod/Makefile.am: Likewise.
* dicod/tests/Makefile.am: Likewise.
* lib/Makefile.am: Likewise.
* lib/tests/Makefile.am: Likewise.
* makedict/Makefile.am: Likewise.
* modules/dict.org/Makefile.am: Likewise.
* modules/gcide/Makefile.am: Likewise.
* modules/gcide/tests/Makefile.am: Likewise.
* modules/guile/Makefile.am: Likewise.
* modules/ldap/Makefile.am: Likewise.
* modules/nprefix/Makefile.am: Likewise.
* modules/outline/Makefile.am: Likewise.
* modules/pam/Makefile.am: Likewise.
* modules/pcre/Makefile.am: Likewise.
* modules/python/Makefile.am: Likewise.
* modules/stratall/Makefile.am: Likewise.
* modules/substr/Makefile.am: Likewise.
* modules/word/Makefile.am: Likewise.
* modules/wordnet/Makefile.am: Likewise.
|
|
|
|
* bootstrap: Obtain aclocal arguments from Makefile.am
* gnulib.modules (xgetdomainname): New module.
* lib/stream.c (dico_stream_read_unbuffered): Return EIO if less than
size bytes were read and pread is NULL.
|
|
* bootstrap, configure.ac: Require latest libtool. Change
incorporation model of libltdl.
* dictd/Makefile.am, makedict/Makefile.am (LDADD): Revert to using
libgnu.a.
* README-hacking: Update.
|
|
|
|
* .gitignore: Add libtool and libltdl
* Makefile.am (SUBDIRS): Add libltdl
* README-hacking: Update.
* bootstrap: Pass --ltdl flag to libtoolize, if necessary.
* configure.ac: Use ltdl.
* makedict/index.c: Minor changes.
* doc: New directory
* doc/rfc2229.txt: New file.
|
|
* bootstrap, bootstrap.conf, gnulib.modules: New files.
* dictd/.gitignore, dictd/Makefile.am, dictd/cmdline.opt: New files.
* lib/xmalloc.c: remove.
* dictd/dictd.h, dictd/main.c: New file.
* include/gjdictd.h: Delete.
* lib/xalloc-die.c: New file.
* server/*: Remove.
|