kumquat-buildroot/package/libcgicc/libcgicc.mk
Thomas Petazzoni 85e611804b libcgicc: fix build breakage and bump version
First, the build was failing with:

cd .. && /bin/sh /home/test/brbuild/build/cgicc-3.2.7/support/missing --run autoheader
/home/test/brbuild/build/cgicc-3.2.7/support/missing: line 52: autoheader: command not found
WARNING: `autoheader' is missing on your system.  You should only need it if
         you modified `acconfig.h' or `configure.ac'.  You might want
         to install the `Autoconf' and `GNU m4' packages.  Grab them
         from any GNU archive site.

That was because the PATH doesn't contain $(HOST_DIR)/usr/bin. So we
pass $(TARGET_MAKE_ENV) when calling make.

Then, the build was failing because of the crappy configure.ac and
doc/Makefile.am this project has. configure.ac checks if doxygen is
available, and if it isn't, it sets DOXYGEN to /bin/echo. Then,
doc/Makefile.am does:

        DATE=`date '+%-d %b %Y'` VERSION=$(VERSION) $(DOXYGEN) Doxyfile
        cp $(IMAGES) cgicc-doc.css html
        mv html/index.html html/index.html.bak

When DOXYGEN=/bin/echo, then the first line does not generate anything
in html/, and the third line fails.

Therefore, we add a patch that allows to pass a --disable-doc option,
which removes the check for Doxygen. If --enable-doc is passed, then
the configure script fails if Doxygen isn't found (but in the
Buildroot case, we always pass --disable-doc to avoid the doxygen
dependency).

We also take this opportunity to bump the version of libcgicc, and to
remove a patch that is no longer needed due to this version bump.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-02-26 08:52:21 +01:00

70 lines
1.9 KiB
Makefile

#############################################################
#
# libcgicc
#
#############################################################
LIBCGICC_VERSION=3.2.9
LIBCGICC_DIR=$(BUILD_DIR)/cgicc-$(LIBCGICC_VERSION)
LIBCGICC_SITE=$(BR2_GNU_MIRROR)/cgicc
LIBCGICC_SOURCE=cgicc-$(LIBCGICC_VERSION).tar.gz
LIBCGICC_CAT:=$(ZCAT)
$(DL_DIR)/$(LIBCGICC_SOURCE):
$(call DOWNLOAD,$(LIBCGICC_SITE),$(LIBCGICC_SOURCE))
libcgicc-source: $(DL_DIR)/$(LIBCGICC_SOURCE)
$(LIBCGICC_DIR)/.unpacked: $(DL_DIR)/$(LIBCGICC_SOURCE)
$(LIBCGICC_CAT) $(DL_DIR)/$(LIBCGICC_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
toolchain/patch-kernel.sh $(LIBCGICC_DIR) package/libcgicc cgicc\*.patch
touch $@
$(LIBCGICC_DIR)/.configured: $(LIBCGICC_DIR)/.unpacked
(cd $(LIBCGICC_DIR); rm -f config.cache; \
$(AUTORECONF); \
$(TARGET_CONFIGURE_OPTS) \
$(TARGET_CONFIGURE_ARGS) \
./configure $(QUIET) \
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
--exec-prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-demos \
--disable-doc \
)
touch $@
$(LIBCGICC_DIR)/.compiled: $(LIBCGICC_DIR)/.configured
$(TARGET_MAKE_ENV) $(MAKE) -C $(LIBCGICC_DIR)
touch $@
$(STAGING_DIR)/usr/lib/libcgicc.so: $(LIBCGICC_DIR)/.compiled
$(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(STAGING_DIR) -C $(LIBCGICC_DIR) install
touch -c $(STAGING_DIR)/usr/lib/libcgicc.so
$(TARGET_DIR)/usr/lib/libcgicc.so: $(STAGING_DIR)/usr/lib/libcgicc.so
cp -dpf $(STAGING_DIR)/usr/lib/libcgicc.so* $(TARGET_DIR)/usr/lib/
libcgicc: $(TARGET_DIR)/usr/lib/libcgicc.so
libcgicc-unpacked: $(LIBCGICC_DIR)/.unpacked
libcgicc-clean:
-$(MAKE) -C $(LIBCGICC_DIR) clean
libcgicc-dirclean:
rm -rf $(LIBCGICC_DIR)
#############################################################
#
# Toplevel Makefile options
#
#############################################################
ifeq ($(BR2_PACKAGE_LIBCGICC),y)
TARGETS+=libcgicc
endif