NAME="doxygen" VERSION=1.8.15 RELEASE=0.1 HOMEPAGE="http://www.doxygen.org/" GIT_URI="https://github.com/doxygen/doxygen.git" inherit qt4-cmake git # SRC_URI="http://ftp.stack.nl/pub/users/dimitri/${P}.src.tar.gz" SRC_URI+=" http://pkgs.fedoraproject.org/repo/pkgs/doxygen/doxywizard.png/1a84da877450422c5fc49e525c546cd4/doxywizard.png" SUMMARY="A documentation system for C++ and other languages" DESCRIPTION="Doxygen is a documentation system for C++, C, Java, Objective-C, IDL (Corba and Microsoft flavours) and to some extent PHP, C#, and D." CATEGORY="Devel" DEPEND="libQtCore4-devel libxapian-devel libclang-devel clang libllvm-devel-static texlive-collection-fontutils" PKG_NAMES="doxygen doxygen-doxywizard" doxygen_SUMMARY="${SUMMARY}" doxygen_DESCRIPTION="${DESCRIPTION}" doxygen_CATEGORY="Devel" doxygen_CONTENTS="usr/share/doc" for prog_name in doxygen doxyindexer doxysearch.cgi do doxygen_CONTENTS+=" usr/bin/${prog_name}.exe" doxygen_CONTENTS+=" usr/share/man/man1/${prog_name/.cgi/}.1.gz" done doxygen_doxywizard_SUMMARY="Doxywizard is a graphical front-end to read/edit/write doxygen configuration files and to launch doxygen" doxygen_doxywizard_DESCRIPTION="Doxywizard is a graphical front-end to read/edit/write doxygen configuration files and to launch doxygen." doxygen_doxywizard_CATEGORY="Devel" doxygen_doxywizard_REQUIRES="doxygen" doxygen_doxywizard_CONTENTS='usr/bin/doxywizard.exe usr/share/man/man1/doxywizard.1.gz usr/share/applications usr/share/pixmaps' src_compile() { # Starting with version 1.8.5, doxygen can store data gathered in a # sqlite3 database. This is an experimental feature and so is # disabled here. If you wish to enable this feature then set the # 'use_sqlite' variable to "ON". local use_sqlite="OFF" # Enable clang-assisted parsing. local use_libclang="ON" # We can enable 'doxyindexer' and 'doxysearch' since we have # libxapian-devel as a build dependency. local build_search="ON" # Doxygen fails to compile under 64-bit Cygwin if the cygport values # of CFLAGS and CXXFLAGS are passed through (the assembler generates # the error 'too many sections'). This means that we don't generate a # debuginfo package for 64-bit builds. The error is not given if -O0 # is used (i.e. disable compiler optimisation), but an optimised # build is probably more important than a debuginfo package. local build_type="RelWithDebInfo" if [ "${ARCH}" == "x86_64" ]; then CFLAGS="-pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector-strong --param=ssp-buffer-size=4" CXXFLAGS="${CFLAGS}" build_type="Release" fi # Ensure that strdup(3) and killpg(2) are visible. CFLAGS+=" -D_DEFAULT_SOURCE" CXXFLAGS+=" -D_DEFAULT_SOURCE" cd "${B}" qt4_cmake_compile \ -Dbuild_wizard=ON \ -Dbuild_doc=ON \ -Dbuild_xmlparser=ON \ -Dbuild_search=${build_search} \ -Duse_sqlite3=${use_sqlite} \ -Duse_libclang=${use_libclang} \ -DCMAKE_BUILD_TYPE=${build_type} \ -DCMAKE_VERBOSE_MAKEFILE=ON \ -DDOC_INSTALL_DIR="/share/doc/doxygen" make docs } src_install() { cd "${B}" cyginstall # Add a desktop menu entry. newicon "${S}/doxywizard.png" doxywizard.png make_desktop_entry doxywizard "Doxygen Wizard" doxywizard "Development" } src_test() { cd "${B}" make tests }