Black&White Project/Automatic compilation/configure

From Kiwix
Jump to navigation Jump to search

In order to ease maintenance and readability of this very essential script in the build process, we have decided that configure.ac needed a major rewrite. Because this script cascades everywhere towards the compilation chain, we will work on the rewrite in parallel.

To use the new compile script, do the following:

./autogen.sh alt

The configure.ac does not exist anymore in svn. A link to configure_orig.ac (previous version) is created by autogen.sh.

Changes

  • The new configure script will tend to a more standard autotools approach by changing options names.
  • There are two main direction: static build or shared build.
  • Each dependency (shared objects or archive) can be specified.
  • Not found dependencies falls back to download/compile mode.
  • Download/compile respects main direction.
  • Each dependency can be explicitly compiled statically


Options

--build-static (default: false)

variable: STATIC_BUILD (bool)

Defines whether to build a static version or not. There is no --build-shared option.

--with-gecko-sdk=

variable: GECKO_SDK_PATH (path)

Debian package: xulrunner-1.9-dev (ubuntu maverick and before, debian 6) Gecko_SDK

--with-z

variable: ZLIB_PATH (path)

Debian package: zlib1g-dev

--with-z=

variable: ZLIB_PATH (path)

--with-xapian

variable: XAPIAN_PATH (path)

Debian package: libxapian-dev

--with-xapian=

variable: XAPIAN_PATH (path)

--with-icu

variable: ICU_PATH (path)

Debian package: libicu-dev

--with-icu=

variable: ICU_PATH (path)

--with-sqlite

variable: SQLITE_PATH (path)

Debian package: libsqlite3-dev

--with-sqlite=

variable: SQLITE_PATH (path)

--with-uuid

variable: UUID_PATH (path)

Debian package: uuid-dev

--with-uuid=

variable: UUID_PATH (path)

e2fsprogs-utils

--with-microhttpd

variable: LIBMICROHTTPD_PATH (path)

Debian package: libmicrohttpd-dev

--with-microhttpd=

variable: LIBMICROHTTPD_PATH (path)

--with-lzma

variable: LZMA_PATH (path)

Debian package: liblzma-dev

--with-lzma=

variable: LZMA_PATH (path)

--with-cares

variable: CARES_PATH (path)

Debian package: libc-ares-dev

--with-cares=

variable: CARES_PATH (path)

--with-aria2

variable: ARIA2_PATH (path)

Debian package: aria2 (/! Kiwix now requires version 1.14 which is not yet in debian/ubuntu)

--with-aria2=

variable: ARIA2_PATH (path)

--with-clucene

variable: CLUCENE_PATH (path)

Debian package: libclucene-dev

--with-clucene=

variable: CLUCENE_PATH (path)

--without-clucene (default: true)

variable: WITH_CLUCENE (bool)

Disables support for clucene search Engine. Default to off as it is deprecated in favor of xapian.