kde3.cygclass

Cygport Reference Manual

### TABLE OF CONTENTS

- kde3.cygclass

- PATCH_URI (kde3)
- CXXFLAGS (kde3)
- kde3_autoreconf
- kde3_compile

- DO_NOT_COMPILE

- kde3_install
- KEEP_LA_FILES (kde3)
- src_compile (kde3)
- src_install (kde3)

## kde3.cygclass

[ Top ] [ Cygclasses ] [ Cygclasses ]

SYNOPSIS

      inherit kde3

DESCRIPTION

The KDE project provides a full-featured X desktop with a wide variety of applications, built on a library stack all based on the Qt C++ library. Most packages are written in C++ and are built with a modified autotools system.

This cygclass manages the building of most KDE3-based packages.

NOTES

- This is only for KDE 3.x packages; for KDE 4.x, use kde4.cygclass instead.
- The KDE 3.x series is no longer maintained upstream. This should only be used for packages which have not been ported to KDE 4 or 5.

INHERITS

autotools.cygclass, kde.org.cygclass, qt3.cygclass

## PATCH_URI (kde3)

[ Top ] [ kde3.cygclass ] [ Overloads ]

DESCRIPTION

Several autotool compatibility patches are automatically applied to KDE 3.5.10 packages. If further patches are required, be sure to append, not replace, PATCH_URI. Other KDE3-based packages will need to backport these changes themselves.

DEFINITION

    PATCH_URI="
            https://src.fedoraproject.org/rpms/kdelibs3/raw/master/f/kde3-acinclude.patch
            https://src.fedoraproject.org/rpms/kdelibs3/raw/master/f/kde3-automake-version.patch
            https://src.fedoraproject.org/rpms/kdelibs3/raw/master/f/kde3-automake-add-missing.patch
    "

## CXXFLAGS (kde3)

[ Top ] [ kde3.cygclass ] [ Overloads ]

DEFINITION

    CXXFLAGS+=" -Wno-narrowing -std=gnu++98"

## kde3_autoreconf

[ Top ] [ kde3.cygclass ] [ Compile Functions ]

SYNOPSIS

      cd $S
      kde3_autoreconf

DESCRIPTION

Updates the build system with the special files included in each package's admin/ directory.

WARNING

Skipping this step is strongly discouraged. Patches to configure.ac, aclocal macros, or Makefile.am files will not take effect until their tools have been regenerated. Also, Cygwin's libtool package includes patches which were not yet available in the last release, so libraries may not be built optimally, or even correctly, without this step having been run, particularly on x86_64.

REQUIRES

autoconf, automake, libtool, perl

SEE ALSO

cygautoreconf

## kde3_compile

[ Top ] [ kde3.cygclass ] [ Compile Functions ]

SYNOPSIS

      kde3_compile [OPTIONS]

DESCRIPTION

Runs cygconf to configure the package with several Cygwin- and KDE-specific options, then runs cygmake to compile. Options, in the form of configure flags, are passed on to cygconf.

NOTE

Select source subdirectories can be not built by defining DO_NOT_COMPILE.

## DO_NOT_COMPILE

[ Top ] [ kde3_compile ] [ Variables ]

SYNOPSIS

      DO_NOT_COMPILE="DIRECTORY1 [DIRECTORY2] ..."

DESCRIPTION

String list of source subdirectories that should not be built, usually because they have been ported to KDE 4 or 5, or are Linux-specific.

## kde3_install

[ Top ] [ kde3.cygclass ] [ Install Functions ]

SYNOPSIS

      kde3_install [OPTIONS]

DESCRIPTION

Installs a KDE3 package with cyginstall into $D with some additional steps:

- Import libraries for libkdeinit_* libraries are removed, as they are never used.
- Import libraries are rearranged to avoid conflicting with KDE 4.
- Help documentation for components listed in DO_NOT_COMPILE is removed.
- README docs for subpackages in PKG_NAMES are installed into their own subdirectories of /usr/share/doc/ under $D.

Options, if any, are passed on to cyginstall.

## KEEP_LA_FILES (kde3)

[ Top ] [ kde3.cygclass ] [ Overloads ]

DESCRIPTION

KDE 3 uses a custom libltdl to load modules, and the build system generally links with only the highest level libraries, e.g. just -lkdeui, without specifying -lkdecore or -lqt-mt. This only works as-is if all libtool library files are present.

DEFINITION

    KEEP_LA_FILES="all"

## src_compile (kde3)

[ Top ] [ kde3.cygclass ] [ Overloads ]

DEFINITION

    src_compile() {
            cd ${S}
            case ${NAME} in
            kde-i18n-*|koffice-l10n-*) ;;
            *)      kde3_autoreconf ;;
            esac

            cd ${B}
            kde3_compile
    }

## src_install (kde3)

[ Top ] [ kde3.cygclass ] [ Overloads ]

DEFINITION

    src_install() {
            cd ${B}
            kde3_install
    }