summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commit9e8fb5a657a266bb57d83d84c61db1d30773212b (patch)
treea219f0ce349f8262737dba34f0c23f692dd46261
downloadtde-construct-9e8fb5a657a266bb57d83d84c61db1d30773212b.zip
tde-construct-9e8fb5a657a266bb57d83d84c61db1d30773212b.tar.gz
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/konstruct@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
-rw-r--r--CHANGELOG260
-rw-r--r--README185
-rw-r--r--apps-unstable/Makefile1
-rw-r--r--apps-unstable/category.mk1
-rw-r--r--apps-unstable/gtk-qt-engine/Makefile20
-rw-r--r--apps-unstable/gtk-qt-engine/checksums1
-rw-r--r--apps-unstable/kompose/Makefile19
-rw-r--r--apps-unstable/kompose/checksums1
-rw-r--r--apps-unstable/scribus/Makefile18
-rw-r--r--apps-unstable/scribus/checksums1
-rw-r--r--apps/development/category.mk6
-rw-r--r--apps/development/kdbg/Makefile20
-rw-r--r--apps/development/kdbg/checksums1
-rw-r--r--apps/development/kdevelop/Makefile16
-rw-r--r--apps/development/kdevelop/checksums1
-rw-r--r--apps/development/kdiff3/Makefile18
-rw-r--r--apps/development/kdiff3/checksums1
-rw-r--r--apps/games/category.mk6
-rw-r--r--apps/games/knights/Makefile18
-rw-r--r--apps/games/knights/checksums1
-rw-r--r--apps/graphics/category.mk6
-rw-r--r--apps/graphics/digikam-plugins/Makefile18
-rw-r--r--apps/graphics/digikam-plugins/checksums1
-rw-r--r--apps/graphics/digikam/Makefile18
-rw-r--r--apps/graphics/digikam/checksums1
-rw-r--r--apps/graphics/gwenview/Makefile18
-rw-r--r--apps/graphics/gwenview/checksums1
-rw-r--r--apps/graphics/kphotoalbum/Makefile19
-rw-r--r--apps/graphics/kphotoalbum/checksums1
-rw-r--r--apps/graphics/showimg/Makefile18
-rw-r--r--apps/graphics/showimg/checksums1
-rw-r--r--apps/internet/category.mk6
-rw-r--r--apps/internet/kbear/Makefile21
-rw-r--r--apps/internet/kbear/checksums3
-rw-r--r--apps/internet/kbear/files/fix-gcc-semicolons.diff164
-rw-r--r--apps/internet/kbear/files/increase-ui-version.diff115
-rw-r--r--apps/internet/kbiff/Makefile18
-rw-r--r--apps/internet/kbiff/checksums1
-rw-r--r--apps/internet/konversation/Makefile18
-rw-r--r--apps/internet/konversation/checksums1
-rw-r--r--apps/internet/ktorrent/Makefile18
-rw-r--r--apps/internet/ktorrent/checksums1
-rw-r--r--apps/internet/kvirc/Makefile17
-rw-r--r--apps/internet/kvirc/checksums1
-rw-r--r--apps/multimedia/amarok/Makefile18
-rw-r--r--apps/multimedia/amarok/checksums1
-rw-r--r--apps/multimedia/category.mk6
-rw-r--r--apps/multimedia/k3b/Makefile18
-rw-r--r--apps/multimedia/k3b/checksums1
-rw-r--r--apps/multimedia/kaffeine/Makefile18
-rw-r--r--apps/multimedia/kaffeine/checksums1
-rw-r--r--apps/multimedia/kdetv/Makefile18
-rw-r--r--apps/multimedia/kdetv/checksums1
-rw-r--r--apps/multimedia/kmplayer/Makefile18
-rw-r--r--apps/multimedia/kmplayer/checksums1
-rw-r--r--apps/multimedia/kplayer/Makefile18
-rw-r--r--apps/multimedia/kplayer/checksums1
-rw-r--r--apps/multimedia/noteedit/Makefile18
-rw-r--r--apps/multimedia/noteedit/checksums1
-rw-r--r--apps/office/category.mk6
-rw-r--r--apps/office/kile/Makefile18
-rw-r--r--apps/office/kile/checksums1
-rw-r--r--apps/office/kmymoney2/Makefile19
-rw-r--r--apps/office/kmymoney2/checksums1
-rw-r--r--apps/office/koffice/Makefile18
-rw-r--r--apps/office/koffice/checksums1
-rw-r--r--apps/office/lyx/Makefile18
-rw-r--r--apps/office/lyx/checksums1
-rw-r--r--apps/office/scribus/Makefile18
-rw-r--r--apps/office/scribus/checksums1
-rw-r--r--apps/office/tellico/Makefile18
-rw-r--r--apps/office/tellico/checksums1
-rw-r--r--apps/system/category.mk6
-rw-r--r--apps/system/kconfigeditor/Makefile18
-rw-r--r--apps/system/kconfigeditor/checksums1
-rw-r--r--apps/system/kcpuload/Makefile18
-rw-r--r--apps/system/kcpuload/checksums1
-rw-r--r--apps/system/kio-locate/Makefile18
-rw-r--r--apps/system/kio-locate/checksums1
-rw-r--r--apps/system/kiosktool/Makefile18
-rw-r--r--apps/system/kiosktool/checksums1
-rw-r--r--apps/system/knemo/Makefile18
-rw-r--r--apps/system/knemo/checksums1
-rw-r--r--apps/system/knetload/Makefile18
-rw-r--r--apps/system/knetload/checksums1
-rw-r--r--apps/system/ksystemlog/Makefile18
-rw-r--r--apps/system/ksystemlog/checksums1
-rw-r--r--apps/system/smb4k/Makefile18
-rw-r--r--apps/system/smb4k/checksums1
-rw-r--r--apps/utilities/basket/Makefile18
-rw-r--r--apps/utilities/basket/checksums1
-rw-r--r--apps/utilities/category.mk6
-rw-r--r--apps/utilities/filelight/Makefile18
-rw-r--r--apps/utilities/filelight/checksums1
-rw-r--r--apps/utilities/kdirstat/Makefile18
-rw-r--r--apps/utilities/kdirstat/checksums1
-rw-r--r--apps/utilities/krename/Makefile18
-rw-r--r--apps/utilities/krename/checksums1
-rw-r--r--apps/utilities/krusader/Makefile18
-rw-r--r--apps/utilities/krusader/checksums1
-rw-r--r--apps/utilities/kst/Makefile18
-rw-r--r--apps/utilities/kst/checksums1
-rw-r--r--category.mk18
-rw-r--r--color.mk63
-rw-r--r--gar.conf.mk.in158
-rw-r--r--gar.lib.mk469
-rw-r--r--gar.mk316
-rw-r--r--i18n/Makefile1
-rw-r--r--i18n/category.mk4
-rw-r--r--i18n/k3b-i18n/Makefile18
-rw-r--r--i18n/k3b-i18n/checksums1
-rw-r--r--i18n/kde-i18n-af/Makefile17
-rw-r--r--i18n/kde-i18n-af/checksums1
-rw-r--r--i18n/kde-i18n-ar/Makefile17
-rw-r--r--i18n/kde-i18n-ar/checksums1
-rw-r--r--i18n/kde-i18n-az/Makefile17
-rw-r--r--i18n/kde-i18n-az/checksums1
-rw-r--r--i18n/kde-i18n-bg/Makefile17
-rw-r--r--i18n/kde-i18n-bg/checksums1
-rw-r--r--i18n/kde-i18n-bn/Makefile17
-rw-r--r--i18n/kde-i18n-bn/checksums1
-rw-r--r--i18n/kde-i18n-br/Makefile17
-rw-r--r--i18n/kde-i18n-br/checksums1
-rw-r--r--i18n/kde-i18n-bs/Makefile17
-rw-r--r--i18n/kde-i18n-bs/checksums1
-rw-r--r--i18n/kde-i18n-ca/Makefile17
-rw-r--r--i18n/kde-i18n-ca/checksums1
-rw-r--r--i18n/kde-i18n-cs/Makefile17
-rw-r--r--i18n/kde-i18n-cs/checksums1
-rw-r--r--i18n/kde-i18n-csb/Makefile17
-rw-r--r--i18n/kde-i18n-csb/checksums1
-rw-r--r--i18n/kde-i18n-cy/Makefile17
-rw-r--r--i18n/kde-i18n-cy/checksums1
-rw-r--r--i18n/kde-i18n-da/Makefile17
-rw-r--r--i18n/kde-i18n-da/checksums1
-rw-r--r--i18n/kde-i18n-de/Makefile17
-rw-r--r--i18n/kde-i18n-de/checksums1
-rw-r--r--i18n/kde-i18n-el/Makefile17
-rw-r--r--i18n/kde-i18n-el/checksums1
-rw-r--r--i18n/kde-i18n-en_GB/Makefile17
-rw-r--r--i18n/kde-i18n-en_GB/checksums1
-rw-r--r--i18n/kde-i18n-eo/Makefile17
-rw-r--r--i18n/kde-i18n-eo/checksums1
-rw-r--r--i18n/kde-i18n-es/Makefile17
-rw-r--r--i18n/kde-i18n-es/checksums1
-rw-r--r--i18n/kde-i18n-et/Makefile17
-rw-r--r--i18n/kde-i18n-et/checksums1
-rw-r--r--i18n/kde-i18n-eu/Makefile17
-rw-r--r--i18n/kde-i18n-eu/checksums1
-rw-r--r--i18n/kde-i18n-fa/Makefile17
-rw-r--r--i18n/kde-i18n-fa/checksums1
-rw-r--r--i18n/kde-i18n-fi/Makefile17
-rw-r--r--i18n/kde-i18n-fi/checksums1
-rw-r--r--i18n/kde-i18n-fr/Makefile17
-rw-r--r--i18n/kde-i18n-fr/checksums1
-rw-r--r--i18n/kde-i18n-fy/Makefile17
-rw-r--r--i18n/kde-i18n-fy/checksums1
-rw-r--r--i18n/kde-i18n-ga/Makefile17
-rw-r--r--i18n/kde-i18n-ga/checksums1
-rw-r--r--i18n/kde-i18n-gl/Makefile17
-rw-r--r--i18n/kde-i18n-gl/checksums1
-rw-r--r--i18n/kde-i18n-he/Makefile17
-rw-r--r--i18n/kde-i18n-he/checksums1
-rw-r--r--i18n/kde-i18n-hi/Makefile17
-rw-r--r--i18n/kde-i18n-hi/checksums1
-rw-r--r--i18n/kde-i18n-hr/Makefile17
-rw-r--r--i18n/kde-i18n-hr/checksums1
-rw-r--r--i18n/kde-i18n-hu/Makefile17
-rw-r--r--i18n/kde-i18n-hu/checksums1
-rw-r--r--i18n/kde-i18n-is/Makefile17
-rw-r--r--i18n/kde-i18n-is/checksums1
-rw-r--r--i18n/kde-i18n-it/Makefile17
-rw-r--r--i18n/kde-i18n-it/checksums1
-rw-r--r--i18n/kde-i18n-ja/Makefile17
-rw-r--r--i18n/kde-i18n-ja/checksums1
-rw-r--r--i18n/kde-i18n-kk/Makefile17
-rw-r--r--i18n/kde-i18n-kk/checksums1
-rw-r--r--i18n/kde-i18n-km/Makefile17
-rw-r--r--i18n/kde-i18n-km/checksums1
-rw-r--r--i18n/kde-i18n-ko/Makefile17
-rw-r--r--i18n/kde-i18n-ko/checksums1
-rw-r--r--i18n/kde-i18n-lt/Makefile17
-rw-r--r--i18n/kde-i18n-lt/checksums1
-rw-r--r--i18n/kde-i18n-lv/Makefile17
-rw-r--r--i18n/kde-i18n-lv/checksums1
-rw-r--r--i18n/kde-i18n-mk/Makefile17
-rw-r--r--i18n/kde-i18n-mk/checksums1
-rw-r--r--i18n/kde-i18n-mn/Makefile17
-rw-r--r--i18n/kde-i18n-mn/checksums1
-rw-r--r--i18n/kde-i18n-ms/Makefile17
-rw-r--r--i18n/kde-i18n-ms/checksums1
-rw-r--r--i18n/kde-i18n-nb/Makefile17
-rw-r--r--i18n/kde-i18n-nb/checksums1
-rw-r--r--i18n/kde-i18n-nds/Makefile17
-rw-r--r--i18n/kde-i18n-nds/checksums1
-rw-r--r--i18n/kde-i18n-nl/Makefile17
-rw-r--r--i18n/kde-i18n-nl/checksums1
-rw-r--r--i18n/kde-i18n-nn/Makefile17
-rw-r--r--i18n/kde-i18n-nn/checksums1
-rw-r--r--i18n/kde-i18n-pa/Makefile17
-rw-r--r--i18n/kde-i18n-pa/checksums1
-rw-r--r--i18n/kde-i18n-pl/Makefile17
-rw-r--r--i18n/kde-i18n-pl/checksums1
-rw-r--r--i18n/kde-i18n-pt/Makefile17
-rw-r--r--i18n/kde-i18n-pt/checksums1
-rw-r--r--i18n/kde-i18n-pt_BR/Makefile17
-rw-r--r--i18n/kde-i18n-pt_BR/checksums1
-rw-r--r--i18n/kde-i18n-ro/Makefile17
-rw-r--r--i18n/kde-i18n-ro/checksums1
-rw-r--r--i18n/kde-i18n-ru/Makefile17
-rw-r--r--i18n/kde-i18n-ru/checksums1
-rw-r--r--i18n/kde-i18n-rw/Makefile17
-rw-r--r--i18n/kde-i18n-rw/checksums1
-rw-r--r--i18n/kde-i18n-se/Makefile17
-rw-r--r--i18n/kde-i18n-se/checksums1
-rw-r--r--i18n/kde-i18n-sk/Makefile17
-rw-r--r--i18n/kde-i18n-sk/checksums1
-rw-r--r--i18n/kde-i18n-sl/Makefile17
-rw-r--r--i18n/kde-i18n-sl/checksums1
-rw-r--r--i18n/kde-i18n-sr/Makefile17
-rw-r--r--i18n/kde-i18n-sr/checksums1
-rw-r--r--i18n/kde-i18n-sr@Latn/Makefile17
-rw-r--r--i18n/kde-i18n-sr@Latn/checksums1
-rw-r--r--i18n/kde-i18n-ss/Makefile17
-rw-r--r--i18n/kde-i18n-ss/checksums1
-rw-r--r--i18n/kde-i18n-sv/Makefile17
-rw-r--r--i18n/kde-i18n-sv/checksums1
-rw-r--r--i18n/kde-i18n-ta/Makefile17
-rw-r--r--i18n/kde-i18n-ta/checksums1
-rw-r--r--i18n/kde-i18n-tg/Makefile17
-rw-r--r--i18n/kde-i18n-tg/checksums1
-rw-r--r--i18n/kde-i18n-th/Makefile17
-rw-r--r--i18n/kde-i18n-th/checksums1
-rw-r--r--i18n/kde-i18n-tr/Makefile17
-rw-r--r--i18n/kde-i18n-tr/checksums1
-rw-r--r--i18n/kde-i18n-uk/Makefile17
-rw-r--r--i18n/kde-i18n-uk/checksums1
-rw-r--r--i18n/kde-i18n-uz/Makefile17
-rw-r--r--i18n/kde-i18n-uz/checksums1
-rw-r--r--i18n/kde-i18n-vi/Makefile17
-rw-r--r--i18n/kde-i18n-vi/checksums1
-rw-r--r--i18n/kde-i18n-zh_CN/Makefile17
-rw-r--r--i18n/kde-i18n-zh_CN/checksums1
-rw-r--r--i18n/kde-i18n-zh_TW/Makefile17
-rw-r--r--i18n/kde-i18n-zh_TW/checksums1
-rw-r--r--i18n/koffice-l10n-bg/Makefile18
-rw-r--r--i18n/koffice-l10n-bg/checksums1
-rw-r--r--i18n/koffice-l10n-ca/Makefile18
-rw-r--r--i18n/koffice-l10n-ca/checksums1
-rw-r--r--i18n/koffice-l10n-cs/Makefile18
-rw-r--r--i18n/koffice-l10n-cs/checksums1
-rw-r--r--i18n/koffice-l10n-cy/Makefile18
-rw-r--r--i18n/koffice-l10n-cy/checksums1
-rw-r--r--i18n/koffice-l10n-da/Makefile18
-rw-r--r--i18n/koffice-l10n-da/checksums1
-rw-r--r--i18n/koffice-l10n-de/Makefile18
-rw-r--r--i18n/koffice-l10n-de/checksums1
-rw-r--r--i18n/koffice-l10n-el/Makefile18
-rw-r--r--i18n/koffice-l10n-el/checksums1
-rw-r--r--i18n/koffice-l10n-en_GB/Makefile18
-rw-r--r--i18n/koffice-l10n-en_GB/checksums1
-rw-r--r--i18n/koffice-l10n-es/Makefile18
-rw-r--r--i18n/koffice-l10n-es/checksums1
-rw-r--r--i18n/koffice-l10n-et/Makefile18
-rw-r--r--i18n/koffice-l10n-et/checksums1
-rw-r--r--i18n/koffice-l10n-eu/Makefile18
-rw-r--r--i18n/koffice-l10n-eu/checksums1
-rw-r--r--i18n/koffice-l10n-fa/Makefile18
-rw-r--r--i18n/koffice-l10n-fa/checksums1
-rw-r--r--i18n/koffice-l10n-fi/Makefile18
-rw-r--r--i18n/koffice-l10n-fi/checksums1
-rw-r--r--i18n/koffice-l10n-fr/Makefile18
-rw-r--r--i18n/koffice-l10n-fr/checksums1
-rw-r--r--i18n/koffice-l10n-ga/Makefile18
-rw-r--r--i18n/koffice-l10n-ga/checksums1
-rw-r--r--i18n/koffice-l10n-gl/Makefile18
-rw-r--r--i18n/koffice-l10n-gl/checksums1
-rw-r--r--i18n/koffice-l10n-hu/Makefile18
-rw-r--r--i18n/koffice-l10n-hu/checksums1
-rw-r--r--i18n/koffice-l10n-it/Makefile18
-rw-r--r--i18n/koffice-l10n-it/checksums1
-rw-r--r--i18n/koffice-l10n-ja/Makefile18
-rw-r--r--i18n/koffice-l10n-ja/checksums1
-rw-r--r--i18n/koffice-l10n-km/Makefile18
-rw-r--r--i18n/koffice-l10n-km/checksums1
-rw-r--r--i18n/koffice-l10n-lv/Makefile18
-rw-r--r--i18n/koffice-l10n-lv/checksums1
-rw-r--r--i18n/koffice-l10n-ms/Makefile18
-rw-r--r--i18n/koffice-l10n-ms/checksums1
-rw-r--r--i18n/koffice-l10n-nb/Makefile18
-rw-r--r--i18n/koffice-l10n-nb/checksums1
-rw-r--r--i18n/koffice-l10n-nds/Makefile18
-rw-r--r--i18n/koffice-l10n-nds/checksums1
-rw-r--r--i18n/koffice-l10n-ne/Makefile18
-rw-r--r--i18n/koffice-l10n-ne/checksums1
-rw-r--r--i18n/koffice-l10n-nl/Makefile18
-rw-r--r--i18n/koffice-l10n-nl/checksums1
-rw-r--r--i18n/koffice-l10n-pl/Makefile18
-rw-r--r--i18n/koffice-l10n-pl/checksums1
-rw-r--r--i18n/koffice-l10n-pt/Makefile18
-rw-r--r--i18n/koffice-l10n-pt/checksums1
-rw-r--r--i18n/koffice-l10n-pt_BR/Makefile18
-rw-r--r--i18n/koffice-l10n-pt_BR/checksums1
-rw-r--r--i18n/koffice-l10n-ru/Makefile18
-rw-r--r--i18n/koffice-l10n-ru/checksums1
-rw-r--r--i18n/koffice-l10n-sk/Makefile18
-rw-r--r--i18n/koffice-l10n-sk/checksums1
-rw-r--r--i18n/koffice-l10n-sl/Makefile18
-rw-r--r--i18n/koffice-l10n-sl/checksums1
-rw-r--r--i18n/koffice-l10n-sr/Makefile18
-rw-r--r--i18n/koffice-l10n-sr/checksums1
-rw-r--r--i18n/koffice-l10n-sr@Latn/Makefile18
-rw-r--r--i18n/koffice-l10n-sr@Latn/checksums1
-rw-r--r--i18n/koffice-l10n-sv/Makefile18
-rw-r--r--i18n/koffice-l10n-sv/checksums1
-rw-r--r--i18n/koffice-l10n-tr/Makefile18
-rw-r--r--i18n/koffice-l10n-tr/checksums1
-rw-r--r--i18n/koffice-l10n-uk/Makefile18
-rw-r--r--i18n/koffice-l10n-uk/checksums1
-rw-r--r--i18n/koffice-l10n-zh_CN/Makefile18
-rw-r--r--i18n/koffice-l10n-zh_CN/checksums1
-rw-r--r--i18n/koffice-l10n-zh_TW/Makefile18
-rw-r--r--i18n/koffice-l10n-zh_TW/checksums1
-rw-r--r--kde.conf.mk11
-rw-r--r--kde/Makefile1
-rw-r--r--kde/category.mk4
-rw-r--r--kde/kdeaccessibility/Makefile16
-rw-r--r--kde/kdeaccessibility/checksums1
-rw-r--r--kde/kdeaddons/Makefile16
-rw-r--r--kde/kdeaddons/checksums1
-rw-r--r--kde/kdeadmin/Makefile16
-rw-r--r--kde/kdeadmin/checksums1
-rw-r--r--kde/kdeartwork/Makefile16
-rw-r--r--kde/kdeartwork/checksums1
-rw-r--r--kde/kdebase/Makefile16
-rw-r--r--kde/kdebase/checksums1
-rw-r--r--kde/kdebindings/Makefile16
-rw-r--r--kde/kdebindings/checksums1
-rw-r--r--kde/kdeedu/Makefile16
-rw-r--r--kde/kdeedu/checksums1
-rw-r--r--kde/kdegames/Makefile16
-rw-r--r--kde/kdegames/checksums1
-rw-r--r--kde/kdegraphics/Makefile16
-rw-r--r--kde/kdegraphics/checksums1
-rw-r--r--kde/kdelibs/Makefile17
-rw-r--r--kde/kdelibs/checksums3
-rw-r--r--kde/kdelibs/files/bomb_out_bzip2.diff10
-rw-r--r--kde/kdelibs/files/do-not-fail-fast-malloc.diff16
-rw-r--r--kde/kdemultimedia/Makefile16
-rw-r--r--kde/kdemultimedia/checksums1
-rw-r--r--kde/kdenetwork/Makefile17
-rw-r--r--kde/kdenetwork/checksums1
-rw-r--r--kde/kdepim/Makefile16
-rw-r--r--kde/kdepim/checksums1
-rw-r--r--kde/kdesdk/Makefile16
-rw-r--r--kde/kdesdk/checksums1
-rw-r--r--kde/kdetoys/Makefile16
-rw-r--r--kde/kdetoys/checksums1
-rw-r--r--kde/kdeutils/Makefile16
-rw-r--r--kde/kdeutils/checksums1
-rw-r--r--kde/kdewebdev/Makefile16
-rw-r--r--kde/kdewebdev/checksums1
-rw-r--r--libs/Makefile1
-rw-r--r--libs/akode/Makefile16
-rw-r--r--libs/akode/checksums1
-rw-r--r--libs/arts/Makefile16
-rw-r--r--libs/arts/checksums1
-rw-r--r--libs/category.mk1
-rw-r--r--libs/cyrus-sasl/Makefile16
-rw-r--r--libs/cyrus-sasl/checksums1
-rw-r--r--libs/dirmngr/Makefile18
-rw-r--r--libs/dirmngr/checksums1
-rw-r--r--libs/exiv2/Makefile16
-rw-r--r--libs/exiv2/checksums1
-rw-r--r--libs/fribidi/Makefile16
-rw-r--r--libs/fribidi/checksums1
-rw-r--r--libs/glib/Makefile19
-rw-r--r--libs/glib/checksums1
-rw-r--r--libs/gmp/Makefile16
-rw-r--r--libs/gmp/checksums1
-rw-r--r--libs/gpgme/Makefile18
-rw-r--r--libs/gpgme/checksums1
-rw-r--r--libs/id3lib/Makefile16
-rw-r--r--libs/id3lib/checksums1
-rw-r--r--libs/imlib/Makefile18
-rw-r--r--libs/imlib/checksums1
-rw-r--r--libs/kipi-plugins/Makefile18
-rw-r--r--libs/kipi-plugins/checksums1
-rw-r--r--libs/lcms/Makefile16
-rw-r--r--libs/lcms/checksums1
-rw-r--r--libs/libart_lgpl/Makefile17
-rw-r--r--libs/libart_lgpl/checksums2
-rw-r--r--libs/libart_lgpl/files/fix-headers.diff24
-rw-r--r--libs/libassuan/Makefile16
-rw-r--r--libs/libassuan/checksums1
-rw-r--r--libs/libexif/Makefile16
-rw-r--r--libs/libexif/checksums1
-rw-r--r--libs/libexif/files/fix-compile.diff11
-rw-r--r--libs/libgcrypt/Makefile18
-rw-r--r--libs/libgcrypt/checksums1
-rw-r--r--libs/libgpg-error/Makefile16
-rw-r--r--libs/libgpg-error/checksums1
-rw-r--r--libs/libgsf/Makefile18
-rw-r--r--libs/libgsf/checksums1
-rw-r--r--libs/libidn/Makefile18
-rw-r--r--libs/libidn/checksums1
-rw-r--r--libs/libkexif/Makefile18
-rw-r--r--libs/libkexif/checksums1
-rw-r--r--libs/libkipi/Makefile18
-rw-r--r--libs/libkipi/checksums1
-rw-r--r--libs/libksba/Makefile18
-rw-r--r--libs/libksba/checksums1
-rw-r--r--libs/libmusicbrainz/Makefile16
-rw-r--r--libs/libmusicbrainz/checksums1
-rw-r--r--libs/libungif/Makefile16
-rw-r--r--libs/libungif/checksums1
-rw-r--r--libs/libwpd/Makefile18
-rw-r--r--libs/libwpd/checksums1
-rw-r--r--libs/libxml2/Makefile16
-rw-r--r--libs/libxml2/checksums1
-rw-r--r--libs/libxslt/Makefile18
-rw-r--r--libs/libxslt/checksums1
-rw-r--r--libs/mdnsresponder/Makefile37
-rw-r--r--libs/mdnsresponder/checksums2
-rw-r--r--libs/mdnsresponder/files/makefile.patch89
-rw-r--r--libs/openslp/Makefile16
-rw-r--r--libs/openslp/checksums1
-rw-r--r--libs/pinentry/Makefile18
-rw-r--r--libs/pinentry/checksums1
-rw-r--r--libs/pth/Makefile16
-rw-r--r--libs/pth/checksums1
-rw-r--r--libs/qt-x11-free/Makefile68
-rw-r--r--libs/qt-x11-free/checksums28
-rw-r--r--libs/qt-x11-free/files/0001-dnd_optimization.patch187
-rw-r--r--libs/qt-x11-free/files/0002-dnd_active_window_fix.patch189
-rw-r--r--libs/qt-x11-free/files/0005-qpixmap_mitshm.patch569
-rw-r--r--libs/qt-x11-free/files/0007-qpixmap_constants.patch384
-rw-r--r--libs/qt-x11-free/files/0015-qiconview-finditem.patch43
-rw-r--r--libs/qt-x11-free/files/0016-qiconview-rebuildcontainer.patch34
-rw-r--r--libs/qt-x11-free/files/0017-qiconview-ctrl_rubber.patch90
-rw-r--r--libs/qt-x11-free/files/0020-designer-deletetabs.patch76
-rw-r--r--libs/qt-x11-free/files/0032-fix_rotated_randr.diff21
-rw-r--r--libs/qt-x11-free/files/0035-qvaluelist-streaming-operator.patch27
-rw-r--r--libs/qt-x11-free/files/0036-qprogressbar-optimization.patch126
-rw-r--r--libs/qt-x11-free/files/0038-dragobject-dont-prefer-unknown.patch57
-rw-r--r--libs/qt-x11-free/files/0044-qscrollview-windowactivate-fix.diff38
-rw-r--r--libs/qt-x11-free/files/0046-qiconview-no-useless-scrollbar.diff150
-rw-r--r--libs/qt-x11-free/files/0047-fix-kmenu-width.diff28
-rw-r--r--libs/qt-x11-free/files/0048-qclipboard_hack_80072.patch48
-rw-r--r--libs/qt-x11-free/files/0049-qiconview-rubber_on_move.diff114
-rw-r--r--libs/qt-x11-free/files/0056-khotkeys_input_84434.patch21
-rw-r--r--libs/qt-x11-free/files/0059-qpopup_has_mouse.patch68
-rw-r--r--libs/qt-x11-free/files/0060-qpopup_ignore_mousepos.patch59
-rw-r--r--libs/qt-x11-free/files/0061-qscrollview-propagate-horizontal-wheelevent.patch23
-rw-r--r--libs/qt-x11-free/files/0073-xinerama-aware-qpopup.patch113
-rw-r--r--libs/qt-x11-free/files/0076-fix-qprocess.diff19
-rw-r--r--libs/qt-x11-free/files/0077-utf8-decoder-fixes.diff109
-rw-r--r--libs/qt-x11-free/files/auto-license.diff11
-rw-r--r--libs/qt-x11-free/files/dont-use-includehints.diff22
-rw-r--r--libs/qt-x11-free/files/q_export-visibility.diff65
-rw-r--r--libs/taglib/Makefile16
-rw-r--r--libs/taglib/checksums1
-rw-r--r--libs/tse3/Makefile19
-rw-r--r--libs/tse3/checksums2
-rw-r--r--libs/tse3/files/fix-compile.diff10
-rw-r--r--libs/wv2/Makefile18
-rw-r--r--libs/wv2/checksums1
-rw-r--r--libs/xine-lib/Makefile18
-rw-r--r--libs/xine-lib/checksums1
-rw-r--r--meta/Makefile1
-rw-r--r--meta/everything/Makefile13
-rw-r--r--meta/kde/Makefile13
-rw-r--r--meta/kdepim-crypto/Makefile17
-rw-r--r--misc/Makefile1
-rw-r--r--misc/category.mk1
-rw-r--r--misc/detektive/Makefile15
-rw-r--r--misc/detektive/checksums9
-rwxr-xr-xmisc/detektive/files/detektive.sh75
-rw-r--r--misc/detektive/files/mandrake-101.lst23
-rw-r--r--misc/detektive/files/mandrake-91.lst17
-rw-r--r--misc/detektive/files/mandrake-92.lst22
-rw-r--r--misc/detektive/files/suse-81.lst89
-rw-r--r--misc/detektive/files/suse-82.lst88
-rw-r--r--misc/detektive/files/suse-90.lst84
-rw-r--r--misc/detektive/files/suse-91.lst85
-rw-r--r--misc/detektive/files/suse-92.lst88
-rw-r--r--misc/gnupg/Makefile18
-rw-r--r--misc/gnupg/checksums1
-rw-r--r--misc/graphicsmagick/Makefile18
-rw-r--r--misc/graphicsmagick/checksums1
-rw-r--r--misc/graphviz/Makefile16
-rw-r--r--misc/graphviz/checksums1
-rw-r--r--misc/imagemagick/Makefile20
-rw-r--r--misc/imagemagick/checksums1
-rw-r--r--misc/pkgconfig/Makefile16
-rw-r--r--misc/pkgconfig/checksums1
-rw-r--r--misc/ttf-bitstream-vera/Makefile19
-rw-r--r--misc/ttf-bitstream-vera/checksums1
498 files changed, 9299 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG
new file mode 100644
index 0000000..b2f6cbc
--- /dev/null
+++ b/CHANGELOG
@@ -0,0 +1,260 @@
+2007-07-09 * KOffice 1.6.3
+
+2007-05-22 * KDE 3.5.7, KDevelop 3.4.1, aRts 1.5.7
+
+2007-04-24 * KOffice 1.6.2
+2007-04-24 libwpd 0.8.9, libart_lgpl 2.3.19, libgcrypt 1.2.4, xine-lib 1.1.6,
+ libxml2 2.6.27, glib 2.12.11, libxslt 1.1.20, gpgme 1.1.4, Qt 3.3.8,
+ gnupg 2.0.3, ImageMagick 6.3.3, digikam 0.9.1, kphotoalbum 3.0.2,
+ kdiff3 0.9.92, smb4k 0.8.1, ktorrent 2.1.4, k3b 1.0.1, kmplayer 0.9.4a,
+ kaffeine 0.8.4, amarok 1.4.5, kmymoney2 0.8.6, tellico 1.2.10, lyx
+ 1.4.4, krename 3.0.14, filelight 1.0, basket 1.0.2, scribus 1.3.3.8
+
+2007-01-25 * KDE 3.5.6, KDevelop 3.3.6, aRts 1.5.6, KOffice 1.6.1, KDevelop 3.4
+2007-01-15 amarok 1.4.4, basket 0.6.0, digikam 0.9.0, digikam imageplugins 0.9.0,
+ glib 2.12.8, gnupg 2.0.1, graphviz 2.12, gwenview 1.4.1, kaffeine 0.8.3,
+ kdbg 2.0.5, kdiff3 0.9.91, kile 1.9.3, kmplayer 0.9.3a, knemo 0.4.6,
+ kphotoalbum 3.0, krename 3.0.13, kst 1.3.1, imagemagick 6.3.1, lcms 1.16,
+ libgpg-error 1.5, libgsf 1.14.3, libidn 0.6.9, libksba 1.0.1, libwpd 0.8.8,
+ qt 3.3.7, scribus 1.3.3.7, smb4k 0.8.0, tellico 1.2.7, xine-lib 1.1.3
+ + exiv2 0.12
+
+2006-10-22 * KOffice 1.6
+2006-10-11 * KDE 3.5.5, KDevelop 3.3.5, aRts 1.5.5
+2006-10-10 + GraphicsMagick 1.1.7
+2006-10-10 amarok 1.4.3, glib 2.12.4, gwenview 1.4, k3b 0.12.17, kaffeine 0.8.2,
+ kile 1.9.2, kmplayer 0.9.3, kmymoney2 0.8.5, konversation 1.0.1, kst
+ 1.3, ktorrent 2.0.3, libassuan 0.9.3, libgcrypt 1.2.3, libgpg-error
+ 1.4, libgsf 1.14.2, libidn 0.6.7, libksba 1.0.0, libmusicbrainz 2.1.4,
+ libwpd 0.8.7, lyx 1.4.3, noteedit 2.8.1, smb4k 0.7.3, scribus 1.3.3.4,
+ tellico 1.2.3
+
+2006-08-02 * KDE 3.5.4, KDevelop 3.3.4, aRts 1.5.4
+2006-08-01 akode 2.0.1, Amarok 1.4.1, Digikam 0.8.2, glib 2.12.1, gtk-qt-engine
+ 0.7, k3b 0.12.16, kdetv 0.8.9, Kile 1.9.1, kmplayer 0.9.2a, knemo
+ 0.4.2, KOffice 1.5.2, Krusader 1.70.1, KTorrent 2.0rc1, ImageMagick
+ 6.2.8, libidn 0.6.5, libmusicbrainz 2.1.3, libwpd 0.8.6, libxml
+ 2.6.26, libxslt 1.1.17, lyx 1.4.2, pth 2.0.7, Scribus 1.2.5, scribus
+ 1.3.3.2, smb4k 0.7.1 xine-lib 1.1.2, wv2 0.2.3
+
+2006-05-30 * KDE 3.5.3, KDevelop 3.3.3, aRts 1.5.3
+2006-05-29 amarok 1.4.0a, digikamimageplugins 0.8.1, kdbg 2.0.4, kdiff3 0.9.90,
+ kmplayer 0.9.2, kmymoney2 0.8.4, kphotoalbum 2.2, smb4k 0.7.0,
+ tellico 1.1.6
+2006-05-29 * KOffice 1.5.1
+2006-05-28 cyrus-sasl 2.1.22, imagemagick 6.2.7, libgsf 1.14.1, libxml2 2.6.24,
+ glib 2.10.3, libxslt 1.1.16, gmp 4.2.1
+
+2006-04-18 smb4k 0.6.10
+2006-04-12 k3b 0.12.15, lyx 1.4.1
+2006-04-11 * KOffice 1.5
+2006-04-10 kdiff3 0.9.89, Scribus 1.3.3.1
+2006-04-05 Kaffeine 0.8.1, KNemo 0.4
+2006-04-04 Tellico 1.1.4
+
+2006-03-30 Amarok 1.3.9
+2006-03-29 KOffice 1.5 RC1
+2006-03-28 * KDE 3.5.2, KDevelop 3.3.2, aRts 1.5.2
+2006-03-28 Scribus 1.3.3
+2006-03-27 glib 2.10.1, gmp 4.2, gnupg 1.9.20, gpgme 1.1.2, graphviz 2.8, k3b
+ 0.12.14, kaffeine 0.8, kdirstat 2.4.4, kile 1.9, kmymoney 0.8.3,
+ ktorrent 1.2, kmplayer 0.9.1c, libidn 0.6.3, imagemagick 6.2.6-6,
+ krename 3.0.11, krusader 1.7, kst 1.2.1, libexif 0.6.13, liggpg-error
+ 1.3, libgsf 1.14, libwpd 0.8.4, lyx 1.4, Qt 3.3.6, smb4k 0.6.9,
+ tellico 1.1.3
+2006-03-27 ! Added TARGET_X11 configuration option for XOrg 7.0 prefix
+
+2006-02-06 smb4k 0.6.7
+2006-02-01 KOffice 1.5 Beta 1 (apps-unstable/)
+
+2006-01-31 * KDE 3.5.1, KDevelop 3.3.1, aRts 1.5.1
+2006-01-29 Konversation 0.19
+2006-01-25 amarok 1.3.8, digikam 0.8.1, glib 2.8.6, kdbg 2.0.3, kmymoney 0.8.2,
+ libidn 0.6.1, scribus 1.3.2, showimg 0.9.5
+2006-01-14 glib 2.8.5, krename 3.0.10, libidn 0.6.0, libxml 2.6.23, Scribus 1.2.4.1
+
+2005-12-18 akode 2.0, amarok 1.3.7, k3b 0.12.10, kdbg 2.0.2
+2005-11-29 * KDE 3.5, KDevelop 3.3, aRts 1.5
+2005-11-29 akode 2.0rc1, digikam 0.8, digikamplugins 0.8, glib 2.8.4, gwenview 1.3.1,
+ k3b 0.12.8, kmplayer 0.9.1a, libgcrypt 1.2.2, libksba 0.9.13,
+ libmusicbrainz 2.1.2, lcms 1.15, pth 2.0.6, xine-lib 1.1.1
+2005-11-11 * KDE 3.5 RC 1, KDevelop 3.3 RC 1, aRts 1.5 RC 1
+2005-11-11 akode 2.0b3
+2005-11-08 amarok 1.3.6, k3b 0.12.7, kmymoney 0.8.1, libgsf 1.13.3
+2005-11-01 krusader 1.60.1, tse3 0.3.1
+
+2005-10-30 k3b 0.12.6, kmplayer 0.9.1, smb4k 0.6.4
+2005-10-27 kst 1.1.1
+2005-10-26 kdbg 2.0.1, pkgconfig 0.20
+2005-10-24 akode 2.0 beta 2, k3b 0.12.5, krename 3.0.9, libgsf 1.13.2, libidn 0.5.20,
+ tellico 1.0.3
+2005-10-18 * KDE 3.5 Beta 2, KDevelop 3.3 Beta 2, aRts 1.5 Beta 2
+2005-10-17 libkexif 0.2.2, libkipi 0.1.2, kipi-plugins 0.1.0-rc1, imagemagick 6.2.4-6
+2005-10-15 + akode 2.0b1
+2005-10-11 KOffice 1.4.2
+2005-10-03 + gmp 4.1.4
+2005-10-03 fribidi 0.10.7, glib 2.8.3, gpgme 1.1.0, krename 3.0.8, libgsf 1.12.3,
+ libwpd 0.8.3, scribus 1.3.1
+
+2005-09-21 * KDE 3.5 Beta, KDevelop 3.3 Beta, aRts 1.5 Beta
+2005-09-21 amarok 1.3.2, libidn 0.5.19, tellico 1.0.1
+2005-09-20 gnupg-1.9.19, libksba 0.9.12
+2005-09-15 libxml2 2.6.22, Scribus 1.2.3
+2005-09-12 Gwenview 1.3.0, Qt 3.3.5
+2005-09-11 k3b 0.12.4a, kbiff 3.8, Tellico 1.0
+2005-09-05 amarok 1.3.1, Kaffeine 0.7.1, libxml2 2.6.21, libxslt 1.1.15
+2005-09-03 smb4k 0.6.3
+
+2005-08-29 krename 3.0.7
+2005-08-23 glib 2.8.1, KMPlayer 0.9.0c
+2005-08-21 kdetv 0.8.8
+2005-08-19 Digikam 0.7.4, Digikam Plugins 0.7.4
+2005-08-17 Kaffeine 0.7
+2005-08-16 glib 2.8.0
+2005-08-15 Amarok 1.3
+2005-08-13 KMPlayer 0.9.0b, KMyMoney 0.8
+2005-08-09 * KDE 3.5 Alpha, KDevelop 3.3 Alpha, aRts 1.5 Alpha
+2005-08-03 glib 2.6.6
+2005-08-01 Smb4K 0.6.1
+
+2005-07-29 k3b 0.12.3
+2005-07-28 * KDE 3.4.2, KDevelop 3.2.2, aRts 1.4.2
+2005-07-27 taglib 1.4, Xine-lib 1.1.0
+2005-07-25 KOffice 1.4.1
+2005-07-24 KMPlayer 0.9.0a
+2005-07-22 Kompose 0.5.3, NoteEdit 2.8, pkgconfig 0.19, Scribus 1.3.0 (apps-unstable/)
+2005-07-21 Kompose 0.5.2, KSystemLog 0.3.2
+2005-07-17 LyX 1.3.6
+2005-07-16 kdbg 2.0.0, libidn 0.5.18
+2005-07-15 + KSystemLog 0.3.1, KTorrent 1.0, Tellico 0.13.8
+2005-07-15 libxml2 2.6.20
+2005-07-07 Digikam 0.7.3, Digikam Plugins 0.7.3
+2005-07-06 Scribus 1.2.2.1
+2005-07-03 aspell 0.60.3, fribidi 0.10.5, GnuPG 1.9.17, gpgme 1.0.3, ImageMagick 6.2.3-3,
+ k3b 0.12.2, libassuan 0.6.10, liggpg-error 1.1, libgsf 1.12.1, libwpd 0.8.2,
+ pkgconfig 0.18.1, Scribus 1.2.2
+
+2005-06-20 KOffice 1.4, KRename 3.0.6
+2005-06-18 k3b 0.12.1
+2005-06-17 glib 2.6.5, k3b 0.12, smb4k 0.6.0
+2005-06-07 Konversation 0.18
+2005-06-01 Kexi 0.9, Kile 1.8.1, KOffice 1.4 RC1
+
+2005-05-31 * KDE 3.4.1, KDevelop 3.2.1, aRts 1.4.1
+2005-05-28 libidn 0.5.17
+2005-05-23 GNUpg 1.9.16, libexif 0.6.12, libgsf 1.12.0, libwpd 0.8.1, mDNSResponder 107,
+ OpenSLP 1.2.1
+2005-05-22 Kile 1.8, KRename 3.0.5
+2005-05-21 amaroK 1.2.4, Kst 1.1.0
+2005-05-18 cyrus-sasl 2.1.21
+2005-05-12 k3b 0.11.24, Kexi 0.9beta1, libksba 0.9.11, libidn 0.5.16, SuperKaramba 0.36
+2005-05-12 + MetaBar 0.7 (apps-unstable/), gtk-qt-engine 0.6 (apps-unstable/)
+2005-05-04 Kimdaba 2.1
+
+2005-04-28 kdetv 0.8.7, KMplayer 0.8.4b
+2005-04-26 ImageMagick 6.2.2 (security), xine-lib 1.0.1
+2005-04-25 + cyrus-sasl 2.1.20
+2005-04-25 Kiosktool 1.0
+2005-04-22 kdelibs and kdewebdev security patches
+2005-04-21 KRename 3.0.4
+2005-04-19 + KOffice 1.4 Beta 1 (apps-unstable/), libwpd 0.8.0
+2005-04-19 kdetv 0.8.6
+2005-04-14 pkgconfig 0.17.2
+2005-04-11 Krusader 1.60
+2005-04-06 glib 2.6.4, Konversation 0.17
+2005-04-04 pkgconfig 0.16.0
+2005-04-03 Gwenview 1.2, libxml2 2.6.19, libxslt 1.1.14
+2005-04-02 kio-locate 0.3.4
+
+2005-03-30 ImageMagick 6.2.1
+2005-03-29 Amarok 1.2.3
+2005-03-28 ImageMagick 6.2.1, smb4k 0.5.2
+2005-03-26 k3b 0.11.23
+2005-03-24 Konversation 0.16
+2005-03-20 Kaffeine 0.6, libidn 0.5.15
+2005-03-19 GwenView 1.2.0pre4
+2005-03-18 libxml2 2.6.18, libxslt 1.1.13
+2005-03-16 * KDE 3.4, KDevelop 3.2, aRts 1.4
+2005-03-16 Amarok 1.2.2, ImageMagick 6.2.0, k3b 0.11.22
+2005-03-11 Basket 0.5.0
+2005-03-08 KVirc 3.2.0
+2005-03-04 Dikikam 0.7.2, Digikam-Plugins 0.7.2
+
+2005-02-28 amaroK 1.2.1, glib 2.6.3, GwenView 1.2.0pre3
+2005-02-26 Noteedit 2.7.4
+2005-02-26 * KDE_3_4_BRANCH: KDE 3.4 RC 1, KDevelop 3.2 RC 1, aRts 1.4 RC 1
+2005-02-25 KDiff3 0.9.88
+2005-02-24 ! Created KDE_3_4_BRANCH for KDE 3.4.x Konstruct releases
+2005-02-24 pth 2.0.4
+2005-02-19 KMPlayer 0.8.4a
+2005-02-17 Akregator 1.0_beta10
+2005-02-13 amaroK 1.2, GwenView 1.2.0pre2, mDNSResponder-98, KRename 3.0.3
+2005-02-12 libkipi 0.1.1, kipi-plugins 0.1.0-beta2
+2005-02-09 * HEAD: KDE 3.4 Beta 2, KDevelop 3.2 Beta 2, aRts 1.4 Beta 2
+2005-02-09 + mDNSResponder 87
+2005-02-09 ImageMagic 6.1.9-3
+2005-02-04 + Basket 0.5-rc1, KPlayer 0.5.3
+2005-02-04 glib 2.6.2, GnuPG 1.9.15, GraphViz 1.18, k3b 0.11.20, kdirstat 2.4.3,
+ libart_lgpl 2.3.17, libksba 0.9.10, pinentry 0.7.2, Qt 3.3.4
+2005-02-01 KDiff3 0.9.87
+
+2005-01-31 KMPlayer 0.8.4
+2005-01-30 kdetv 0.8.5, smb4k 0.5.1
+2005-01-29 libidn 0.5.13
+2005-01-26 K3b 0.11.19
+2005-01-24 Gwenview 1.2.0pre1
+2005-01-21 kio-locate 0.3.3
+2005-01-20 Konversation 0.15.1 (Security), kdegraphics & KOffice xpdf-Patches (Security)
+2005-01-19 ImageMagick 6.1.8-9 (Security)
+2005-01-17 libxml2 2.6.17, showimg 0.9.4-1
+2005-01-13 * HEAD: KDE 3.4 Beta 1, KDevelop 3.2 Beta 1, aRts 1.4 Beta 1
+2005-01-12 smb4k 0.5.0
+2005-01-10 libgcrypt 1.2.1
+2005-01-09 GwenView 1.1.8, Scribus 1.2.1
+2005-01-08 glib 2.6.1
+2005-01-07 KRename 3.0.3rc2
+2005-01-06 aspell 0.60.2, kmplayer 0.8.4-rc5
+2005-01-04 ImageMagick 6.1.7-5, libexif 0.6.10, libkexif 0.2.1, Digikam 0.7.1
+2005-01-01 GwenView 1.1.7
+
+2004-12-30 GNUpg 1.9.14, GPGme 1.0.2, libassuan 0.6.9, libgpg-error 1.0
+2004-12-26 Xine-lib 1.0
+2004-12-24 Kaffeine 0.5
+2004-12-22 Kompose 0.5.1
+2004-12-19 libgsf 1.11.1
+2004-12-17 glib 2.6, gnupg 1.9.13, lcms 1.14, pth 2.0.3
+2004-12-16 kmplayer 0.8.4-rc4b, krusader 1.5.1, xine-lib 1-rc8
+2004-12-12 K3b 0.11.18
+2004-12-10 kio-locate 0.3.1
+2004-12-08 * KDE 3.3.2, KDevelop 3.1.2, aRts 1.3.2
+2004-12-07 * HEAD: KDE 3.4 Alpha, KDevelop 3.2 Alpha, aRts 1.4 Alpha
+2004-12-07 ! Revived Konstruct "unstable" with a HEAD/KDE_3_3_BRANCH mix
+2004-12-03 glib 2.4.8
+2004-12-01 Konversation 0.15
+
+2004-11-30 + ShowImg 0.9.4
+2004-11-30 ImageMagick 6.1.5-7, KRename 3.0.3rc1
+2004-11-29 aspell 0.60.1.1, libassuan 0.6.8, libxslt 1.1.12
+2004-11-26 aKregator 1.0 Beta 8
+2004-11-25 Gwenview 1.1.6, Kst 1.0
+2004-11-24 Filelight 1.0 Beta 6
+2004-11-23 libidn 0.5.12
+2004-11-21 KMPlayer 0.8.4-rc3
+2004-11-20 ! HAVE_64BIT_TARGET config option (Thanks to Philippe Rigault)
+2004-11-20 openslp 1.2.0
+2004-11-18 libungif 4.1.3
+2004-11-16 KOffice 1.3.5, SuperKaramba 0.35
+2004-11-15 kdetv 0.8.4, libxml2 2.6.16
+2004-11-09 xine-lib 1-rc7
+2004-11-08 digiKam 0.7
+2004-11-07 taglib 1.3.1
+2004-11-06 Kaffeine 0.5-rc2
+2004-11-03 KMyMoney2 0.6.4
+2004-11-01 Krusader 1.50
+2004-11-01 + kio-locate 0.3
+
+2004-10-31 ! Categorized all the applications under apps/ into directories.
+2004-10-29 + libkexif 0.1, libkipi 0.1, kipi-plugins 0.1beta1
+2004-10-29 Kexi 0.1beta5
+2004-10-20 GnuPG 1.9.12, Kile 1.7.1
+2004-10-18 KimDaBa 2.0, Kompose 0.5
diff --git a/README b/README
new file mode 100644
index 0000000..7905e22
--- /dev/null
+++ b/README
@@ -0,0 +1,185 @@
+Introduction
+============
+"Konstruct" is a build system which helps you to install KDE releases and
+applications on your system. It downloads defined source tarballs, checks
+their integrity, decompresses, patches, configures, builds and installs them.
+
+A complete KDE installation should be as easy as "cd meta/kde;make install"
+which with this version gives a KDE 3.5.7 installation. Optionally you can
+install additional applications like KOffice 1.6.3 or KDevelop 3.4.1, just
+run for example "cd apps/office/koffice ; make install".
+
+By default "Konstruct" installs to ~/kde3.5.7/ which means you don't have to
+possess root privileges or risk to damage your system or affect another KDE.
+
+The following table shows how many MBytes source tarballs will be downloaded:
+
+ Directory/Target | Size | Description
+ --------------------+-------+----------------------------------------------
+ kde/kdebase | 56MB | Desktop with browser, editor and terminal
+ meta/kdepim-crypto | 68MB | Above plus kdepim and crypto libraries
+ meta/kde | 172MB | All "KDE 3.5.7" packages & dependencies
+ meta/everything | 248MB | Most stable known targets, see next table
+
+Following (unstable) targets are not included in the meta/everything target:
+
+ Directory/Target | Reason
+ ------------------------+---------------------------------------------------
+ apps-unstable/ | Unstable development versions and/or undelivered
+ | dependencies, maybe conflict with apps/ entries
+ i18n/ | Nobody needs everything, just pick your language
+ kde/kdebindings | Only needed for developing with non-C++ language
+
+If you have at least Qt 3.3 installed, define variable HAVE_QT_3_3_INSTALLED
+(see "Configuration" chapter) and subtract 14 MB from the numbers in every
+column.
+
+If you want to have KDE localized into your native language, look into the
+i18n/ directory, change to your language directory and start "make install".
+To localize KOffice, install an i18n/koffice-l10n-<language-code> package.
+
+"Konstruct" is maintained by binner@kde.org and based on GAR ports system by
+Nick Moffitt (http://www.lnx-bbc.org/garchitecture.html) and is inspired by
+GARNOME distribution started by Jeff Waugh (http://cipherfunk.org/garnome/).
+
+
+Preconditions
+=============
+A working GNU tool chain (gcc, GNU make, flex, BSD yacc, gettext etc.) and
+additional GNU tools like tar, gzip, bzip2, md5sum, patch and wget.
+
+Some basic libraries and some other libraries enabling additional functionality
+are not included in "Konstruct", http://www.kde.org/info/requirements/3.5.php
+lists them. Note that you may have to install the header files within separate
+"-dev" or "-devel" packages too.
+
+If you use a recent SUSE or Mandrake 9.2 distribution you might be interested in
+"Detektive", a simple script which checks and tells which required rpm packages
+of your distribution you have not installed: Just run "cd misc/detektive;make".
+
+I'm interested in any help to extend "Detektive" to other distributions/versions.
+
+
+Configuration
+=============
+Copy gar.conf.mk.in to gar.conf.mk and change it to your liking. Common options:
+
+ GARCHIVEDIR If you have already downloaded source tarballs set the path here.
+
+ prefix Where to install your KDE desktop. Default is ~/kde3.5.7/ .
+ Moving KDE installation elsewhere afterwards calls for troubles!
+
+ HAVE_64BIT_TARGET Set this if you want to compile KDE for a 64bit target (x86_64)
+
+ OWN_CFLAGS Allows you to specify compiler flags specific to your CPU.
+
+ HAVE_QT_3_3_INSTALLED Set this if you have at least Qt 3.3 (including moc,
+ uic and headers) installed and want to skip Qt installation.
+
+ BUILD_CLEAN Set this if you're low on available file system space.
+
+If the download fails because of a proxy, then please consult the wget man page
+for necessary options in your ~/.wgetrc. If download.kde.org redirects you to a
+broken or incomplete mirror you may fix your problem by changing kde.conf.mk.
+
+
+Usage
+=====
+Be sure that you have a live internet connection. Choose a target and change
+to the directory which helds its definition, e.g. "cd kde/kdebase". Now run
+make with one of the following targets, usually you only need "make install".
+
+The GAR system provides seven basic targets for each package:
+
+ fetch
+ This target downloads all files and patches needed to compile the package.
+ Typically this is a single tarball, accompanied by occasional patch files.
+
+ checksum
+ Uses md5sum to ensure that the downloaded files match those with which the
+ package maintainer worked.
+
+ extract
+ Makes sure that all of the necessary source files are available in a working
+ directory. In some cases (such as when downloading a single C++ source file)
+ this will simply copy files over.
+
+ patch
+ If the package has to be patched (either via third-party patches or package
+ maintainer patches), this target will perform that step.
+
+ configure
+ Configures the package as specified in the Makefile. It will typically run
+ the package's underlying configuration system (such as autoconf or Imake).
+
+ build
+ Performs the actual step of compilation after installing the dependencies.
+
+ install
+ Puts files in the proper locations and performs any necessary mop-up work.
+
+These targets are named after their counterparts in the BSD Ports system and
+behave in the same manner. If you want to install a package you have to enter
+the package's or target's directory and to run "make install" or "make patch"
+(just two examples). A later target includes all the previously listed ones.
+
+Some additional useful targets which you usually don't require are:
+
+ buildclean
+ Clean up the working directory but don't delete downloaded packages. Run this
+ if you installed missing dependencies and want to re-configure the package.
+
+ clean
+ Clean up the working directory. This also deletes downloaded packages! Either
+ use "buildclean" instead or call "garchive" before to prevent new downloads.
+
+ garchive
+ Call "checksum" target and save downloaded files to GARCHIVEDIR directory.
+
+ showdeps
+ Print a tree with the recursive dependencies of current package.
+
+For every target exists a deep-foo variant which will also call it recursively
+for all its dependencies, e.g. with "make deep-checksum" you can download all
+required source tarballs and build it later (when you have no net connection).
+
+
+After installation
+==================
+After installation you have to set some variables allowing your system to find
+KDE binaries and libraries and KDE to allow to find its own files, for Bash:
+
+ export QTDIR=~/kde3.5.7
+ export KDEDIR=~/kde3.5.7
+ export KDEDIRS=~/kde3.5.7
+
+ export LD_LIBRARY_PATH=~/kde3.5.7/lib
+ export PATH=~/kde3.5.7/bin:$PATH
+
+Setting KDEHOME too, e.g. "export KDEHOME=~/.kdetest", will tell KDE to save
+your settings to this directory and leave default ~/.kde directory unaffected.
+
+On shadow password systems you have to set $(prefix)/bin/kcheckpass SUID root
+or SGID shadow - otherwise you will not be able to unlock a locked desktop.
+
+The complete KDE desktop is started with "startkde", most distributions start
+it if you set it to the WINDOWMANAGER variable in your shell initializations.
+
+
+How to get latest version
+=========================
+You must have the Subversion client installed, then run in a shell:
+
+ svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/konstruct/
+
+If you have no own old gar.conf.mk, copy gar.conf.mk.in over to gar.conf.mk.
+
+To update your "Konstruct" checkout or the released "Konstruct" tarballs, change
+to the "konstruct" directory and run "svn up".
+
+License
+=======
+Redistribution and/or use, with or without modification, is permitted. This
+software is without warranty of any kind. The author(s) shall not be liable
+in the event that use of the software causes damage.
+
diff --git a/apps-unstable/Makefile b/apps-unstable/Makefile
new file mode 100644
index 0000000..84ff360
--- /dev/null
+++ b/apps-unstable/Makefile
@@ -0,0 +1 @@
+include ../category.mk
diff --git a/apps-unstable/category.mk b/apps-unstable/category.mk
new file mode 100644
index 0000000..39b89ea
--- /dev/null
+++ b/apps-unstable/category.mk
@@ -0,0 +1 @@
+include ../../gar.mk
diff --git a/apps-unstable/gtk-qt-engine/Makefile b/apps-unstable/gtk-qt-engine/Makefile
new file mode 100644
index 0000000..3746c59
--- /dev/null
+++ b/apps-unstable/gtk-qt-engine/Makefile
@@ -0,0 +1,20 @@
+GARNAME = gtk-qt-engine
+GARVERSION = 0.7
+CATEGORIES = apps-unstable
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://www.freedesktop.org/~davidsansome/
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = Let Gtk+ applications look more like KDE apps
+
+WORKSRC = $(WORKDIR)/$(GARNAME)
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps-unstable/gtk-qt-engine/checksums b/apps-unstable/gtk-qt-engine/checksums
new file mode 100644
index 0000000..fd2d4d4
--- /dev/null
+++ b/apps-unstable/gtk-qt-engine/checksums
@@ -0,0 +1 @@
+27ca211621f38c45b1c4c9e9ef1f84b0 download/gtk-qt-engine-0.7.tar.bz2
diff --git a/apps-unstable/kompose/Makefile b/apps-unstable/kompose/Makefile
new file mode 100644
index 0000000..d2248fe
--- /dev/null
+++ b/apps-unstable/kompose/Makefile
@@ -0,0 +1,19 @@
+GARNAME = kompose
+GARVERSION = 0.5.3
+CATEGORIES = apps-unstable
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://download.berlios.de/kompose/
+
+LIBDEPS = kde/kdebase
+#libs/imlib2
+
+DESCRIPTION = Fullscreen view of your tasks
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps-unstable/kompose/checksums b/apps-unstable/kompose/checksums
new file mode 100644
index 0000000..df07d7b
--- /dev/null
+++ b/apps-unstable/kompose/checksums
@@ -0,0 +1 @@
+d0605f3651ed3f2eca9b961266669d30 download/kompose-0.5.3.tar.bz2
diff --git a/apps-unstable/scribus/Makefile b/apps-unstable/scribus/Makefile
new file mode 100644
index 0000000..a7b0383
--- /dev/null
+++ b/apps-unstable/scribus/Makefile
@@ -0,0 +1,18 @@
+GARNAME = scribus
+GARVERSION = 1.3.3.8
+CATEGORIES = apps-unstable
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/scribus/ http://belnet.dl.sourceforge.net/sourceforge/scribus/
+
+LIBDEPS = libs/qt-x11-free libs/libart_lgpl libs/lcms
+
+DESCRIPTION = Desktop Publishing
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps-unstable/scribus/checksums b/apps-unstable/scribus/checksums
new file mode 100644
index 0000000..ef2687a
--- /dev/null
+++ b/apps-unstable/scribus/checksums
@@ -0,0 +1 @@
+fa79c8bba3e6e09b0bdeaf16579d6fa1 download/scribus-1.3.3.8.tar.bz2
diff --git a/apps/development/category.mk b/apps/development/category.mk
new file mode 100644
index 0000000..319488e
--- /dev/null
+++ b/apps/development/category.mk
@@ -0,0 +1,6 @@
+# extra configure info
+# CONFIGURE_ARGS += --disable-debug
+
+GARDIR = ../../..
+
+include ../../../gar.mk
diff --git a/apps/development/kdbg/Makefile b/apps/development/kdbg/Makefile
new file mode 100644
index 0000000..dea3c4d
--- /dev/null
+++ b/apps/development/kdbg/Makefile
@@ -0,0 +1,20 @@
+GARNAME = kdbg
+GARVERSION = 2.0.5
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/kdbg/ http://belnet.dl.sourceforge.net/sourceforge/kdbg/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = A Graphical Debugger Interface
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ENV = LIBQTMT="-lqt-mt"
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/development/kdbg/checksums b/apps/development/kdbg/checksums
new file mode 100644
index 0000000..da574e8
--- /dev/null
+++ b/apps/development/kdbg/checksums
@@ -0,0 +1 @@
+1c0a90c82f27c0ddcdf0a4434d85119b download/kdbg-2.0.5.tar.gz
diff --git a/apps/development/kdevelop/Makefile b/apps/development/kdevelop/Makefile
new file mode 100644
index 0000000..f45909c
--- /dev/null
+++ b/apps/development/kdevelop/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdevelop
+GARVERSION = 3.4.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs misc/graphviz
+
+DESCRIPTION = KDevelop
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX)
+
+include ../category.mk
diff --git a/apps/development/kdevelop/checksums b/apps/development/kdevelop/checksums
new file mode 100644
index 0000000..5cb7bf9
--- /dev/null
+++ b/apps/development/kdevelop/checksums
@@ -0,0 +1 @@
+abc6cc2831ad4c0f4da9fba9e38edce1 download/kdevelop-3.4.1.tar.bz2
diff --git a/apps/development/kdiff3/Makefile b/apps/development/kdiff3/Makefile
new file mode 100644
index 0000000..1a088ce
--- /dev/null
+++ b/apps/development/kdiff3/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kdiff3
+GARVERSION = 0.9.92
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://belnet.dl.sourceforge.net/sourceforge/kdiff3/ http://switch.dl.sourceforge.net/sourceforge/kdiff3/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Graphical Diff Utilitiy
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/development/kdiff3/checksums b/apps/development/kdiff3/checksums
new file mode 100644
index 0000000..6272843
--- /dev/null
+++ b/apps/development/kdiff3/checksums
@@ -0,0 +1 @@
+c7b52bfee6a085393de0c4f83732e8f0 download/kdiff3-0.9.92.tar.gz
diff --git a/apps/games/category.mk b/apps/games/category.mk
new file mode 100644
index 0000000..319488e
--- /dev/null
+++ b/apps/games/category.mk
@@ -0,0 +1,6 @@
+# extra configure info
+# CONFIGURE_ARGS += --disable-debug
+
+GARDIR = ../../..
+
+include ../../../gar.mk
diff --git a/apps/games/knights/Makefile b/apps/games/knights/Makefile
new file mode 100644
index 0000000..f6bf0e1
--- /dev/null
+++ b/apps/games/knights/Makefile
@@ -0,0 +1,18 @@
+GARNAME = knights
+GARVERSION = 0.6
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/knights/ http://belnet.dl.sourceforge.net/sourceforge/knights/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Chess Interface
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/games/knights/checksums b/apps/games/knights/checksums
new file mode 100644
index 0000000..bc7be53
--- /dev/null
+++ b/apps/games/knights/checksums
@@ -0,0 +1 @@
+b04574568b9bc3982b934328ee63fb74 download/knights-0.6.tar.gz
diff --git a/apps/graphics/category.mk b/apps/graphics/category.mk
new file mode 100644
index 0000000..319488e
--- /dev/null
+++ b/apps/graphics/category.mk
@@ -0,0 +1,6 @@
+# extra configure info
+# CONFIGURE_ARGS += --disable-debug
+
+GARDIR = ../../..
+
+include ../../../gar.mk
diff --git a/apps/graphics/digikam-plugins/Makefile b/apps/graphics/digikam-plugins/Makefile
new file mode 100644
index 0000000..d229f58
--- /dev/null
+++ b/apps/graphics/digikam-plugins/Makefile
@@ -0,0 +1,18 @@
+GARNAME = digikamimageplugins
+GARVERSION = 0.9.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/digikam/ http://belnet.dl.sourceforge.net/sourceforge/digikam/
+
+LIBDEPS = apps/graphics/digikam libs/imlib
+
+DESCRIPTION = Digital Photo Management Plugins
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/graphics/digikam-plugins/checksums b/apps/graphics/digikam-plugins/checksums
new file mode 100644
index 0000000..e0f5a26
--- /dev/null
+++ b/apps/graphics/digikam-plugins/checksums
@@ -0,0 +1 @@
+91cc6facd337d4daf5007e54e57cad3c download/digikamimageplugins-0.9.1.tar.bz2
diff --git a/apps/graphics/digikam/Makefile b/apps/graphics/digikam/Makefile
new file mode 100644
index 0000000..67124d2
--- /dev/null
+++ b/apps/graphics/digikam/Makefile
@@ -0,0 +1,18 @@
+GARNAME = digikam
+GARVERSION = 0.9.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/digikam/ http://belnet.dl.sourceforge.net/sourceforge/digikam/
+
+LIBDEPS = kde/kdelibs libs/imlib misc/pkgconfig libs/libkexif libs/kipi-plugins libs/exiv2
+
+DESCRIPTION = Digital Photo Management
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/graphics/digikam/checksums b/apps/graphics/digikam/checksums
new file mode 100644
index 0000000..09c6a19
--- /dev/null
+++ b/apps/graphics/digikam/checksums
@@ -0,0 +1 @@
+41e673dac4d0bb6203a6ec615d44b893 download/digikam-0.9.1.tar.bz2
diff --git a/apps/graphics/gwenview/Makefile b/apps/graphics/gwenview/Makefile
new file mode 100644
index 0000000..89f2c9a
--- /dev/null
+++ b/apps/graphics/gwenview/Makefile
@@ -0,0 +1,18 @@
+GARNAME = gwenview
+GARVERSION = 1.4.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/gwenview/ http://belnet.dl.sourceforge.net/sourceforge/gwenview/
+
+LIBDEPS = kde/kdelibs libs/kipi-plugins libs/exiv2
+
+DESCRIPTION = Image Viewer
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-kipi --with-extra-includes=$(prefix)/include/libexif
+
+include ../category.mk
diff --git a/apps/graphics/gwenview/checksums b/apps/graphics/gwenview/checksums
new file mode 100644
index 0000000..0bf0aaa
--- /dev/null
+++ b/apps/graphics/gwenview/checksums
@@ -0,0 +1 @@
+df5df7ace3e7bec73f96bf1646ab27b0 download/gwenview-1.4.1.tar.bz2
diff --git a/apps/graphics/kphotoalbum/Makefile b/apps/graphics/kphotoalbum/Makefile
new file mode 100644
index 0000000..f401355
--- /dev/null
+++ b/apps/graphics/kphotoalbum/Makefile
@@ -0,0 +1,19 @@
+GARNAME = kphotoalbum
+GARVERSION = 3.0.2
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://ktown.kde.org/kphotoalbum/download/
+
+LIBDEPS = kde/kdelibs libs/kipi-plugins libs/exiv2
+
+DESCRIPTION = Image Database
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+# --enable-final
+
+include ../category.mk
diff --git a/apps/graphics/kphotoalbum/checksums b/apps/graphics/kphotoalbum/checksums
new file mode 100644
index 0000000..9929f41
--- /dev/null
+++ b/apps/graphics/kphotoalbum/checksums
@@ -0,0 +1 @@
+decdf031878de8333f030d1e77ea8ae3 download/kphotoalbum-3.0.2.tar.bz2
diff --git a/apps/graphics/showimg/Makefile b/apps/graphics/showimg/Makefile
new file mode 100644
index 0000000..a927a58
--- /dev/null
+++ b/apps/graphics/showimg/Makefile
@@ -0,0 +1,18 @@
+GARNAME = showimg
+GARVERSION = 0.9.5
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://www.jalix.org/projects/showimg/download/0.9.5/
+
+LIBDEPS = kde/kdelibs misc/pkgconfig libs/libkexif libs/kipi-plugins
+
+DESCRIPTION = Image Viewer
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/graphics/showimg/checksums b/apps/graphics/showimg/checksums
new file mode 100644
index 0000000..92be1fd
--- /dev/null
+++ b/apps/graphics/showimg/checksums
@@ -0,0 +1 @@
+281c5f5e65ca14c69810d2099c43a4b8 download/showimg-0.9.5.tar.bz2
diff --git a/apps/internet/category.mk b/apps/internet/category.mk
new file mode 100644
index 0000000..319488e
--- /dev/null
+++ b/apps/internet/category.mk
@@ -0,0 +1,6 @@
+# extra configure info
+# CONFIGURE_ARGS += --disable-debug
+
+GARDIR = ../../..
+
+include ../../../gar.mk
diff --git a/apps/internet/kbear/Makefile b/apps/internet/kbear/Makefile
new file mode 100644
index 0000000..4c6e95e
--- /dev/null
+++ b/apps/internet/kbear/Makefile
@@ -0,0 +1,21 @@
+GARNAME = kbear
+GARVERSION = 2.1.1-1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).src.tar.bz2
+PATCHFILES = increase-ui-version.diff fix-gcc-semicolons.diff
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/kbear/ http://belnet.dl.sourceforge.net/sourceforge/kbear/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Graphical FTP Client
+
+WORKSRC = $(WORKDIR)/$(GARNAME)-2.1
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/internet/kbear/checksums b/apps/internet/kbear/checksums
new file mode 100644
index 0000000..3784f40
--- /dev/null
+++ b/apps/internet/kbear/checksums
@@ -0,0 +1,3 @@
+5ab2ed17353338cbac5fbe968e53d203 download/kbear-2.1.1-1.src.tar.bz2
+0d56ffcaa4e4ac1b98caafc60b56dde1 download/increase-ui-version.diff
+f5af97d242356abfa83444ab683f2cee download/fix-gcc-semicolons.diff
diff --git a/apps/internet/kbear/files/fix-gcc-semicolons.diff b/apps/internet/kbear/files/fix-gcc-semicolons.diff
new file mode 100644
index 0000000..168826d
--- /dev/null
+++ b/apps/internet/kbear/files/fix-gcc-semicolons.diff
@@ -0,0 +1,164 @@
+--- ./work/kbear-2.1/kbear/qextmdi/qextmdidefines.h.orig 2001-12-09 07:45:30.000000000 -0500
++++ ./work/kbear-2.1/kbear/qextmdi/qextmdidefines.h 2004-11-17 11:21:23.587352072 -0500
+@@ -88,7 +88,7 @@
+ TabPageMode = 2
+ };
+
+-}; //namespace
++} //namespace
+
+
+ //----------------------------------------------------------------------------
+--- ./work/kbear-2.1/kbear/qextmdi/qextmdimainfrm.cpp.orig 2002-10-23 18:47:55.000000000 -0400
++++ ./work/kbear-2.1/kbear/qextmdi/qextmdimainfrm.cpp 2004-11-17 11:41:44.727710520 -0500
+@@ -1863,7 +1863,7 @@
+ if (m_pTaskBar)
+ m_pTaskBar->close();
+ m_pTaskBar = 0L;
+-};
++}
+
+ #ifndef NO_INCLUDE_MOCFILES
+ #include "qextmdimainfrm.moc"
+--- ./work/kbear-2.1/kbear/base/kbearcopyjob.cpp.orig 2002-12-02 17:23:41.000000000 -0500
++++ ./work/kbear-2.1/kbear/base/kbearcopyjob.cpp 2004-11-17 11:45:54.569728760 -0500
+@@ -266,7 +266,7 @@
+ default:
+ break;
+ }
+-};
++}
+
+ void KBearCopyJob::slotEntries(KIO::Job* job, const KIO::UDSEntryList& list)
+ {
+--- ./work/kbear-2.1/kbear/kbeartransferview.h.orig 2002-11-04 18:15:17.000000000 -0500
++++ ./work/kbear-2.1/kbear/kbeartransferview.h 2004-11-17 11:47:44.494017728 -0500
+@@ -30,7 +30,7 @@
+
+ class KBearMdiChildView;
+ class QextMdiChildView;
+-class Transfer;;
++class Transfer;
+
+ /**
+ *@author Bjrn Sahlstrm
+--- ./work/kbear-2.1/kbear/plugins/importfilters/gftpimportfilter/gftpimportfilterplugin.cpp.orig 2002-09-10 13:39:32.000000000 -0400
++++ ./work/kbear-2.1/kbear/plugins/importfilters/gftpimportfilter/gftpimportfilterplugin.cpp 2004-11-17 12:15:31.984520640 -0500
+@@ -34,7 +34,7 @@
+ #include "gftpimportfilterplugin.h"
+
+ typedef KGenericFactory<GFTPImportFilterPlugin> GFTPImportFilterPluginFactory;
+-K_EXPORT_COMPONENT_FACTORY( libkbeargftpimportfilter, GFTPImportFilterPluginFactory( "GFTPImportFilterPlugin" ) );
++K_EXPORT_COMPONENT_FACTORY( libkbeargftpimportfilter, GFTPImportFilterPluginFactory( "GFTPImportFilterPlugin" ) )
+ //-----------------------------------------------
+ GFTPImportFilterPlugin::GFTPImportFilterPlugin(QObject *parent, const char *name,const QStringList& )
+ : SiteImportFilterPluginIface(parent,name),
+--- ./work/kbear-2.1/kbear/plugins/importfilters/ncftpimportfilter/ncftpimportfilterplugin.cpp.orig 2002-09-10 13:39:22.000000000 -0400
++++ ./work/kbear-2.1/kbear/plugins/importfilters/ncftpimportfilter/ncftpimportfilterplugin.cpp 2004-11-17 11:53:09.232649952 -0500
+@@ -42,7 +42,7 @@
+ #include "ncftpimportfilterplugin.h"
+
+ typedef KGenericFactory<NcFTPImportFilterPlugin> NcFTPImportFilterPluginFactory;
+-K_EXPORT_COMPONENT_FACTORY( libkbearncftpimportfilter, NcFTPImportFilterPluginFactory( "NcFTPImportFilterPlugin" ) );
++K_EXPORT_COMPONENT_FACTORY( libkbearncftpimportfilter, NcFTPImportFilterPluginFactory( "NcFTPImportFilterPlugin" ) )
+ //-----------------------------------------------
+ NcFTPImportFilterPlugin::NcFTPImportFilterPlugin(QObject *parent, const char *name, const QStringList& )
+ : SiteImportFilterPluginIface(parent,name),
+--- ./work/kbear-2.1/kbear/plugins/importfilters/kbearimportfilter/kbearimportfilterplugin.cpp.orig 2002-09-10 13:39:29.000000000 -0400
++++ ./work/kbear-2.1/kbear/plugins/importfilters/kbearimportfilter/kbearimportfilterplugin.cpp 2004-11-17 11:57:17.095969000 -0500
+@@ -108,7 +108,7 @@
+ }
+ ///////////////////////////////////////////////////////
+ typedef KGenericFactory<KBearImportFilterPlugin> KBearImportFilterPluginFactory;
+-K_EXPORT_COMPONENT_FACTORY( libkbearimportfilter, KBearImportFilterPluginFactory( "KBearImportFilterPlugin" ) );
++K_EXPORT_COMPONENT_FACTORY( libkbearimportfilter, KBearImportFilterPluginFactory( "KBearImportFilterPlugin" ) )
+ //-----------------------------------------------
+ KBearImportFilterPlugin::KBearImportFilterPlugin(QObject *parent, const char *name,const QStringList& )
+ : SiteImportFilterPluginIface(parent,name),
+--- ./work/kbear-2.1/kbear/plugins/importfilters/ws_ftpimportfilter/ws_ftpimportfilterplugin.cpp.orig 2002-09-10 13:38:55.000000000 -0400
++++ ./work/kbear-2.1/kbear/plugins/importfilters/ws_ftpimportfilter/ws_ftpimportfilterplugin.cpp 2004-11-17 11:59:28.761952728 -0500
+@@ -34,7 +34,7 @@
+ #include "ws_ftpimportfilterplugin.h"
+
+ typedef KGenericFactory<WS_FTPImportFilterPlugin> WS_FTPImportFilterPluginFactory;
+-K_EXPORT_COMPONENT_FACTORY( libkbearwsftpimportfilter, WS_FTPImportFilterPluginFactory( "WS_FTPImportFilterPlugin" ) );
++K_EXPORT_COMPONENT_FACTORY( libkbearwsftpimportfilter, WS_FTPImportFilterPluginFactory( "WS_FTPImportFilterPlugin" ) )
+ //-----------------------------------------------
+ WS_FTPImportFilterPlugin::WS_FTPImportFilterPlugin(QObject *parent, const char *name,const QStringList& )
+ : SiteImportFilterPluginIface(parent,name),
+--- ./work/kbear-2.1/kbear/plugins/importfilters/wincommanderimportfilter/wincommanderimportfilterplugin.cpp.orig 2002-09-10 13:39:18.000000000 -0400
++++ ./work/kbear-2.1/kbear/plugins/importfilters/wincommanderimportfilter/wincommanderimportfilterplugin.cpp 2004-11-17 12:00:44.572427784 -0500
+@@ -34,7 +34,7 @@
+ #include "wincommanderimportfilterplugin.h"
+
+ typedef KGenericFactory<WinCommanderImportFilterPlugin> WinCommanderImportFilterPluginFactory;
+-K_EXPORT_COMPONENT_FACTORY( libkbearwincommanderimportfilter, WinCommanderImportFilterPluginFactory( "WinCommanderImportFilterPlugin" ) );
++K_EXPORT_COMPONENT_FACTORY( libkbearwincommanderimportfilter, WinCommanderImportFilterPluginFactory( "WinCommanderImportFilterPlugin" ) )
+ //-----------------------------------------------
+ WinCommanderImportFilterPlugin::WinCommanderImportFilterPlugin(QObject *parent, const char *name,const QStringList& )
+ : SiteImportFilterPluginIface(parent,name),
+--- ./work/kbear-2.1/kbear/plugins/importfilters/krusaderimportfilter/krusaderimportfilterplugin.cpp.orig 2002-09-10 13:39:28.000000000 -0400
++++ ./work/kbear-2.1/kbear/plugins/importfilters/krusaderimportfilter/krusaderimportfilterplugin.cpp 2004-11-17 12:01:54.807750392 -0500
+@@ -34,7 +34,7 @@
+ #include "krusaderimportfilterplugin.h"
+
+ typedef KGenericFactory<KrusaderImportFilterPlugin> KrusaderImportFilterPluginFactory;
+-K_EXPORT_COMPONENT_FACTORY( libkbearkrusaderimportfilter, KrusaderImportFilterPluginFactory( "KrusaderImportFilterPlugin" ) );
++K_EXPORT_COMPONENT_FACTORY( libkbearkrusaderimportfilter, KrusaderImportFilterPluginFactory( "KrusaderImportFilterPlugin" ) )
+ //-----------------------------------------------
+ KrusaderImportFilterPlugin::KrusaderImportFilterPlugin(QObject *parent, const char *name,const QStringList& )
+ : SiteImportFilterPluginIface(parent,name),
+--- ./work/kbear-2.1/kbear/plugins/sitemanager/kbearsitemanagerplugin.cpp.orig 2002-11-21 10:58:42.000000000 -0500
++++ ./work/kbear-2.1/kbear/plugins/sitemanager/kbearsitemanagerplugin.cpp 2004-11-17 12:02:54.094737400 -0500
+@@ -50,7 +50,7 @@
+ #include "../../base/group.h"
+
+ typedef KGenericFactory<KBearSiteManagerPlugin> KBearSiteManagerPluginFactory;
+-K_EXPORT_COMPONENT_FACTORY( libkbearsitemanager, KBearSiteManagerPluginFactory( "kbearsitemanager" ) );
++K_EXPORT_COMPONENT_FACTORY( libkbearsitemanager, KBearSiteManagerPluginFactory( "kbearsitemanager" ) )
+ //-----------------------------------------------
+ KBearSiteManagerPlugin::KBearSiteManagerPlugin(QObject* parent, const char* name, const QStringList& )
+ : KParts::Plugin(parent,name),
+--- ./work/kbear-2.1/kbear/plugins/tools/kbeartoolsplugin.cpp.orig 2002-09-25 15:46:15.000000000 -0400
++++ ./work/kbear-2.1/kbear/plugins/tools/kbeartoolsplugin.cpp 2004-11-17 12:03:56.322277376 -0500
+@@ -40,7 +40,7 @@
+ #include "kbeartoolswidget.h"
+
+ typedef KGenericFactory<KBearToolsPlugin> KBearToolsPluginFactory;
+-K_EXPORT_COMPONENT_FACTORY( libkbeartoolsplugin, KBearToolsPluginFactory( "KBearToolsPlugin" ) );
++K_EXPORT_COMPONENT_FACTORY( libkbeartoolsplugin, KBearToolsPluginFactory( "KBearToolsPlugin" ) )
+ //-----------------------------------------------
+ KBearToolsPlugin::KBearToolsPlugin(QObject *parent, const char *name, const QStringList& )
+ : KParts::Plugin(parent,name)
+--- ./work/kbear-2.1/kbear/parts/filesyspart/kbearfilesyspart.cpp.orig 2003-11-21 15:13:24.000000000 -0500
++++ ./work/kbear-2.1/kbear/parts/filesyspart/kbearfilesyspart.cpp 2004-11-17 12:07:22.302963552 -0500
+@@ -79,7 +79,7 @@
+
+ //-----------------------------------------------
+ typedef KParts::GenericFactory<KBearFileSysPart> KBearFileSysPartFactory;
+-K_EXPORT_COMPONENT_FACTORY( libkbearfilesyspart, KBearFileSysPartFactory );
++K_EXPORT_COMPONENT_FACTORY( libkbearfilesyspart, KBearFileSysPartFactory )
+ //-----------------------------------------------
+ KBearFileSysPart::KBearFileSysPart( QWidget* parentWidget, const char* widgetName,
+ QObject* parent, const char* name, const QStringList& )
+--- ./work/kbear-2.1/kbear/parts/filesyspart/kbearfilesyspart.h.orig 2002-11-21 10:58:42.000000000 -0500
++++ ./work/kbear-2.1/kbear/parts/filesyspart/kbearfilesyspart.h 2004-11-17 12:09:09.217710040 -0500
+@@ -331,6 +331,6 @@
+ bool m_isLoading;
+ QValueList<int> m_splitterSizes;
+ QTextCodec* m_codec;
+- bool m_guiEnabled;;
++ bool m_guiEnabled;
+ };
+ #endif
+--- ./work/kbear-2.1/kbear/parts/dirsynchpart/kbeardirsynchpart.cpp.orig 2002-12-04 14:56:53.000000000 -0500
++++ ./work/kbear-2.1/kbear/parts/dirsynchpart/kbeardirsynchpart.cpp 2004-11-17 12:11:40.857657264 -0500
+@@ -58,7 +58,7 @@
+
+ //-----------------------------------------------
+ typedef KParts::GenericFactory<KBearDirSynchPart> KBearDirSynchPartFactory;
+-K_EXPORT_COMPONENT_FACTORY( libkbeardirsynchpart, KBearDirSynchPartFactory );
++K_EXPORT_COMPONENT_FACTORY( libkbeardirsynchpart, KBearDirSynchPartFactory )
+ //-----------------------------------------------
+ KBearDirSynchPart::KBearDirSynchPart( QWidget* parentWidget, const char* widgetName,
+ QObject* parent, const char* name, const QStringList& )
diff --git a/apps/internet/kbear/files/increase-ui-version.diff b/apps/internet/kbear/files/increase-ui-version.diff
new file mode 100644
index 0000000..903e2bf
--- /dev/null
+++ b/apps/internet/kbear/files/increase-ui-version.diff
@@ -0,0 +1,115 @@
+--- ./work/kbear-2.1/kbear/base/kbearquickconnectbase.ui 2002-08-06 15:30:43.000000000 +0200
++++ ./tmp/kbear-2.1/kbear/base/kbearquickconnectbase.ui 2004-07-09 20:43:14.525688528 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>KBearQuickConnectBase</class>
+ <widget class="QDialog">
+ <property name="name">
+--- ./work/kbear-2.1/kbear/base/viewsettingsbase.ui 2002-08-15 16:42:56.000000000 +0200
++++ ./tmp/kbear-2.1/kbear/base/viewsettingsbase.ui 2004-07-09 20:43:11.507147416 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>ViewSettingsBase</class>
+ <widget class="QWidget">
+ <property name="name">
+--- ./work/kbear-2.1/kbear/base/kbearsearchbase.ui 2002-04-27 00:35:36.000000000 +0200
++++ ./tmp/kbear-2.1/kbear/base/kbearsearchbase.ui 2004-07-09 20:43:09.211496408 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>KBearSearchBase</class>
+ <widget class="QDialog">
+ <property name="name">
+--- ./work/kbear-2.1/kbear/base/firewallsettingsbase.ui 2002-08-15 16:49:30.000000000 +0200
++++ ./tmp/kbear-2.1/kbear/base/firewallsettingsbase.ui 2004-07-09 20:43:06.227949976 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>FirewallSettingsBase</class>
+ <widget class="QWidget">
+ <property name="name">
+--- ./work/kbear-2.1/kbear/base/mixedsettingsbase.ui 2002-10-31 21:12:48.000000000 +0100
++++ ./tmp/kbear-2.1/kbear/base/mixedsettingsbase.ui 2004-07-09 20:43:02.760477112 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>MixedSettingsBase</class>
+ <author>Björn Sahlström</author>
+ <widget class="QWidget">
+--- ./work/kbear-2.1/kbear/base/windowsettingsbase.ui 2002-04-27 00:35:36.000000000 +0200
++++ ./tmp/kbear-2.1/kbear/base/windowsettingsbase.ui 2004-07-09 20:42:59.752934328 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>WindowSettingsBase</class>
+ <widget class="QWidget">
+ <property name="name">
+--- ./work/kbear-2.1/kbear/base/kbearwizardbase.ui 2002-09-19 19:04:49.000000000 +0200
++++ ./tmp/kbear-2.1/kbear/base/kbearwizardbase.ui 2004-07-09 20:42:56.161480312 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>KBearWizardBase</class>
+ <author>Björn Sahlström</author>
+ <widget class="QWizard">
+--- ./work/kbear-2.1/kbear/parts/dirsynchpart/dirsynchpartconfigbase.ui 2002-12-02 23:23:40.000000000 +0100
++++ ./tmp/kbear-2.1/kbear/parts/dirsynchpart/dirsynchpartconfigbase.ui 2004-07-09 20:42:53.101945432 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>DirSynchPartConfigBase</class>
+ <widget class="QWidget">
+ <property name="name">
+--- ./work/kbear-2.1/kbear/kbearqueryexit.ui 2002-02-05 14:19:07.000000000 +0100
++++ ./tmp/kbear-2.1/kbear/kbearqueryexit.ui 2004-07-09 20:42:49.900432136 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>KBearQueryExit</class>
+ <widget class="QDialog">
+ <property name="name">
+--- ./work/kbear-2.1/kbear/plugins/tools/kbeartoolsbase.ui 2002-08-16 11:21:14.000000000 +0200
++++ ./tmp/kbear-2.1/kbear/plugins/tools/kbeartoolsbase.ui 2004-07-09 20:42:46.634928568 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>KBearToolsBase</class>
+ <widget class="QWidget">
+ <property name="name">
+--- ./work/kbear-2.1/kbear/plugins/sitemanager/siteimportdialogbase.ui 2002-09-14 19:15:20.000000000 +0200
++++ ./tmp/kbear-2.1/kbear/plugins/sitemanager/siteimportdialogbase.ui 2004-07-09 20:42:43.379423480 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>SiteImportDialogBase</class>
+ <widget class="KDialog">
+ <property name="name">
+--- ./work/kbear-2.1/kbear/plugins/sitemanager/kbearsitemanageradvanceddialog.ui 2003-11-21 21:09:36.000000000 +0100
++++ ./tmp/kbear-2.1/kbear/plugins/sitemanager/kbearsitemanageradvanceddialog.ui 2004-07-09 20:42:39.555004880 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>KBearSiteManagerAdvancedDialog</class>
+ <widget class="QDialog">
+ <property name="name">
+@@ -172,8 +172,8 @@
+ </property>
+ <property name="whatsThis" stdset="0">
+ <string>Select the encoding used by this site.
+-Normally you shouldn't need to do this. Some sites,
+-like sites using, for example, chinese file names, this can be
++Normally you shouldn't need to do this. Some sites,
++like sites using, for example, chinese file names, this can be
+ necessary if you want the file names to be displayed correctly.</string>
+ </property>
+ </widget>
+--- ./work/kbear-2.1/kbear/plugins/sitemanager/kbearsitemanagerbase.ui 2002-10-20 16:51:29.000000000 +0200
++++ ./tmp/kbear-2.1/kbear/plugins/sitemanager/kbearsitemanagerbase.ui 2004-07-09 20:42:35.581608928 +0200
+@@ -1,4 +1,4 @@
+-<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
++<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+ <class>KBearSiteManagerBase</class>
+ <widget class="KDialog">
+ <property name="name">
diff --git a/apps/internet/kbiff/Makefile b/apps/internet/kbiff/Makefile
new file mode 100644
index 0000000..174158f
--- /dev/null
+++ b/apps/internet/kbiff/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kbiff
+GARVERSION = 3.8
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/kbiff/ http://belnet.dl.sourceforge.net/sourceforge/kbiff/
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = A utility which notifies you of new email
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/internet/kbiff/checksums b/apps/internet/kbiff/checksums
new file mode 100644
index 0000000..7bd008a
--- /dev/null
+++ b/apps/internet/kbiff/checksums
@@ -0,0 +1 @@
+97d9f7e24d4928a602f1c89d7ff18755 download/kbiff-3.8.tar.bz2
diff --git a/apps/internet/konversation/Makefile b/apps/internet/konversation/Makefile
new file mode 100644
index 0000000..0c71790
--- /dev/null
+++ b/apps/internet/konversation/Makefile
@@ -0,0 +1,18 @@
+GARNAME = konversation
+GARVERSION = 1.0.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://download2.berlios.de/konversation/ http://switch.dl.sourceforge.net/sourceforge/konversation/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Easy to use IRC client
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/internet/konversation/checksums b/apps/internet/konversation/checksums
new file mode 100644
index 0000000..4de31c2
--- /dev/null
+++ b/apps/internet/konversation/checksums
@@ -0,0 +1 @@
+60c2c5f94d4a916055db09728304b19f download/konversation-1.0.1.tar.bz2
diff --git a/apps/internet/ktorrent/Makefile b/apps/internet/ktorrent/Makefile
new file mode 100644
index 0000000..50830f2
--- /dev/null
+++ b/apps/internet/ktorrent/Makefile
@@ -0,0 +1,18 @@
+GARNAME = ktorrent
+GARVERSION = 2.1.4
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://ktorrent.org/downloads/2.1.4/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Bittorrent client
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/internet/ktorrent/checksums b/apps/internet/ktorrent/checksums
new file mode 100644
index 0000000..176744f
--- /dev/null
+++ b/apps/internet/ktorrent/checksums
@@ -0,0 +1 @@
+69d3d7df6200710181594da19ab8c248 download/ktorrent-2.1.4.tar.gz
diff --git a/apps/internet/kvirc/Makefile b/apps/internet/kvirc/Makefile
new file mode 100644
index 0000000..7db8f12
--- /dev/null
+++ b/apps/internet/kvirc/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kvirc
+GARVERSION = 3.2.0
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = ftp://ftp.kvirc.de/pub/kvirc/3.2.0/source/ ftp://ftp.kvirc.net/pub/kvirc/3.2.0/source/
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = IRC client
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/internet/kvirc/checksums b/apps/internet/kvirc/checksums
new file mode 100644
index 0000000..a91795c
--- /dev/null
+++ b/apps/internet/kvirc/checksums
@@ -0,0 +1 @@
+e783827fda3832fc3fb50e7a41ed627d download/kvirc-3.2.0.tar.bz2
diff --git a/apps/multimedia/amarok/Makefile b/apps/multimedia/amarok/Makefile
new file mode 100644
index 0000000..488a499
--- /dev/null
+++ b/apps/multimedia/amarok/Makefile
@@ -0,0 +1,18 @@
+GARNAME = amarok
+GARVERSION = 1.4.5
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://download.kde.org/stable/amarok/1.4.5/src/
+
+LIBDEPS = kde/kdemultimedia libs/taglib
+
+DESCRIPTION = Media Player
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/multimedia/amarok/checksums b/apps/multimedia/amarok/checksums
new file mode 100644
index 0000000..3dfc8df
--- /dev/null
+++ b/apps/multimedia/amarok/checksums
@@ -0,0 +1 @@
+1dac1cb5ac9c9cdabdab5f69b39e92c8 download/amarok-1.4.5.tar.bz2
diff --git a/apps/multimedia/category.mk b/apps/multimedia/category.mk
new file mode 100644
index 0000000..319488e
--- /dev/null
+++ b/apps/multimedia/category.mk
@@ -0,0 +1,6 @@
+# extra configure info
+# CONFIGURE_ARGS += --disable-debug
+
+GARDIR = ../../..
+
+include ../../../gar.mk
diff --git a/apps/multimedia/k3b/Makefile b/apps/multimedia/k3b/Makefile
new file mode 100644
index 0000000..a00f828
--- /dev/null
+++ b/apps/multimedia/k3b/Makefile
@@ -0,0 +1,18 @@
+GARNAME = k3b
+GARVERSION = 1.0.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/k3b/ http://belnet.dl.sourceforge.net/sourceforge/k3b/
+
+LIBDEPS = kde/kdelibs libs/id3lib
+
+DESCRIPTION = CDR frontend
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --without-hal
+
+include ../category.mk
diff --git a/apps/multimedia/k3b/checksums b/apps/multimedia/k3b/checksums
new file mode 100644
index 0000000..0e1d126
--- /dev/null
+++ b/apps/multimedia/k3b/checksums
@@ -0,0 +1 @@
+8abd11f56e6e40d6f2d0b076a5f8b8ed download/k3b-1.0.1.tar.bz2
diff --git a/apps/multimedia/kaffeine/Makefile b/apps/multimedia/kaffeine/Makefile
new file mode 100644
index 0000000..7718f21
--- /dev/null
+++ b/apps/multimedia/kaffeine/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kaffeine
+GARVERSION = 0.8.4
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/kaffeine/ http://belnet.dl.sourceforge.net/sourceforge/kaffeine/
+
+LIBDEPS = libs/xine-lib kde/kdelibs
+
+DESCRIPTION = Xine frontend
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/multimedia/kaffeine/checksums b/apps/multimedia/kaffeine/checksums
new file mode 100644
index 0000000..ac4d50f
--- /dev/null
+++ b/apps/multimedia/kaffeine/checksums
@@ -0,0 +1 @@
+6f62ebb7a6f88ff49f452856a1660d95 download/kaffeine-0.8.4.tar.bz2
diff --git a/apps/multimedia/kdetv/Makefile b/apps/multimedia/kdetv/Makefile
new file mode 100644
index 0000000..ac96371
--- /dev/null
+++ b/apps/multimedia/kdetv/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kdetv
+GARVERSION = 0.8.9
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://dziegel.free.fr/releases/
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = TV Viewer
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/multimedia/kdetv/checksums b/apps/multimedia/kdetv/checksums
new file mode 100644
index 0000000..f6c8e67
--- /dev/null
+++ b/apps/multimedia/kdetv/checksums
@@ -0,0 +1 @@
+7a5d73e08bc133cc2db228cb6655670e download/kdetv-0.8.9.tar.bz2
diff --git a/apps/multimedia/kmplayer/Makefile b/apps/multimedia/kmplayer/Makefile
new file mode 100644
index 0000000..cc21e3e
--- /dev/null
+++ b/apps/multimedia/kmplayer/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kmplayer
+GARVERSION = 0.9.4a
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://kmplayer.kde.org/pkgs/
+
+LIBDEPS = libs/xine-lib kde/kdemultimedia
+
+DESCRIPTION = MPlayer and Xine frontend
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/multimedia/kmplayer/checksums b/apps/multimedia/kmplayer/checksums
new file mode 100644
index 0000000..ffa79f4
--- /dev/null
+++ b/apps/multimedia/kmplayer/checksums
@@ -0,0 +1 @@
+10eeb318a4800e4cfa74957c7a6714da download/kmplayer-0.9.4a.tar.bz2
diff --git a/apps/multimedia/kplayer/Makefile b/apps/multimedia/kplayer/Makefile
new file mode 100644
index 0000000..1221b0d
--- /dev/null
+++ b/apps/multimedia/kplayer/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kplayer
+GARVERSION = 0.5.3
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://belnet.dl.sourceforge.net/sourceforge/kplayer/ http://switch.dl.sourceforge.net/sourceforge/kplayer/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = MPlayer frontend
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/multimedia/kplayer/checksums b/apps/multimedia/kplayer/checksums
new file mode 100644
index 0000000..081669f
--- /dev/null
+++ b/apps/multimedia/kplayer/checksums
@@ -0,0 +1 @@
+ea7398f96efa2f01ac875c548ab01878 download/kplayer-0.5.3.tar.bz2
diff --git a/apps/multimedia/noteedit/Makefile b/apps/multimedia/noteedit/Makefile
new file mode 100644
index 0000000..930ea59
--- /dev/null
+++ b/apps/multimedia/noteedit/Makefile
@@ -0,0 +1,18 @@
+GARNAME = noteedit
+GARVERSION = 2.8.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://download.berlios.de/noteedit/
+
+LIBDEPS = kde/kdelibs libs/tse3
+
+DESCRIPTION = Musical Score Editor
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --with-libtse3-include=$(includedir) --with-libtse3-libs=$(libdir)
+
+include ../category.mk
diff --git a/apps/multimedia/noteedit/checksums b/apps/multimedia/noteedit/checksums
new file mode 100644
index 0000000..21975b7
--- /dev/null
+++ b/apps/multimedia/noteedit/checksums
@@ -0,0 +1 @@
+653985c131afce45f0aa401fe4930909 download/noteedit-2.8.1.tar.gz
diff --git a/apps/office/category.mk b/apps/office/category.mk
new file mode 100644
index 0000000..319488e
--- /dev/null
+++ b/apps/office/category.mk
@@ -0,0 +1,6 @@
+# extra configure info
+# CONFIGURE_ARGS += --disable-debug
+
+GARDIR = ../../..
+
+include ../../../gar.mk
diff --git a/apps/office/kile/Makefile b/apps/office/kile/Makefile
new file mode 100644
index 0000000..05dbb4f
--- /dev/null
+++ b/apps/office/kile/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kile
+GARVERSION = 1.9.3
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://belnet.dl.sourceforge.net/sourceforge/kile/ http://switch.dl.sourceforge.net/sourceforge/kile/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Integrated LaTeX Environment
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/office/kile/checksums b/apps/office/kile/checksums
new file mode 100644
index 0000000..d1e5aca
--- /dev/null
+++ b/apps/office/kile/checksums
@@ -0,0 +1 @@
+0404b4be7bced7123111c49918130a1f download/kile-1.9.3.tar.bz2
diff --git a/apps/office/kmymoney2/Makefile b/apps/office/kmymoney2/Makefile
new file mode 100644
index 0000000..7274527
--- /dev/null
+++ b/apps/office/kmymoney2/Makefile
@@ -0,0 +1,19 @@
+GARNAME = kmymoney2
+GARVERSION = 0.8.6
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://kent.dl.sourceforge.net/sourceforge/kmymoney2/ http://switch.dl.sourceforge.net/sourceforge/kmymoney2/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Personal Finances Manager
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+# --enable-final
+
+include ../category.mk
diff --git a/apps/office/kmymoney2/checksums b/apps/office/kmymoney2/checksums
new file mode 100644
index 0000000..6b38896
--- /dev/null
+++ b/apps/office/kmymoney2/checksums
@@ -0,0 +1 @@
+4a1f1ff16c1f02d4e6ce3263c44daf74 download/kmymoney2-0.8.6.tar.gz
diff --git a/apps/office/koffice/Makefile b/apps/office/koffice/Makefile
new file mode 100644
index 0000000..9241323
--- /dev/null
+++ b/apps/office/koffice/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice
+GARVERSION = 1.6.3
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs libs/libart_lgpl libs/wv2 misc/imagemagick libs/lcms libs/libwpd misc/graphicsmagick
+
+DESCRIPTION = Integrated Office Suite
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/office/koffice/checksums b/apps/office/koffice/checksums
new file mode 100644
index 0000000..c8e78a6
--- /dev/null
+++ b/apps/office/koffice/checksums
@@ -0,0 +1 @@
+386d388094734f9759977c3267098e30 download/koffice-1.6.3.tar.bz2
diff --git a/apps/office/lyx/Makefile b/apps/office/lyx/Makefile
new file mode 100644
index 0000000..6a7a4d7
--- /dev/null
+++ b/apps/office/lyx/Makefile
@@ -0,0 +1,18 @@
+GARNAME = lyx
+GARVERSION = 1.4.4
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = ftp://ftp.lyx.org/pub/lyx/stable/
+
+LIBDEPS = libs/qt-x11-free
+
+DESCRIPTION = LaTeX Document Processor
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --with-frontend=qt
+
+include ../category.mk
diff --git a/apps/office/lyx/checksums b/apps/office/lyx/checksums
new file mode 100644
index 0000000..e3eda18
--- /dev/null
+++ b/apps/office/lyx/checksums
@@ -0,0 +1 @@
+2e778eba4191c5f9fb2cafa7901c322c download/lyx-1.4.4.tar.bz2
diff --git a/apps/office/scribus/Makefile b/apps/office/scribus/Makefile
new file mode 100644
index 0000000..91106ab
--- /dev/null
+++ b/apps/office/scribus/Makefile
@@ -0,0 +1,18 @@
+GARNAME = scribus
+GARVERSION = 1.2.5
+CATEGORIES = apps-unstable
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://belnet.dl.sourceforge.net/sourceforge/scribus/ http://switch.dl.sourceforge.net/sourceforge/scribus/
+
+LIBDEPS = libs/qt-x11-free libs/libart_lgpl libs/lcms
+
+DESCRIPTION = Desktop Publishing
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/office/scribus/checksums b/apps/office/scribus/checksums
new file mode 100644
index 0000000..ec72f55
--- /dev/null
+++ b/apps/office/scribus/checksums
@@ -0,0 +1 @@
+e005b1d616b8668bb23f0a130465385a download/scribus-1.2.5.tar.bz2
diff --git a/apps/office/tellico/Makefile b/apps/office/tellico/Makefile
new file mode 100644
index 0000000..6dc3260
--- /dev/null
+++ b/apps/office/tellico/Makefile
@@ -0,0 +1,18 @@
+GARNAME = tellico
+GARVERSION = 1.2.10
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://www.periapsis.org/tellico/download/
+
+LIBDEPS = kde/kdemultimedia libs/taglib
+
+DESCRIPTION = Collection Organizer
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/office/tellico/checksums b/apps/office/tellico/checksums
new file mode 100644
index 0000000..becb9a3
--- /dev/null
+++ b/apps/office/tellico/checksums
@@ -0,0 +1 @@
+1a9828b9d8c18da1c93e81047fa43cbd download/tellico-1.2.10.tar.gz
diff --git a/apps/system/category.mk b/apps/system/category.mk
new file mode 100644
index 0000000..319488e
--- /dev/null
+++ b/apps/system/category.mk
@@ -0,0 +1,6 @@
+# extra configure info
+# CONFIGURE_ARGS += --disable-debug
+
+GARDIR = ../../..
+
+include ../../../gar.mk
diff --git a/apps/system/kconfigeditor/Makefile b/apps/system/kconfigeditor/Makefile
new file mode 100644
index 0000000..5f98b24
--- /dev/null
+++ b/apps/system/kconfigeditor/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kconfigeditor
+GARVERSION = 0.9.5
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://developer.kde.org/~binner/konstruct/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = KDE Configuration Editor
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/system/kconfigeditor/checksums b/apps/system/kconfigeditor/checksums
new file mode 100644
index 0000000..d86fd92
--- /dev/null
+++ b/apps/system/kconfigeditor/checksums
@@ -0,0 +1 @@
+2a4c6ea286dd57f4ef23afb263f3d33c download/kconfigeditor-0.9.5.tar.bz2
diff --git a/apps/system/kcpuload/Makefile b/apps/system/kcpuload/Makefile
new file mode 100644
index 0000000..7f4e602
--- /dev/null
+++ b/apps/system/kcpuload/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kcpuload
+GARVERSION = 1.99
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = ftp://ftp.ch.freebsd.org/mirror/FreeBSD/ports/distfiles/
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = A utility that shows CPU utilization
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/system/kcpuload/checksums b/apps/system/kcpuload/checksums
new file mode 100644
index 0000000..077a1b6
--- /dev/null
+++ b/apps/system/kcpuload/checksums
@@ -0,0 +1 @@
+b86b638f93539186b01d5abf2056e018 download/kcpuload-1.99.tar.gz
diff --git a/apps/system/kio-locate/Makefile b/apps/system/kio-locate/Makefile
new file mode 100644
index 0000000..75dac9b
--- /dev/null
+++ b/apps/system/kio-locate/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kio-locate
+GARVERSION = 0.3.4
+CATEGORIES = apps
+DISTFILES = $(GARNAME)_$(GARVERSION).tar.gz
+
+MASTER_SITES = http://developer.kde.org/~binner/konstruct/
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = kio-locate
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/system/kio-locate/checksums b/apps/system/kio-locate/checksums
new file mode 100644
index 0000000..dd3005d
--- /dev/null
+++ b/apps/system/kio-locate/checksums
@@ -0,0 +1 @@
+a102912dcce87fb562913c573d8e4e1c download/kio-locate_0.3.4.tar.gz
diff --git a/apps/system/kiosktool/Makefile b/apps/system/kiosktool/Makefile
new file mode 100644
index 0000000..b17eb49
--- /dev/null
+++ b/apps/system/kiosktool/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kiosktool
+GARVERSION = 1.0
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://download.kde.org/stable/apps/KDE3.x/admin/ ftp://ftp.kde.org/pub/kde/stable/apps/KDE3.x/admin/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Usage Restrictions Editor
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/system/kiosktool/checksums b/apps/system/kiosktool/checksums
new file mode 100644
index 0000000..eea9ee3
--- /dev/null
+++ b/apps/system/kiosktool/checksums
@@ -0,0 +1 @@
+1576cdaa3cff93255fd5d7f6835b07e2 download/kiosktool-1.0.tar.bz2
diff --git a/apps/system/knemo/Makefile b/apps/system/knemo/Makefile
new file mode 100644
index 0000000..02eb71e
--- /dev/null
+++ b/apps/system/knemo/Makefile
@@ -0,0 +1,18 @@
+GARNAME = knemo
+GARVERSION = 0.4.6-3
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://www.eris23.de/knemo/
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = Network Monitor
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/system/knemo/checksums b/apps/system/knemo/checksums
new file mode 100644
index 0000000..09781b2
--- /dev/null
+++ b/apps/system/knemo/checksums
@@ -0,0 +1 @@
+efc966b06340ecaed11b8f939c895aa9 download/knemo-0.4.6-3.tar.bz2
diff --git a/apps/system/knetload/Makefile b/apps/system/knetload/Makefile
new file mode 100644
index 0000000..f69663d
--- /dev/null
+++ b/apps/system/knetload/Makefile
@@ -0,0 +1,18 @@
+GARNAME = knetload
+GARVERSION = 1.99
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://download.kde.org/stable/apps/KDE3.x/network/ ftp://ftp.kde.org/pub/kde/stable/apps/KDE3.x/network/
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = A utility that shows network bandwidth
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/system/knetload/checksums b/apps/system/knetload/checksums
new file mode 100644
index 0000000..cd85a8b
--- /dev/null
+++ b/apps/system/knetload/checksums
@@ -0,0 +1 @@
+45ced55390083ba85d0b229a51e398e4 download/knetload-1.99.tar.bz2
diff --git a/apps/system/ksystemlog/Makefile b/apps/system/ksystemlog/Makefile
new file mode 100644
index 0000000..71e569f
--- /dev/null
+++ b/apps/system/ksystemlog/Makefile
@@ -0,0 +1,18 @@
+GARNAME = ksystemlog
+GARVERSION = 0.3.2
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://annivernet.free.fr/ksystemlog/archives/src/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = System Log Viewer
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/system/ksystemlog/checksums b/apps/system/ksystemlog/checksums
new file mode 100644
index 0000000..52d6fd4
--- /dev/null
+++ b/apps/system/ksystemlog/checksums
@@ -0,0 +1 @@
+ca98b571202b6f18a9294face233b9f0 download/ksystemlog-0.3.2.tar.bz2
diff --git a/apps/system/smb4k/Makefile b/apps/system/smb4k/Makefile
new file mode 100644
index 0000000..3efb503
--- /dev/null
+++ b/apps/system/smb4k/Makefile
@@ -0,0 +1,18 @@
+GARNAME = smb4k
+GARVERSION = 0.8.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://download.berlios.de/smb4k/
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = Samba browser
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/system/smb4k/checksums b/apps/system/smb4k/checksums
new file mode 100644
index 0000000..22f7b7d
--- /dev/null
+++ b/apps/system/smb4k/checksums
@@ -0,0 +1 @@
+49d7a58f751d04c6c0697ee5e5912d4d download/smb4k-0.8.1.tar.bz2
diff --git a/apps/utilities/basket/Makefile b/apps/utilities/basket/Makefile
new file mode 100644
index 0000000..f420491
--- /dev/null
+++ b/apps/utilities/basket/Makefile
@@ -0,0 +1,18 @@
+GARNAME = basket
+GARVERSION = 1.0.2
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://basket.kde.org/downloads/
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = All-purpose notes taker
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/utilities/basket/checksums b/apps/utilities/basket/checksums
new file mode 100644
index 0000000..981270d
--- /dev/null
+++ b/apps/utilities/basket/checksums
@@ -0,0 +1 @@
+d71c62a56de9cc32ba2633e63e99071f download/basket-1.0.2.tar.gz
diff --git a/apps/utilities/category.mk b/apps/utilities/category.mk
new file mode 100644
index 0000000..319488e
--- /dev/null
+++ b/apps/utilities/category.mk
@@ -0,0 +1,6 @@
+# extra configure info
+# CONFIGURE_ARGS += --disable-debug
+
+GARDIR = ../../..
+
+include ../../../gar.mk
diff --git a/apps/utilities/filelight/Makefile b/apps/utilities/filelight/Makefile
new file mode 100644
index 0000000..2616f98
--- /dev/null
+++ b/apps/utilities/filelight/Makefile
@@ -0,0 +1,18 @@
+GARNAME = filelight
+GARVERSION = 1.0
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://www.methylblue.com/filelight/packages/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Graphical disk usage utility
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/utilities/filelight/checksums b/apps/utilities/filelight/checksums
new file mode 100644
index 0000000..52844fa
--- /dev/null
+++ b/apps/utilities/filelight/checksums
@@ -0,0 +1 @@
+aa885e53e09f40e7fdd371395140b957 download/filelight-1.0.tar.bz2
diff --git a/apps/utilities/kdirstat/Makefile b/apps/utilities/kdirstat/Makefile
new file mode 100644
index 0000000..d077256
--- /dev/null
+++ b/apps/utilities/kdirstat/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kdirstat
+GARVERSION = 2.4.4
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://kdirstat.sourceforge.net/download/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Graphical disk usage utility
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/utilities/kdirstat/checksums b/apps/utilities/kdirstat/checksums
new file mode 100644
index 0000000..d5ca28a
--- /dev/null
+++ b/apps/utilities/kdirstat/checksums
@@ -0,0 +1 @@
+6eb948021d63fc44966d5a29a2f35d9a download/kdirstat-2.4.4.tar.bz2
diff --git a/apps/utilities/krename/Makefile b/apps/utilities/krename/Makefile
new file mode 100644
index 0000000..974216c
--- /dev/null
+++ b/apps/utilities/krename/Makefile
@@ -0,0 +1,18 @@
+GARNAME = krename
+GARVERSION = 3.0.14
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://belnet.dl.sourceforge.net/sourceforge/krename/ http://switch.dl.sourceforge.net/sourceforge/krename/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Batch file rename utility
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-final
+
+include ../category.mk
diff --git a/apps/utilities/krename/checksums b/apps/utilities/krename/checksums
new file mode 100644
index 0000000..4632b72
--- /dev/null
+++ b/apps/utilities/krename/checksums
@@ -0,0 +1 @@
+1f5fe57384d912c11fbd0fae94bb7fca download/krename-3.0.14.tar.bz2
diff --git a/apps/utilities/krusader/Makefile b/apps/utilities/krusader/Makefile
new file mode 100644
index 0000000..f05f052
--- /dev/null
+++ b/apps/utilities/krusader/Makefile
@@ -0,0 +1,18 @@
+GARNAME = krusader
+GARVERSION = 1.70.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/krusader/ http://belnet.dl.sourceforge.net/sourceforge/krusader/
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Old-school file manager
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/utilities/krusader/checksums b/apps/utilities/krusader/checksums
new file mode 100644
index 0000000..1e01d43
--- /dev/null
+++ b/apps/utilities/krusader/checksums
@@ -0,0 +1 @@
+d8b33c94385fe055d55f592f0dc15c36 download/krusader-1.70.1.tar.gz
diff --git a/apps/utilities/kst/Makefile b/apps/utilities/kst/Makefile
new file mode 100644
index 0000000..3895c37
--- /dev/null
+++ b/apps/utilities/kst/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kst
+GARVERSION = 1.3.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://download.kde.org/stable/apps/KDE3.x/scientific/ ftp://ftp.kde.org/pub/kde/stable/apps/KDE3.x/scientific/
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = Data viewing program
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/apps/utilities/kst/checksums b/apps/utilities/kst/checksums
new file mode 100644
index 0000000..729a739
--- /dev/null
+++ b/apps/utilities/kst/checksums
@@ -0,0 +1 @@
+b18013223dc4cc2d1d0c8c4197bf8f97 download/kst-1.3.1.tar.gz
diff --git a/category.mk b/category.mk
new file mode 100644
index 0000000..2615f8b
--- /dev/null
+++ b/category.mk
@@ -0,0 +1,18 @@
+# This makefile is to be included from Makefiles in each category
+# directory.
+%:
+ @for i in $(filter-out CVS/,$(wildcard */)) ; do \
+ $(MAKE) -C $$i $* ; \
+ done
+
+paranoid-%:
+ @for i in $(filter-out CVS/,$(wildcard */)) ; do \
+ $(MAKE) -C $$i $* || exit 2; \
+ done
+
+export BUILDLOG ?= $(shell pwd)/buildlog.txt
+
+report-%:
+ @for i in $(filter-out CVS/,$(wildcard */)) ; do \
+ $(MAKE) -C $$i $* || echo " *** make $* in $$i failed ***" >> $(BUILDLOG); \
+ done
diff --git a/color.mk b/color.mk
new file mode 100644
index 0000000..b3841a6
--- /dev/null
+++ b/color.mk
@@ -0,0 +1,63 @@
+#-*- mode: Fundamental; tab-width: 4; -*-
+# ex:ts=4
+# $Id$
+
+###
+# This file contains non-invasive color patterns for output.
+
+###
+# failsafe defaults.
+TMSG_BRIGHT =$1
+TMSG_ID =$1
+TMSG_ACTION =$1
+TMSG_SUCCESS =$1
+TMSG_FAIL =$1
+TMSG_LIB = ==> $1 $2 $3
+
+##
+# If there is no $TERM variable, we don't want colors.
+ifneq ($(TERM),)
+ # equivalently, we want TPUT, since it should be safe,
+ # using valid terminfo(5), for almost any $(TERM) value.
+
+ ###
+ # if you don't have tput, we could rely on ANSI, but that
+ # would defeat the purpose of using tput as a safe colorizer.
+ ifneq ($(strip $(shell which tput)),)
+ TERM_RST =$(shell tput sgr0)
+ TERM_BOLD =$(shell tput bold)
+
+ TERM_BLACK =$(shell tput setaf 0)
+ TERM_RED =$(shell tput setaf 1)
+ TERM_GREEN =$(shell tput setaf 2)
+ TERM_YELLOW =$(shell tput setaf 3)
+ TERM_BLUE =$(shell tput setaf 4)
+ TERM_MAGENTA =$(shell tput setaf 5)
+ TERM_CYAN =$(shell tput setaf 6)
+ TERM_WHITE =$(shell tput setaf 7)
+
+ # some functional color substitutions; these
+ # were designed on a white background; YMMV.
+ # If they are ugly, an if condition that checks
+ # the background color(?) of the terminal could
+ # select more appropriate colors.
+ #
+ # use these likeso:
+ # $(call TMSG_BRIGHT,bright message)
+ # these are all unary functions.
+ TMSG_BRIGHT =$(TERM_YELLOW)$1$(TERM_RST)
+ TMSG_ID =$(TERM_BLUE)$1$(TERM_RST)
+ TMSG_ACTION =$(TERM_RED)$1$(TERM_RST)
+ TMSG_SUCCESS =$(TERM_GREEN)$1$(TERM_RST)
+ TMSG_FAIL =$(TERM_RED)$(TERM_BOLD)$1$(TERM_RST)
+
+ # $(call TMSG_LIB,building|grabbing source|...,file|package,as a dependency|as build dep|...)
+ # eg.
+ # $(call TMSG_LIB,building,$*,as a dependency)
+ # or, alternatively, just 2 arguments
+ # $(call TMSG_LIB,extracting,some_file)
+ TMSG_LIB =$(call TMSG_BRIGHT,==>) $1 $(call TMSG_ID,$2) $3
+
+ endif # tput?
+endif # TERM?
+
diff --git a/gar.conf.mk.in b/gar.conf.mk.in
new file mode 100644
index 0000000..9244fb3
--- /dev/null
+++ b/gar.conf.mk.in
@@ -0,0 +1,158 @@
+#-*- mode: Fundamental; tab-width: 4; -*-
+# ex:ts=4
+# $Id$
+
+# This file contains configuration variables that are global to
+# the GAR system. Users wishing to make a change on a
+# per-package basis should edit the category/package/Makefile, or
+# specify environment variables on the make command-line.
+
+# Variables that define the default *actions* (rather than just
+# default data) of the system will remain in bbc.gar.mk
+# (bbc.port.mk)
+
+# Set this variable if you have at least Qt 3.3 (including moc, uic and headers)
+# installed and want to skip the installation of the Qt 3.3 package.
+# Make sure that $QTDIR/bin, $QTDIR/$(TARGET_LIBNAME) and $QTDIR/include are reasonable.
+
+#HAVE_QT_3_3_INSTALLED = true
+
+# Setting this variable will cause the results of your builds to
+# be cleaned out after being installed. Uncomment only if you
+# desire this behavior!
+
+#BUILD_CLEAN = true
+
+# The GARCHIVEDIR is a directory containing cached files. It can be created
+# manually, or with 'make garchive' once you've started downloading required
+# files (say with 'make paranoid-checksum'. Example:
+
+GARCHIVEDIR = $(HOME)/kde3.5.7-sources
+
+# Set this variable if you want to compile KDE for a 64bit target (x86_64)
+
+#HAVE_64BIT_TARGET = true
+
+# Several variables depend on the target architecture
+
+ifdef HAVE_64BIT_TARGET
+ ENABLE_LIBSUFFIX="--enable-libsuffix=64"
+ TARGET_LIBNAME = lib64
+ TARGET_PLATFORM = linux-g++-64
+
+ ## Distributions which use XOrg 7.0 like Fedora Core 5
+ #TARGET_X11 = /usr
+ #TARGET_X11_LIB = /usr/lib64
+
+ ## Other distributions
+ TARGET_X11 = /usr/X11R6
+ TARGET_X11_LIB = /usr/X11R6/lib64
+
+ TARGET_PKG_CONFIG_PATH = /usr/lib64/pkgconfig:/usr/local/lib64/pkgconfig
+
+ # *Mandatory* compiler options on x86_64
+ OWN_CFLAGS = -m64 -fPIC
+
+ # Compiler options (optional)
+ OWN_CFLAGS += -O2 -pipe
+
+ # Optional compiler options for gcc >= 3.4.0
+# OWN_CFLAGS += -march=opteron -O3 -pipe
+
+else
+ ENABLE_LIBSUFFIX=
+ TARGET_LIBNAME = lib
+ TARGET_PLATFORM = linux-g++
+
+ ## Distributions which use XOrg 7.0 like Fedora Core 5
+ #TARGET_X11 = /usr
+ #TARGET_X11_LIB = /usr/lib
+
+ ## Other distributions
+ TARGET_X11 = /usr/X11R6
+ TARGET_X11_LIB = /usr/X11R6/lib
+
+ TARGET_PKG_CONFIG_PATH = /usr/lib/pkgconfig:/usr/local/lib/pkgconfig
+
+ # Compiler options (optional)
+ OWN_CFLAGS = -O2 -pipe
+
+endif
+
+# These are the standard directory name variables from all GNU
+# makefiles. They're also used by autoconf, and can be adapted
+# for a variety of build systems.
+#
+# TODO: set $(SYSCONFDIR) and $(LOCALSTATEDIR) to never use
+# /usr/etc or /usr/var
+prefix ?= $(HOME)/kde3.5.7
+exec_prefix = $(prefix)
+bindir = $(exec_prefix)/bin
+sbindir = $(exec_prefix)/sbin
+libexecdir = $(exec_prefix)/libexec
+datadir = $(prefix)/share
+sysconfdir = $(prefix)/etc
+sharedstatedir = $(prefix)/share
+localstatedir = $(prefix)/var
+libdir = $(exec_prefix)/$(TARGET_LIBNAME)
+infodir = $(BUILD_PREFIX)/info
+lispdir = $(prefix)/share/emacs/site-lisp
+includedir = $(BUILD_PREFIX)/include
+mandir = $(BUILD_PREFIX)/man
+docdir = $(BUILD_PREFIX)/share/doc
+sourcedir = $(BUILD_PREFIX)/src
+
+# the DESTDIR is used at INSTALL TIME ONLY to determine what the
+# filesystem root should be. The BUILD_PREFIX is the prefix that
+# usurps the DESTDIR. It should be considered relative to
+# $(DESTDIR). Thus, if includedir were set to
+# $(BUILD_PREFIX)/include, it would expand out at install time
+# (BUT NO SOONER) to /tmp/gar/../../tmp/build. The /../../ at
+# the front should be harmless, as .. for / is just / itself.
+DESTDIR ?=
+BUILD_PREFIX ?= $(prefix)
+#BUILD_PREFIX ?= $(ROOTFROMDEST)/tmp/build
+
+ifdef HAVE_QT_3_3_INSTALLED
+ # allow us to link to libraries we installed
+ CPPFLAGS := -I$(DESTDIR)$(includedir) -I$(QTDIR)/include -I$(DESTDIR)/usr/X11R6/include $(CPPFLAGS)
+ CFLAGS := -I$(DESTDIR)$(includedir) -I$(QTDIR)/include -I$(DESTDIR)/usr/X11R6/include -L$(DESTDIR)$(libdir) -L$(QTDIR)/$(TARGET_LIBNAME) -L$(DESTDIR)$(TARGET_X11_LIB) $(CFLAGS)
+ LDFLAGS := -L$(DESTDIR)$(libdir) -L$(DESTDIR)$(TARGET_X11_LIB) -L$(QTDIR)/$(TARGET_LIBNAME) $(LDFLAGS)
+ # allow us to use programs we just built
+ PATH := $(DESTDIR)$(bindir):$(DESTDIR)$(sbindir):$(DESTDIR)$(BUILD_PREFIX)/bin:$(DESTDIR)$(BUILD_PREFIX)/sbin:$(QTDIR)/bin:$(PATH)
+ LD_LIBRARY_PATH := $(DESTDIR)$(libdir):$(DESTDIR)$(BUILD_PREFIX)/$(TARGET_LIBNAME):$(QTDIR)/$(TARGET_LIBNAME):$(LD_LIBRARY_PATH)
+else
+ # allow us to link to libraries we installed
+ CPPFLAGS += -I$(DESTDIR)$(includedir) -I$(DESTDIR)/usr/X11R6/include
+ CFLAGS += -I$(DESTDIR)$(includedir) -I$(DESTDIR)/usr/X11R6/include -L$(DESTDIR)$(libdir) -L$(DESTDIR)$(TARGET_X11_LIB)
+ LDFLAGS += -L$(DESTDIR)$(libdir) -L$(DESTDIR)$(TARGET_X11_LIB)
+ # allow us to use programs we just built
+ PATH := $(DESTDIR)$(bindir):$(DESTDIR)$(sbindir):$(DESTDIR)$(BUILD_PREFIX)/bin:$(DESTDIR)$(BUILD_PREFIX)/sbin:$(PATH)
+ LD_LIBRARY_PATH := $(DESTDIR)$(libdir):$(DESTDIR)$(BUILD_PREFIX)/$(TARGET_LIBNAME):$(LD_LIBRARY_PATH)
+endif
+
+# This is for foo-config chaos
+PKG_CONFIG_PATH:=$(DESTDIR)$(libdir)/pkgconfig:$(TARGET_PKG_CONFIG_PATH):$(PKG_CONFIG_PATH)
+
+
+# Now add own flags to CFLAGS and keep OWN_CFLAGS for qt-x11-free's Makefile.
+CFLAGS += $(OWN_CFLAGS)
+
+# Equalise CFLAGS and CXXFLAGS
+CXXFLAGS := $(CFLAGS)
+
+# If you have no following GNU tools installed change these lines
+TAR = tar
+MD5 = md5sum
+
+# make these variables available to configure and build scripts
+# outside of make's realm.
+export DESTDIR prefix exec_prefix bindir sbindir libexecdir datadir sysconfdir
+export sharedstatedir localstatedir libdir infodir lispdir includedir mandir
+export docdir sourcedir
+export CC CXX
+export CPPFLAGS CFLAGS CXXFLAGS LDFLAGS PATH LD_LIBRARY_PATH LD_PRELOAD
+export PKG_CONFIG_PATH BUILD_CLEAN
+
+# prepend the local file listing
+FILE_SITES = file://$(FILEDIR)/ file://$(GARCHIVEDIR)/
diff --git a/gar.lib.mk b/gar.lib.mk
new file mode 100644
index 0000000..3f4e3fa
--- /dev/null
+++ b/gar.lib.mk
@@ -0,0 +1,469 @@
+#-*- mode: Fundamental; tab-width: 4; -*-
+# ex:ts=4
+# $Id$
+
+# Copyright (C) 2001 Nick Moffitt
+#
+# Redistribution and/or use, with or without modification, is
+# permitted. This software is without warranty of any kind. The
+# author(s) shall not be liable in the event that use of the
+# software causes damage.
+
+# cookies go here, so we have to be able to find them for
+# dependency checking.
+VPATH += $(COOKIEDIR)
+
+# So these targets are all loaded into bbc.port.mk at the end,
+# and provide actions that would be written often, such as
+# running configure, automake, makemaker, etc.
+#
+# The do- targets depend on these, and they can be overridden by
+# a port maintainer, since they'e pattern-based. Thus:
+#
+# extract-foo.tar.gz:
+# (special stuff to unpack non-standard tarball, such as one
+# accidentally named .gz when it's really bzip2 or something)
+#
+# and this will override the extract-%.tar.gz rule.
+
+# convenience variable to make the cookie.
+MAKECOOKIE = mkdir -p $(COOKIEDIR)/$(@D) && date >> $(COOKIEDIR)/$@
+#################### FETCH RULES ####################
+
+URLS = $(subst ://,//,$(foreach SITE,$(FILE_SITES) $(MASTER_SITES),$(addprefix $(SITE),$(DISTFILES))) $(foreach SITE,$(FILE_SITES) $(PATCH_SITES) $(MASTER_SITES),$(addprefix $(SITE),$(PATCHFILES))))
+
+
+# Download the file if and only if it doesn't have a preexisting
+# checksum file. Loop through available URLs and stop when you
+# get one that doesn't return an error code.
+$(DOWNLOADDIR)/%:
+ @if test -f $(COOKIEDIR)/checksum-$*; then : ; else \
+ echo " ==> Grabbing $(call TMSG_ID,$@)"; \
+ for i in $(filter %/$*,$(URLS)); do \
+ echo " ==> Trying $(call TMSG_ID,$$i)"; \
+ $(MAKE) -s $$i || continue; \
+ break; \
+ done; \
+ if test -r $@ ; then : ; else \
+ echo '*** GAR GAR GAR! Failed to download $(call TMSG_ID,$@)! GAR GAR GAR! ***' 1>&2; \
+ false; \
+ fi; \
+ fi
+
+# download an http URL
+http//%:
+ @wget -c -nd --passive-ftp -P $(DOWNLOADDIR) http://$*
+
+# download an ftp URL
+ftp//%:
+ @wget -c -nd --passive-ftp -P $(DOWNLOADDIR) ftp://$*
+
+# link to a local copy of the file
+# (absolute path)
+file///%:
+ @if test -f /$*; then \
+ ln -f -s /$* $(DOWNLOADDIR)/$(notdir $*); \
+ else \
+ false; \
+ fi
+
+# link to a local copy of the file
+# (relative path)
+file//%:
+ @if test -f $*; then \
+ ln -f -s "$(CURDIR)/$*" $(DOWNLOADDIR)/$(notdir $*); \
+ else \
+ false; \
+ fi
+
+# Using Jeff Waugh's rsync rule.
+# DOES NOT PRESERVE SYMLINKS!
+rsync//%:
+ @rsync -azvLP rsync://$* $(DOWNLOADDIR)/
+
+# Using Jeff Waugh's scp rule
+scp//%:
+ @scp -C $* $(DOWNLOADDIR)/
+
+#################### CHECKSUM RULES ####################
+
+# check a given file's checksum against $(CHECKSUM_FILE) and
+# error out if it mentions the file without an "OK".
+checksum-%: $(CHECKSUM_FILE)
+ @echo " ==> Running checksum on $(call TMSG_ID,$*)"
+ @if grep -- '$*' $(CHECKSUM_FILE); then \
+ if LC_ALL="C" LANG="C" $(MD5) -c $(CHECKSUM_FILE) 2>&1 | grep -- '$*' | grep -v ':[ ]\+OK'; then \
+ echo '*** GAR GAR GAR! $(call TMSG_ID,$*) failed checksum test! GAR GAR GAR! ***' 1>&2; \
+ false; \
+ else \
+ echo 'file $(call TMSG_ID,$*) passes checksum test!'; \
+ $(MAKECOOKIE); \
+ fi \
+ else \
+ echo '*** GAR GAR GAR! $(call TMSG_ID,$*) not in $(CHECKSUM_FILE) file! GAR GAR GAR! ***' 1>&2; \
+ false; \
+ fi
+
+
+#################### EXTRACT RULES ####################
+
+# rule to extract uncompressed tarballs
+tar-extract-%:
+ @echo ' $(call TMSG_LIB,Extracting,$(DOWNLOADDIR)/$*)'
+ @$(TAR) -xf $(DOWNLOADDIR)/$* -C $(EXTRACTDIR)
+ @$(MAKECOOKIE)
+
+# rule to extract files with tar xzf
+tar-gz-extract-%:
+ @echo ' $(call TMSG_LIB,Extracting,$(DOWNLOADDIR)/$*)'
+ @gzip -dc $(DOWNLOADDIR)/$* | $(TAR) -xf - -C $(EXTRACTDIR)
+ @$(MAKECOOKIE)
+
+# rule to extract files with tar and bzip
+tar-bz-extract-%:
+ @echo ' $(call TMSG_LIB,Extracting,$(DOWNLOADDIR)/$*)'
+ @bzip2 -dc $(DOWNLOADDIR)/$* | $(TAR) -xf - -C $(EXTRACTDIR)
+ @$(MAKECOOKIE)
+
+# rule to extract files with unzip
+zip-extract-%:
+ @echo ' $(call TMSG_LIB,Extracting,$(DOWNLOADDIR)/$*)'
+ @unzip $(DOWNLOADDIR)/$* -d $(EXTRACTDIR)
+ @$(MAKECOOKIE)
+
+# this is a null extract rule for files which are constant and
+# unchanged (not archives)
+cp-extract-%:
+ @echo ' $(call TMSG_LIB,Copying,$(DOWNLOADDIR)/$*)'
+ @cp $(DOWNLOADDIR)/$* $(WORKDIR)/
+ @$(MAKECOOKIE)
+
+### EXTRACT FILE TYPE MAPPINGS ###
+# These rules specify which of the above extract action rules to use for a
+# given file extension. Often support for a given extract type can be handled
+# by simply adding a rule here.
+
+extract-%.tar: tar-extract-%.tar
+ @$(MAKECOOKIE)
+
+extract-%.tar.gz: tar-gz-extract-%.tar.gz
+ @$(MAKECOOKIE)
+
+extract-%.tar.Z: tar-gz-extract-%.tar.Z
+ @$(MAKECOOKIE)
+
+extract-%.tgz: tar-gz-extract-%.tgz
+ @$(MAKECOOKIE)
+
+extract-%.taz: tar-gz-extract-%.taz
+ @$(MAKECOOKIE)
+
+extract-%.tar.bz: tar-bz-extract-%.tar.bz
+ @$(MAKECOOKIE)
+
+extract-%.tar.bz2: tar-bz-extract-%.tar.bz2
+ @$(MAKECOOKIE)
+
+extract-%.tbz: tar-bz-extract-%.tbz
+ @$(MAKECOOKIE)
+
+extract-%.zip: zip-extract-%.zip
+ @$(MAKECOOKIE)
+
+extract-%.ZIP: zip-extract-%.ZIP
+ @$(MAKECOOKIE)
+
+extract-%.jpeg: cp-extract-%.jpeg
+ @$(MAKECOOKIE)
+
+extract-%.png: cp-extract-%.png
+ @$(MAKECOOKIE)
+
+extract-%.html: cp-extract-%.html
+ @$(MAKECOOKIE)
+
+extract-%.spl: cp-extract-%.spl
+ @$(MAKECOOKIE)
+
+extract-%.txt: cp-extract-%.txt
+ @$(MAKECOOKIE)
+
+extract-%.cfg: cp-extract-%.cfg
+ @$(MAKECOOKIE)
+
+extract-%.c: cp-extract-%.c
+ @$(MAKECOOKIE)
+
+extract-%.sh: cp-extract-%.sh
+ @$(MAKECOOKIE)
+
+extract-%.cmd: cp-extract-%.cmd
+ @$(MAKECOOKIE)
+
+extract-%: cp-extract-%
+ @$(MAKECOOKIE)
+
+
+#################### PATCH RULES ####################
+
+# apply bzipped patches
+bz-patch-%:
+ @echo ' $(call TMSG_LIB,Applying patch,$(DOWNLOADDIR)/$*)'
+ @bzip2 -dc $(DOWNLOADDIR)/$* | patch -p0
+ @$(MAKECOOKIE)
+
+# apply gzipped patches
+gz-patch-%:
+ @echo ' $(call TMSG_LIB,Applying patch,$(DOWNLOADDIR)/$*)'
+ @gzip -dc $(DOWNLOADDIR)/$* | patch -p0
+ @$(MAKECOOKIE)
+
+# apply normal patches
+normal-patch-%:
+ @echo ' $(call TMSG_LIB,Applying patch,$(DOWNLOADDIR)/$*)'
+ @patch -p0 < $(DOWNLOADDIR)/$*
+ @$(MAKECOOKIE)
+
+# This is used by makepatch
+%/gar-base.diff:
+ @echo ' $(call TMSG_LIB,Creating patch,$@)'
+ @EXTRACTDIR=$(SCRATCHDIR) COOKIEDIR=$(SCRATCHDIR)-$(COOKIEDIR) $(MAKE) extract
+ @if diff --speed-large-files --minimal -Nru $(SCRATCHDIR) $(WORKDIR) > $@; then \
+ rm $@; \
+ fi
+
+### PATCH FILE TYPE MAPPINGS ###
+# These rules specify which of the above patch action rules to use for a given
+# file extension. Often support for a given patch format can be handled by
+# simply adding a rule here.
+
+patch-%.diff.bz: bz-patch-%.diff.bz
+ @$(MAKECOOKIE)
+
+patch-%.patch.bz: bz-patch-%.patch.bz
+ @$(MAKECOOKIE)
+
+patch-%.diff.bz2: bz-patch-%.diff.bz2
+ @$(MAKECOOKIE)
+
+patch-%.patch.bz2: bz-patch-%.patch.bz2
+ @$(MAKECOOKIE)
+
+patch-%.diff.gz: gz-patch-%.diff.gz
+ @$(MAKECOOKIE)
+
+patch-%.patch.gz: gz-patch-%.patch.gz
+ @$(MAKECOOKIE)
+
+patch-%.diff.Z: gz-patch-%.diff.Z
+ @$(MAKECOOKIE)
+
+patch-%.patch.Z: gz-patch-%.patch.Z
+ @$(MAKECOOKIE)
+
+patch-%.diff: normal-patch-%.diff
+ @$(MAKECOOKIE)
+
+patch-%.patch: normal-patch-%.patch
+ @$(MAKECOOKIE)
+
+#################### CONFIGURE RULES ####################
+
+ifdef HAVE_QT_3_3_INSTALLED
+ TMP_DIRPATHS = --prefix=$(prefix) --exec_prefix=$(exec_prefix) --bindir=$(bindir) --sbindir=$(sbindir) --libexecdir=$(libexecdir) --datadir=$(datadir) --sysconfdir=$(sysconfdir) --sharedstatedir=$(sharedstatedir) --localstatedir=$(localstatedir) --libdir=$(libdir) --infodir=$(infodir) --lispdir=$(lispdir) --includedir=$(includedir) --mandir=$(mandir) --with-qt-dir=$(QTDIR)
+else
+ TMP_DIRPATHS = --prefix=$(prefix) --exec_prefix=$(exec_prefix) --bindir=$(bindir) --sbindir=$(sbindir) --libexecdir=$(libexecdir) --datadir=$(datadir) --sysconfdir=$(sysconfdir) --sharedstatedir=$(sharedstatedir) --localstatedir=$(localstatedir) --libdir=$(libdir) --infodir=$(infodir) --lispdir=$(lispdir) --includedir=$(includedir) --mandir=$(mandir) --with-qt-dir=$(prefix)
+ QTDIR = $(prefix)
+endif
+
+KDEDIR = $(prefix)
+KDEDIRS = $(prefix)
+
+ARTSCCONFIG = $(prefix)/bin/artsc-config
+KDECONFIG = $(prefix)/bin/kde-config
+LIBART_CONFIG = $(prefix)/bin/libart2-config
+XML_CONFIG = $(prefix)/bin/xml2-config
+XSLT_CONFIG = $(prefix)/bin/xslt-config
+
+export QTDIR KDEDIR KDEDIRS ARTSCCONFIG KDECONFIG LIBART_CONFIG XML_CONFIG XSLT_CONFIG
+
+NODIRPATHS += --lispdir
+
+DIRPATHS = $(filter-out $(addsuffix %,$(NODIRPATHS)), $(TMP_DIRPATHS))
+
+# configure a package that has an autoconf-style configure
+# script.
+configure-%/configure:
+ @echo ' $(call TMSG_LIB,Running configure in,$*)'
+ @cd $* && $(CONFIGURE_ENV) ./configure $(CONFIGURE_ARGS)
+ @$(MAKECOOKIE)
+
+# configure a package that uses imake
+# FIXME: untested and likely not the right way to handle the
+# arguments
+configure-%/Imakefile:
+ @echo ' $(call TMSG_LIB,Running xmkmf in,$*)'
+ @cd $* && $(CONFIGURE_ENV) xmkmf $(CONFIGURE_ARGS)
+ @$(MAKECOOKIE)
+
+#################### BUILD RULES ####################
+
+# build from a standard gnu-style makefile's default rule.
+build-%/Makefile:
+ @echo ' $(call TMSG_LIB,Running make in,$*)'
+ @$(BUILD_ENV) $(MAKE) $(foreach TTT,$(BUILD_OVERRIDE_DIRS),$(TTT)="$($(TTT))") -C $* $(BUILD_ARGS)
+ @$(MAKECOOKIE)
+
+build-%/makefile:
+ @echo ' $(call TMSG_LIB,Running make in,$*)'
+ @$(BUILD_ENV) $(MAKE) $(foreach TTT,$(BUILD_OVERRIDE_DIRS),$(TTT)="$($(TTT))") -C $* $(BUILD_ARGS)
+ @$(MAKECOOKIE)
+
+build-%/GNUmakefile:
+ @echo ' $(call TMSG_LIB,Running make in,$*)'
+ @$(BUILD_ENV) $(MAKE) $(foreach TTT,$(BUILD_OVERRIDE_DIRS),$(TTT)="$($(TTT))") -C $* $(BUILD_ARGS)
+ @$(MAKECOOKIE)
+
+#################### STRIP RULES ####################
+# The strip rule should probably strip uninstalled binaries.
+# TODO: Seth, what was the exact parameter set to strip that you
+# used to gain maximal space on the LNX-BBC?
+
+# Strip all binaries listed in the manifest file
+# TODO: actually write it!
+# This will likely become almost as hairy as the actual
+# installation code.
+strip-$(MANIFEST_FILE):
+ @echo "$(call TMSG_FAIL,Not finished)"
+
+# The Makefile must have a "make strip" rule for this to work.
+strip-%/Makefile:
+ @echo ' $(call TMSG_LIB,Running make strip in,$*)'
+ @$(BUILD_ENV) $(MAKE) -C $* $(BUILD_ARGS) strip
+ @$(MAKECOOKIE)
+
+#################### INSTALL RULES ####################
+
+# just run make install and hope for the best.
+install-%/Makefile:
+ @echo ' $(call TMSG_LIB,Running make install in,$*)'
+ @$(INSTALL_ENV) $(MAKE) DESTDIR=$(DESTDIR) $(foreach TTT,$(INSTALL_OVERRIDE_DIRS),$(TTT)="$(DESTDIR)$($(TTT))") -C $* $(INSTALL_ARGS) install
+ @$(MAKECOOKIE)
+
+install-%/makefile:
+ @echo ' $(call TMSG_LIB,Running make install in,$*)'
+ @$(INSTALL_ENV) $(MAKE) DESTDIR=$(DESTDIR) $(foreach TTT,$(INSTALL_OVERRIDE_DIRS),$(TTT)="$(DESTDIR)$($(TTT))") -C $* $(INSTALL_ARGS) install
+ @$(MAKECOOKIE)
+
+install-%/GNUmakefile:
+ @echo ' $(call TMSG_LIB,Running make install in,$*)'
+ @$(INSTALL_ENV) $(MAKE) DESTDIR=$(DESTDIR) $(foreach TTT,$(INSTALL_OVERRIDE_DIRS),$(TTT)="$(DESTDIR)$($(TTT))") -C $* $(INSTALL_ARGS) install
+ @$(MAKECOOKIE)
+
+######################################
+# Use a manifest file of the format:
+# src:dest[:mode[:owner[:group]]]
+# as in...
+# ${WORKSRC}/nwall:${bindir}/nwall:2755:root:tty
+# ${WORKSRC}/src/foo:${sharedstatedir}/foo
+# ${WORKSRC}/yoink:${sysconfdir}/yoink:0600
+
+# Okay, so for the benefit of future generations, this is how it
+# works:
+#
+# First of all, we have this file with colon-separated lines.
+# The $(shell cat foo) routine turns it into a space-separated
+# list of words. The foreach iterates over this list, putting a
+# colon-separated record in $(ZORCH) on each pass through.
+#
+# Next, we have the macro $(MANIFEST_LINE), which splits a record
+# into a space-separated list, and $(MANIFEST_SIZE), which
+# determines how many elements are in such a list. These are
+# purely for convenience, and could be inserted inline if need
+# be.
+MANIFEST_LINE = $(subst :, ,$(ZORCH))
+MANIFEST_SIZE = $(words $(MANIFEST_LINE))
+
+# So the install command takes a variable number of parameters,
+# and our records have from two to five elements. Gmake can't do
+# any sort of arithmetic, so we can't do any really intelligent
+# indexing into the list of parameters.
+#
+# Since the last three elements of the $(MANIFEST_LINE) are what
+# we're interested in, we make a parallel list with the parameter
+# switch text (note the dummy elements at the beginning):
+MANIFEST_FLAGS = notused notused --mode= --owner= --group=
+
+# The following environment variables are set before the
+# installation boogaloo begins. This ensures that WORKSRC is
+# available to the manifest and that all of the location
+# variables are suitable for *installation* (that is, using
+# DESTDIR)
+
+MANIFEST_ENV += WORKSRC=$(WORKSRC)
+# This was part of the "implicit DESTDIR" regime. However:
+# http://gar.lnx-bbc.org/wiki/ImplicitDestdirConsideredHarmful
+#MANIFEST_ENV += $(foreach TTT,prefix exec_prefix bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir infodir lispdir includedir mandir,$(TTT)=$(DESTDIR)$($(TTT)))
+
+# ...and then we join a slice of it with the corresponding slice
+# of the $(MANIFEST_LINE), starting at 3 and going to
+# $(MANIFEST_SIZE). That's where all the real magic happens,
+# right there!
+#
+# following that, we just splat elements one and two of
+# $(MANIFEST_LINE) on the end, since they're the ones that are
+# always there. Slap a semicolon on the end, and you've got a
+# completed iteration through the foreach! Beaujolais!
+
+# FIXME: using -D may not be the right thing to do!
+install-$(MANIFEST_FILE):
+ @echo ' $(call TMSG_LIB,Installing from,$(MANIFEST_FILE))'
+ $(MANIFEST_ENV) ; $(foreach ZORCH,$(shell cat $(MANIFEST_FILE)), install -Dc $(join $(wordlist 3,$(MANIFEST_SIZE),$(MANIFEST_FLAGS)),$(wordlist 3,$(MANIFEST_SIZE),$(MANIFEST_LINE))) $(word 1,$(MANIFEST_LINE)) $(word 2,$(MANIFEST_LINE)) ;)
+ @$(MAKECOOKIE)
+
+
+#################### DEPENDENCY RULES ####################
+# builddeps need to have everything put in $(BUILD_PREFIX)
+# (unless they've been installed already, in which case they're
+# already in the install dir)
+# it checks the standard cookie dir first, then a special
+# -builddep cookie dir, then if those fail, it does the builddep
+# build with the -builddep cookie dir. This should do The Right
+# Thing.
+builddep-$(GARDIR)/%:
+ @echo ' $(call TMSG_LIB,Building,$*,as a build dep)'
+ @COOKIEDIR=cookies $(MAKE) -C $(GARDIR)/$* install-p > /dev/null 2>&1 || \
+ COOKIEDIR=$(COOKIEDIR)-builddep $(MAKE) -C $(GARDIR)/$* install-p > /dev/null 2>&1 || \
+ COOKIEDIR=$(COOKIEDIR)-builddep prefix=$(BUILD_PREFIX) exec_prefix=$(BUILD_PREFIX) $(MAKE) -C $(GARDIR)/$* install
+
+# Standard deps install into the standard install dir. For the
+# BBC, we set the includedir to the build tree and the libdir to
+# the install tree. Most dependencies work this way.
+# XXX: use a secondary variable to store the canonical cookiedir
+# somehow.
+dep-$(GARDIR)/%:
+ @echo ' $(call TMSG_LIB,Building,$*,as a dependency)'
+ @COOKIEDIR=cookies $(MAKE) -C $(GARDIR)/$* install-p > /dev/null 2>&1 || \
+ $(MAKE) -C $(GARDIR)/$* install
+
+# Source Deps grab the source code for another package
+srcdep-$(GARDIR)/%:
+ @echo ' $(call TMSG_LIB,Grabbing source for,$*,as a dependency)'
+ @$(MAKE) -C $(GARDIR)/$* patch-p extract-p > /dev/null 2>&1 || \
+ $(MAKE) -C $(GARDIR)/$* patch
+
+# Igor's info and man gzipper rule
+gzip-info-man: gzip-info gzip-man
+
+gzip-info:
+ find $(DESTDIR) -type f -iname *.info* -not -iname *.gz | \
+ xargs -r gzip --force
+
+gzip-man:
+ find $(DESTDIR) -type f -iname *.[1-8] -size +2 -print | \
+ xargs -r gzip --force
+
+# Mmm, yesssss. cookies my preciousssss! Mmm, yes downloads it
+# is! We mustn't have nasty little gmakeses deleting our
+# precious cookieses now must we?
+.PRECIOUS: $(DOWNLOADDIR)/% $(COOKIEDIR)/% $(FILEDIR)/%
diff --git a/gar.mk b/gar.mk
new file mode 100644
index 0000000..5f09048
--- /dev/null
+++ b/gar.mk
@@ -0,0 +1,316 @@
+#-*- mode: Fundamental; tab-width: 4; -*-
+# ex:ts=4
+# $Id$
+
+# Copyright (C) 2001 Nick Moffitt
+#
+# Redistribution and/or use, with or without modification, is
+# permitted. This software is without warranty of any kind. The
+# author(s) shall not be liable in the event that use of the
+# software causes damage.
+
+
+# Comment this out to make much verbosity
+#.SILENT:
+
+
+#ifeq ($(origin GARDIR), undefined)
+#GARDIR := $(CURDIR)/../..
+#endif
+
+GARDIR ?= ../..
+FILEDIR ?= files
+DOWNLOADDIR ?= download
+COOKIEDIR ?= cookies
+WORKDIR ?= work
+WORKSRC ?= $(WORKDIR)/$(DISTNAME)
+EXTRACTDIR ?= $(WORKDIR)
+SCRATCHDIR ?= tmp
+CHECKSUM_FILE ?= checksums
+MANIFEST_FILE ?= manifest
+
+DIRSTODOTS = $(subst . /,./,$(patsubst %,/..,$(subst /, ,/$(1))))
+ROOTFROMDEST = $(call DIRSTODOTS,$(DESTDIR))
+
+DISTNAME ?= $(GARNAME)-$(GARVERSION)
+
+
+ALLFILES ?= $(DISTFILES) $(PATCHFILES)
+
+INSTALL_DIRS = $(addprefix $(DESTDIR),$(BUILD_PREFIX) $(prefix) $(exec_prefix) $(bindir) $(sbindir) $(libexecdir) $(datadir) $(sysconfdir) $(sharedstatedir) $(localstatedir) $(libdir) $(infodir) $(lispdir) $(includedir) $(mandir) $(foreach NUM,1 2 3 4 5 6 7 8, $(mandir)/man$(NUM)) $(sourcedir))
+
+# These are bad, since exporting them mucks up the dep rules!
+# WORKSRC is added in manually for the manifest rule.
+#export GARDIR FILEDIR DOWNLOADDIR COOKIEDIR WORKDIR WORKSRC EXTRACTDIR
+#export SCRATCHDIR CHECKSUM_FILE MANIFEST_FILE
+
+# For rules that do nothing, display what dependencies they
+# successfully completed
+DONADA = @echo " [$(call TMSG_ACTION,$@)] complete for $(call TMSG_ID,$(GARNAME))."
+
+# TODO: write a stub rule to print out the name of a rule when it
+# *does* do something, and handle indentation intelligently.
+
+# Default sequence for "all" is: fetch checksum extract patch configure build
+all: build
+ $(DONADA)
+
+
+# include the configuration file to override any of these variables
+include $(GARDIR)/kde.conf.mk
+include $(GARDIR)/gar.conf.mk
+include $(GARDIR)/gar.lib.mk
+include $(GARDIR)/color.mk
+
+ifdef BUILD_CLEAN
+DO_BUILD_CLEAN = buildclean
+else
+DO_BUILD_CLEAN =
+endif
+
+# some packages use DESTDIR, but some use other methods. For the
+# rules that *we* write, the DESTDIR will be transparently added.
+# These need to happen after gar.conf.mk, as they use the := to
+# set the vars.
+# NOTE: removed due to
+# http://gar.lnx-bbc.org/wiki/ImplicitDestdirConsideredHarmful
+#%-install: prefix := $(DESTDIR)$(prefix)
+#install-none: prefix := $(DESTDIR)$(prefix)
+
+#################### DIRECTORY MAKERS ####################
+
+# This is to make dirs as needed by the base rules
+$(sort $(DOWNLOADDIR) $(COOKIEDIR) $(WORKSRC) $(WORKDIR) $(EXTRACTDIR) $(FILEDIR) $(SCRATCHDIR) $(INSTALL_DIRS)) $(COOKIEDIR)/%:
+ @if test -d $@; then : ; else \
+ install -d $@; \
+ echo "install -d $@"; \
+ fi
+
+# These stubs are wildcarded, so that the port maintainer can
+# define something like "pre-configure" and it won't conflict,
+# while the configure target can call "pre-configure" safely even
+# if the port maintainer hasn't defined it.
+#
+# in addition to the pre-<target> rules, the maintainer may wish
+# to set a "pre-everything" rule, which runs before the first
+# actual target.
+pre-%:
+ @true
+
+post-%:
+ @true
+
+# Call any arbitrary rule recursively
+deep-%: %
+ @for i in $(LIBDEPS) $(DEPENDS) $(BUILDDEPS); do \
+ $(MAKE) -C $(GARDIR)/$$i $@; \
+ done
+
+# ========================= MAIN RULES =========================
+# The main rules are the ones that the user can specify as a
+# target on the "make" command-line. Currently, they are:
+# fetch-list fetch checksum makesum extract checkpatch patch
+# build install reinstall uninstall package
+# (some may not be complete yet).
+#
+# Each of these rules has dependencies that run in the following
+# order:
+# - run the previous main rule in the chain (e.g., install
+# depends on build)
+# - run the pre- rule for the target (e.g., configure would
+# then run pre-configure)
+# - generate a set of files to depend on. These are typically
+# cookie files in $(COOKIEDIR), but in the case of fetch are
+# actual downloaded files in $(DOWNLOADDIR)
+# - run the post- rule for the target
+#
+# The main rules also run the $(DONADA) code, which prints out
+# what just happened when all the dependencies are finished.
+
+announce:
+ @echo "[$(call TMSG_BRIGHT,=====) $(call TMSG_ACTION,NOW BUILDING): $(call TMSG_ID,$(DISTNAME)) $(call TMSG_BRIGHT,=====)]"
+
+# fetch-list - Show list of files that would be retrieved by fetch.
+# NOTE: DOES NOT RUN pre-everything!
+fetch-list:
+ @echo "Distribution files: "
+ @for i in $(DISTFILES); do echo " $$i"; done
+ @echo "Patch files: "
+ @for i in $(PATCHFILES); do echo " $$i"; done
+
+# showdeps - Show dependencies in a tree-structure
+showdeps:
+ @for i in $(LIBDEPS) $(BUILDDEPS); do \
+ echo -e "$(TABLEVEL)$$i";\
+ $(MAKE) -s -C $(GARDIR)/$$i TABLEVEL="$(TABLEVEL)\t" showdeps;\
+ done
+
+# fetch - Retrieves $(DISTFILES) (and $(PATCHFILES) if defined)
+# into $(DOWNLOADDIR) as necessary.
+FETCH_TARGETS = $(addprefix $(DOWNLOADDIR)/,$(ALLFILES))
+
+fetch: announce pre-everything $(DOWNLOADDIR) $(addprefix dep-$(GARDIR)/,$(FETCHDEPS)) pre-fetch $(FETCH_TARGETS) post-fetch
+ $(DONADA)
+
+# returns true if fetch has completed successfully, false
+# otherwise
+fetch-p:
+ @$(foreach COOKIEFILE,$(FETCH_TARGETS), test -e $(COOKIEFILE) ;)
+
+# checksum - Use $(CHECKSUMFILE) to ensure that your
+# distfiles are valid.
+CHECKSUM_TARGETS = $(addprefix checksum-,$(filter-out $(NOCHECKSUM),$(ALLFILES)))
+
+checksum: fetch $(COOKIEDIR) pre-checksum $(CHECKSUM_TARGETS) post-checksum
+ $(DONADA)
+
+# returns true if checksum has completed successfully, false
+# otherwise
+checksum-p:
+ @$(foreach COOKIEFILE,$(CHECKSUM_TARGETS), test -e $(COOKIEDIR)/$(COOKIEFILE) ;)
+
+# makesum - Generate distinfo (only do this for your own ports!).
+MAKESUM_TARGETS = $(addprefix $(DOWNLOADDIR)/,$(filter-out $(NOCHECKSUM),$(ALLFILES)))
+
+makesum: fetch $(MAKESUM_TARGETS)
+ @if test "x$(MAKESUM_TARGETS)" != "x "; then \
+ $(MD5) $(MAKESUM_TARGETS) > $(CHECKSUM_FILE) ; \
+ echo "Checksums complete for $(call TMSG_ID,$(MAKESUM_TARGETS))" ; \
+ fi
+
+# I am always typing this by mistake
+makesums: makesum
+
+garchive: checksum
+ mkdir -p $(GARCHIVEDIR)
+ cp -Lr $(DOWNLOADDIR)/* $(GARCHIVEDIR) || true
+
+# extract - Unpacks $(DISTFILES) into $(EXTRACTDIR) (patches are "zcatted" into the patch program)
+EXTRACT_TARGETS = $(addprefix extract-,$(filter-out $(NOEXTRACT),$(DISTFILES)))
+
+extract: checksum $(EXTRACTDIR) $(COOKIEDIR) $(addprefix dep-$(GARDIR)/,$(EXTRACTDEPS)) pre-extract $(EXTRACT_TARGETS) post-extract
+ $(DONADA)
+
+# returns true if extract has completed successfully, false
+# otherwise
+extract-p:
+ @$(foreach COOKIEFILE,$(EXTRACT_TARGETS), test -e $(COOKIEDIR)/$(COOKIEFILE) ;)
+
+# checkpatch - Do a "patch -C" instead of a "patch". Note
+# that it may give incorrect results if multiple
+# patches deal with the same file.
+# TODO: actually write it!
+checkpatch: extract
+ @echo "$(call TMSG_FAIL,$@) NOT IMPLEMENTED YET"
+
+# patch - Apply any provided patches to the source.
+PATCH_TARGETS = $(addprefix patch-,$(PATCHFILES))
+
+patch: extract $(WORKSRC) pre-patch $(PATCH_TARGETS) post-patch
+ $(DONADA)
+
+# returns true if patch has completed successfully, false
+# otherwise
+patch-p:
+ @$(foreach COOKIEFILE,$(PATCH_TARGETS), test -e $(COOKIEDIR)/$(COOKIEFILE) ;)
+
+# makepatch - Grab the upstream source and diff against $(WORKSRC). Since
+# diff returns 1 if there are differences, we remove the patch
+# file on "success". Goofy diff.
+makepatch: $(SCRATCHDIR) $(FILEDIR) $(FILEDIR)/gar-base.diff
+ $(DONADA)
+
+# this takes the changes you've made to a working directory,
+# distills them to a patch, updates the checksum file, and tries
+# out the build (assuming you've listed the gar-base.diff in your
+# PATCHFILES). This is way undocumented. -NickM
+beaujolais: makepatch makesum clean build
+ $(DONADA)
+
+# configure - Runs either GNU configure, one or more local
+# configure scripts or nothing, depending on
+# what's available.
+CONFIGURE_TARGETS = $(addprefix configure-,$(CONFIGURE_SCRIPTS))
+LIBDEPS += $(DEPENDS)
+
+configure: patch $(addprefix builddep-$(GARDIR)/,$(BUILDDEPS)) $(addprefix dep-$(GARDIR)/,$(LIBDEPS)) $(addprefix srcdep-$(GARDIR)/,$(SOURCEDEPS)) pre-configure $(CONFIGURE_TARGETS) post-configure
+ $(DONADA)
+
+# returns true if configure has completed successfully, false
+# otherwise
+configure-p:
+ @$(foreach COOKIEFILE,$(CONFIGURE_TARGETS), test -e $(COOKIEDIR)/$(COOKIEFILE) ;)
+
+# build - Actually compile the sources.
+BUILD_TARGETS = $(addprefix build-,$(BUILD_SCRIPTS))
+
+build: configure pre-build $(BUILD_TARGETS) post-build
+ $(DONADA)
+
+# returns true if build has completed successfully, false
+# otherwise
+build-p:
+ @$(foreach COOKIEFILE,$(BUILD_TARGETS), test -e $(COOKIEDIR)/$(COOKIEFILE) ;)
+
+# strip - Strip binaries
+strip: build pre-strip $(addprefix strip-,$(STRIP_SCRIPTS)) post-strip
+ @echo "$(call TMSG_FAIL,$@) NOT IMPLEMENTED YET"
+
+# install - Install the results of a build.
+INSTALL_TARGETS = $(addprefix install-,$(INSTALL_SCRIPTS))
+
+install: build $(addprefix dep-$(GARDIR)/,$(INSTALLDEPS)) $(INSTALL_DIRS) pre-install $(INSTALL_TARGETS) post-install $(DO_BUILD_CLEAN)
+ $(DONADA)
+
+# returns true if install has completed successfully, false
+# otherwise
+install-p:
+ @$(foreach COOKIEFILE,$(INSTALL_TARGETS), test -e $(COOKIEDIR)/$(COOKIEFILE) ;)
+
+# installstrip - Install the results of a build, stripping first.
+installstrip: strip pre-install $(INSTALL_TARGETS) post-install
+ $(DONADA)
+
+# reinstall - Install the results of a build, ignoring
+# "already installed" flag.
+# TODO: actually write it!
+reinstall: build
+ rm -rf $(COOKIEDIR)/install*
+ $(MAKE) install
+
+# uninstall - Remove the installation.
+# TODO: actually write it!
+uninstall: build
+ @echo "$(call TMSG_FAIL,$@) NOT IMPLEMENTED YET"
+
+
+# package - Create a package from an _installed_ port.
+# TODO: actually write it!
+package: build
+ @echo "$(call TMSG_FAIL,$@) NOT IMPLEMENTED YET"
+
+# tarball - Make a tarball from an install of the package into a scratch dir
+tarball: build
+ rm -rf $(COOKIEDIR)/install*
+ $(MAKE) DESTDIR=$(CURDIR)/$(SCRATCHDIR) BUILD_PREFIX=$(call DIRSTODOTS,$(CURDIR)/$(SCRATCHDIR))/$(BUILD_PREFIX) install
+ find $(SCRATCHDIR) -depth -type d | while read i; do rmdir $$i > /dev/null 2>&1 || true; done
+ $(TAR) czvf $(CURDIR)/$(WORKDIR)/$(DISTNAME)-install.tar.gz -C $(SCRATCHDIR) .
+ $(MAKECOOKIE)
+
+
+# The clean rule. It must be run if you want to re-download a
+# file after a successful checksum (or just remove the checksum
+# cookie, but that would be lame and unportable).
+clean:
+ @rm -rf $(DOWNLOADDIR) $(COOKIEDIR) $(COOKIEDIR)-* $(WORKSRC) $(WORKDIR) $(EXTRACTDIR) $(SCRATCHDIR) $(SCRATCHDIR)-$(COOKIEDIR) $(SCRATCHDIR)-build *~
+
+buildclean:
+ @rm -rf $(WORKSRC) $(WORKDIR) $(EXTRACTDIR) $(SCRATCHDIR) $(SCRATCHDIR)-$(COOKIEDIR) $(SCRATCHDIR)-build *~
+
+# these targets do not have actual corresponding files
+.PHONY: all fetch-list fetch checksum makesum extract checkpatch patch makepatch configure build install clean buildclean beaujolais strip fetch-p checksum-p extract-p patch-p configure-p build-p install-p
+
+# apparently this makes all previous rules non-parallelizable,
+# but the actual builds of the packages will be, according to
+# jdub.
+.NOTPARALLEL:
diff --git a/i18n/Makefile b/i18n/Makefile
new file mode 100644
index 0000000..84ff360
--- /dev/null
+++ b/i18n/Makefile
@@ -0,0 +1 @@
+include ../category.mk
diff --git a/i18n/category.mk b/i18n/category.mk
new file mode 100644
index 0000000..b2a3240
--- /dev/null
+++ b/i18n/category.mk
@@ -0,0 +1,4 @@
+# extra configure info
+CONFIGURE_ARGS += --disable-debug --enable-final
+
+include ../../gar.mk
diff --git a/i18n/k3b-i18n/Makefile b/i18n/k3b-i18n/Makefile
new file mode 100644
index 0000000..c46d499
--- /dev/null
+++ b/i18n/k3b-i18n/Makefile
@@ -0,0 +1,18 @@
+GARNAME = k3b-i18n
+GARVERSION = 1.0.1
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/k3b/ http://belnet.dl.sourceforge.net/sourceforge/k3b/
+
+LIBDEPS = apps/multimedia/k3b
+
+DESCRIPTION = CDR frontend translations
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/k3b-i18n/checksums b/i18n/k3b-i18n/checksums
new file mode 100644
index 0000000..be80376
--- /dev/null
+++ b/i18n/k3b-i18n/checksums
@@ -0,0 +1 @@
+f87a27408a4153d860103816ba83db09 download/k3b-i18n-1.0.1.tar.bz2
diff --git a/i18n/kde-i18n-af/Makefile b/i18n/kde-i18n-af/Makefile
new file mode 100644
index 0000000..6219175
--- /dev/null
+++ b/i18n/kde-i18n-af/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-af
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-af
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-af/checksums b/i18n/kde-i18n-af/checksums
new file mode 100644
index 0000000..9873271
--- /dev/null
+++ b/i18n/kde-i18n-af/checksums
@@ -0,0 +1 @@
+9fc56e59816271c09922f08738ebce6f download/kde-i18n-af-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-ar/Makefile b/i18n/kde-i18n-ar/Makefile
new file mode 100644
index 0000000..fdeba23
--- /dev/null
+++ b/i18n/kde-i18n-ar/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-ar
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-ar
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-ar/checksums b/i18n/kde-i18n-ar/checksums
new file mode 100644
index 0000000..0308c08
--- /dev/null
+++ b/i18n/kde-i18n-ar/checksums
@@ -0,0 +1 @@
+d2d0628ce887766965b6bca2015f99c8 download/kde-i18n-ar-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-az/Makefile b/i18n/kde-i18n-az/Makefile
new file mode 100644
index 0000000..202498e
--- /dev/null
+++ b/i18n/kde-i18n-az/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-az
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-az
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-az/checksums b/i18n/kde-i18n-az/checksums
new file mode 100644
index 0000000..7ee14ae
--- /dev/null
+++ b/i18n/kde-i18n-az/checksums
@@ -0,0 +1 @@
+c2039b4e65e61dbbe095032d6a6f5e38 download/kde-i18n-az-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-bg/Makefile b/i18n/kde-i18n-bg/Makefile
new file mode 100644
index 0000000..bb9e542
--- /dev/null
+++ b/i18n/kde-i18n-bg/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-bg
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-bg
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-bg/checksums b/i18n/kde-i18n-bg/checksums
new file mode 100644
index 0000000..3ecf737
--- /dev/null
+++ b/i18n/kde-i18n-bg/checksums
@@ -0,0 +1 @@
+f865993d0be0eef709e86fcefd4e9d01 download/kde-i18n-bg-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-bn/Makefile b/i18n/kde-i18n-bn/Makefile
new file mode 100644
index 0000000..acc2698
--- /dev/null
+++ b/i18n/kde-i18n-bn/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-bn
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-bn
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-bn/checksums b/i18n/kde-i18n-bn/checksums
new file mode 100644
index 0000000..09c80d9
--- /dev/null
+++ b/i18n/kde-i18n-bn/checksums
@@ -0,0 +1 @@
+9e329981b6938e358c9b6647fb07b8c2 download/kde-i18n-bn-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-br/Makefile b/i18n/kde-i18n-br/Makefile
new file mode 100644
index 0000000..cb722ef
--- /dev/null
+++ b/i18n/kde-i18n-br/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-br
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-br
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-br/checksums b/i18n/kde-i18n-br/checksums
new file mode 100644
index 0000000..3fab420
--- /dev/null
+++ b/i18n/kde-i18n-br/checksums
@@ -0,0 +1 @@
+d112abe01375048fde57c58f2e60e63a download/kde-i18n-br-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-bs/Makefile b/i18n/kde-i18n-bs/Makefile
new file mode 100644
index 0000000..c3f1288
--- /dev/null
+++ b/i18n/kde-i18n-bs/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-bs
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-bs
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-bs/checksums b/i18n/kde-i18n-bs/checksums
new file mode 100644
index 0000000..9f1a0d0
--- /dev/null
+++ b/i18n/kde-i18n-bs/checksums
@@ -0,0 +1 @@
+4828cc85cdb5b242c37af963432d1792 download/kde-i18n-bs-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-ca/Makefile b/i18n/kde-i18n-ca/Makefile
new file mode 100644
index 0000000..ad0332d
--- /dev/null
+++ b/i18n/kde-i18n-ca/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-ca
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-ca
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-ca/checksums b/i18n/kde-i18n-ca/checksums
new file mode 100644
index 0000000..c5543d1
--- /dev/null
+++ b/i18n/kde-i18n-ca/checksums
@@ -0,0 +1 @@
+4ca083e7a1702365f2de35ff79fd41e0 download/kde-i18n-ca-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-cs/Makefile b/i18n/kde-i18n-cs/Makefile
new file mode 100644
index 0000000..9f58f06
--- /dev/null
+++ b/i18n/kde-i18n-cs/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-cs
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-cs
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-cs/checksums b/i18n/kde-i18n-cs/checksums
new file mode 100644
index 0000000..8884b1c
--- /dev/null
+++ b/i18n/kde-i18n-cs/checksums
@@ -0,0 +1 @@
+350a29c5166640bb7f4030dc45da6c48 download/kde-i18n-cs-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-csb/Makefile b/i18n/kde-i18n-csb/Makefile
new file mode 100644
index 0000000..a5bfc9a
--- /dev/null
+++ b/i18n/kde-i18n-csb/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-csb
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-csb
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-csb/checksums b/i18n/kde-i18n-csb/checksums
new file mode 100644
index 0000000..bd30373
--- /dev/null
+++ b/i18n/kde-i18n-csb/checksums
@@ -0,0 +1 @@
+ef5fbce181df8ac2ea0c0d773e10f6c4 download/kde-i18n-csb-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-cy/Makefile b/i18n/kde-i18n-cy/Makefile
new file mode 100644
index 0000000..982b47f
--- /dev/null
+++ b/i18n/kde-i18n-cy/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-cy
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-cy
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-cy/checksums b/i18n/kde-i18n-cy/checksums
new file mode 100644
index 0000000..b1f6a4f
--- /dev/null
+++ b/i18n/kde-i18n-cy/checksums
@@ -0,0 +1 @@
+49b3d60531a0fbb050ec30df8135c07f download/kde-i18n-cy-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-da/Makefile b/i18n/kde-i18n-da/Makefile
new file mode 100644
index 0000000..02f1f65
--- /dev/null
+++ b/i18n/kde-i18n-da/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-da
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-da
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-da/checksums b/i18n/kde-i18n-da/checksums
new file mode 100644
index 0000000..899a25f
--- /dev/null
+++ b/i18n/kde-i18n-da/checksums
@@ -0,0 +1 @@
+a13e84cbdb6b6fd89034efa33ea87266 download/kde-i18n-da-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-de/Makefile b/i18n/kde-i18n-de/Makefile
new file mode 100644
index 0000000..3ffcf42
--- /dev/null
+++ b/i18n/kde-i18n-de/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-de
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-de
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-de/checksums b/i18n/kde-i18n-de/checksums
new file mode 100644
index 0000000..f7790e0
--- /dev/null
+++ b/i18n/kde-i18n-de/checksums
@@ -0,0 +1 @@
+ffba95578d4ffd07dd5488a6610cb3c8 download/kde-i18n-de-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-el/Makefile b/i18n/kde-i18n-el/Makefile
new file mode 100644
index 0000000..13f5630
--- /dev/null
+++ b/i18n/kde-i18n-el/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-el
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-el
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-el/checksums b/i18n/kde-i18n-el/checksums
new file mode 100644
index 0000000..8469b99
--- /dev/null
+++ b/i18n/kde-i18n-el/checksums
@@ -0,0 +1 @@
+995d8c13bc0eccacc5c53d40b948e03e download/kde-i18n-el-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-en_GB/Makefile b/i18n/kde-i18n-en_GB/Makefile
new file mode 100644
index 0000000..d79bf27
--- /dev/null
+++ b/i18n/kde-i18n-en_GB/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-en_GB
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-en_GB
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-en_GB/checksums b/i18n/kde-i18n-en_GB/checksums
new file mode 100644
index 0000000..5783231
--- /dev/null
+++ b/i18n/kde-i18n-en_GB/checksums
@@ -0,0 +1 @@
+1efad85761ec1fa03290204e562adac4 download/kde-i18n-en_GB-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-eo/Makefile b/i18n/kde-i18n-eo/Makefile
new file mode 100644
index 0000000..c5cf010
--- /dev/null
+++ b/i18n/kde-i18n-eo/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-eo
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-eo
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-eo/checksums b/i18n/kde-i18n-eo/checksums
new file mode 100644
index 0000000..f206a71
--- /dev/null
+++ b/i18n/kde-i18n-eo/checksums
@@ -0,0 +1 @@
+853f24c711ed787adfd901d6be5f5b3f download/kde-i18n-eo-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-es/Makefile b/i18n/kde-i18n-es/Makefile
new file mode 100644
index 0000000..0f89a02
--- /dev/null
+++ b/i18n/kde-i18n-es/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-es
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-es
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-es/checksums b/i18n/kde-i18n-es/checksums
new file mode 100644
index 0000000..7dd45b3
--- /dev/null
+++ b/i18n/kde-i18n-es/checksums
@@ -0,0 +1 @@
+cc0c23885bc71637cb045069896545b5 download/kde-i18n-es-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-et/Makefile b/i18n/kde-i18n-et/Makefile
new file mode 100644
index 0000000..95cc852
--- /dev/null
+++ b/i18n/kde-i18n-et/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-et
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-et
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-et/checksums b/i18n/kde-i18n-et/checksums
new file mode 100644
index 0000000..1376714
--- /dev/null
+++ b/i18n/kde-i18n-et/checksums
@@ -0,0 +1 @@
+4103433d895c818c4213993ec818aad1 download/kde-i18n-et-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-eu/Makefile b/i18n/kde-i18n-eu/Makefile
new file mode 100644
index 0000000..d8144eb
--- /dev/null
+++ b/i18n/kde-i18n-eu/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-eu
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-eu
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-eu/checksums b/i18n/kde-i18n-eu/checksums
new file mode 100644
index 0000000..69645f8
--- /dev/null
+++ b/i18n/kde-i18n-eu/checksums
@@ -0,0 +1 @@
+e11781e87059cc9cc1570fcd4d3c9279 download/kde-i18n-eu-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-fa/Makefile b/i18n/kde-i18n-fa/Makefile
new file mode 100644
index 0000000..492706c
--- /dev/null
+++ b/i18n/kde-i18n-fa/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-fa
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-fa
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-fa/checksums b/i18n/kde-i18n-fa/checksums
new file mode 100644
index 0000000..81ebb4f
--- /dev/null
+++ b/i18n/kde-i18n-fa/checksums
@@ -0,0 +1 @@
+bc71ddcd6b6c6fa765591d12befefc66 download/kde-i18n-fa-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-fi/Makefile b/i18n/kde-i18n-fi/Makefile
new file mode 100644
index 0000000..b5e997c
--- /dev/null
+++ b/i18n/kde-i18n-fi/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-fi
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-fi
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-fi/checksums b/i18n/kde-i18n-fi/checksums
new file mode 100644
index 0000000..962746b
--- /dev/null
+++ b/i18n/kde-i18n-fi/checksums
@@ -0,0 +1 @@
+18682d8351c70d2b483c2b55706025f0 download/kde-i18n-fi-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-fr/Makefile b/i18n/kde-i18n-fr/Makefile
new file mode 100644
index 0000000..ac60a18
--- /dev/null
+++ b/i18n/kde-i18n-fr/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-fr
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-fr
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-fr/checksums b/i18n/kde-i18n-fr/checksums
new file mode 100644
index 0000000..0a48dd4
--- /dev/null
+++ b/i18n/kde-i18n-fr/checksums
@@ -0,0 +1 @@
+f6ddf4a9eeb3748fcbf781ff4c3c4edb download/kde-i18n-fr-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-fy/Makefile b/i18n/kde-i18n-fy/Makefile
new file mode 100644
index 0000000..55ed602
--- /dev/null
+++ b/i18n/kde-i18n-fy/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-fy
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-fy
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-fy/checksums b/i18n/kde-i18n-fy/checksums
new file mode 100644
index 0000000..f9bcf44
--- /dev/null
+++ b/i18n/kde-i18n-fy/checksums
@@ -0,0 +1 @@
+d6c5182349c6b448edcd63a8cb737859 download/kde-i18n-fy-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-ga/Makefile b/i18n/kde-i18n-ga/Makefile
new file mode 100644
index 0000000..893aae8
--- /dev/null
+++ b/i18n/kde-i18n-ga/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-ga
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-ga
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-ga/checksums b/i18n/kde-i18n-ga/checksums
new file mode 100644
index 0000000..370a04b
--- /dev/null
+++ b/i18n/kde-i18n-ga/checksums
@@ -0,0 +1 @@
+e33342045b81dd4df200f56d615d3590 download/kde-i18n-ga-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-gl/Makefile b/i18n/kde-i18n-gl/Makefile
new file mode 100644
index 0000000..069e63d
--- /dev/null
+++ b/i18n/kde-i18n-gl/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-gl
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-gl
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-gl/checksums b/i18n/kde-i18n-gl/checksums
new file mode 100644
index 0000000..875cd48
--- /dev/null
+++ b/i18n/kde-i18n-gl/checksums
@@ -0,0 +1 @@
+7a25eef435e4daca31f6507be216b060 download/kde-i18n-gl-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-he/Makefile b/i18n/kde-i18n-he/Makefile
new file mode 100644
index 0000000..ffacd3c
--- /dev/null
+++ b/i18n/kde-i18n-he/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-he
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-he
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-he/checksums b/i18n/kde-i18n-he/checksums
new file mode 100644
index 0000000..739c92a
--- /dev/null
+++ b/i18n/kde-i18n-he/checksums
@@ -0,0 +1 @@
+0f2fb7c7538ce15fbbfb5a4f19e78b73 download/kde-i18n-he-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-hi/Makefile b/i18n/kde-i18n-hi/Makefile
new file mode 100644
index 0000000..422f883
--- /dev/null
+++ b/i18n/kde-i18n-hi/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-hi
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-hi
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-hi/checksums b/i18n/kde-i18n-hi/checksums
new file mode 100644
index 0000000..6795590
--- /dev/null
+++ b/i18n/kde-i18n-hi/checksums
@@ -0,0 +1 @@
+46cc5b60e42f260a6ee4d4b5cc53851b download/kde-i18n-hi-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-hr/Makefile b/i18n/kde-i18n-hr/Makefile
new file mode 100644
index 0000000..c281ff0
--- /dev/null
+++ b/i18n/kde-i18n-hr/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-hr
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-hr
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-hr/checksums b/i18n/kde-i18n-hr/checksums
new file mode 100644
index 0000000..c24d167
--- /dev/null
+++ b/i18n/kde-i18n-hr/checksums
@@ -0,0 +1 @@
+7ec644927e8d4606caf0a017f5c177ea download/kde-i18n-hr-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-hu/Makefile b/i18n/kde-i18n-hu/Makefile
new file mode 100644
index 0000000..8c64e0c
--- /dev/null
+++ b/i18n/kde-i18n-hu/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-hu
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-hu
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-hu/checksums b/i18n/kde-i18n-hu/checksums
new file mode 100644
index 0000000..657569a
--- /dev/null
+++ b/i18n/kde-i18n-hu/checksums
@@ -0,0 +1 @@
+f10056e1dbb1955f2ba3cbba8a50a08b download/kde-i18n-hu-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-is/Makefile b/i18n/kde-i18n-is/Makefile
new file mode 100644
index 0000000..0e49ce1
--- /dev/null
+++ b/i18n/kde-i18n-is/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-is
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-is
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-is/checksums b/i18n/kde-i18n-is/checksums
new file mode 100644
index 0000000..305abc3
--- /dev/null
+++ b/i18n/kde-i18n-is/checksums
@@ -0,0 +1 @@
+b86b28fec7ff948c97df15c972553900 download/kde-i18n-is-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-it/Makefile b/i18n/kde-i18n-it/Makefile
new file mode 100644
index 0000000..924e493
--- /dev/null
+++ b/i18n/kde-i18n-it/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-it
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-it
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-it/checksums b/i18n/kde-i18n-it/checksums
new file mode 100644
index 0000000..9e14324
--- /dev/null
+++ b/i18n/kde-i18n-it/checksums
@@ -0,0 +1 @@
+a04a26135303cef25f74373e07df0157 download/kde-i18n-it-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-ja/Makefile b/i18n/kde-i18n-ja/Makefile
new file mode 100644
index 0000000..6c691c8
--- /dev/null
+++ b/i18n/kde-i18n-ja/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-ja
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-ja
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-ja/checksums b/i18n/kde-i18n-ja/checksums
new file mode 100644
index 0000000..09d5a8b
--- /dev/null
+++ b/i18n/kde-i18n-ja/checksums
@@ -0,0 +1 @@
+797df078ef3dc7f3cd095311a62c56e2 download/kde-i18n-ja-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-kk/Makefile b/i18n/kde-i18n-kk/Makefile
new file mode 100644
index 0000000..bb8a0c8
--- /dev/null
+++ b/i18n/kde-i18n-kk/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-kk
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-kk
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-kk/checksums b/i18n/kde-i18n-kk/checksums
new file mode 100644
index 0000000..c3fe73e
--- /dev/null
+++ b/i18n/kde-i18n-kk/checksums
@@ -0,0 +1 @@
+0d8295e47c2ee65da1845e224470c5dd download/kde-i18n-kk-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-km/Makefile b/i18n/kde-i18n-km/Makefile
new file mode 100644
index 0000000..2133e64
--- /dev/null
+++ b/i18n/kde-i18n-km/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-km
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-km
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-km/checksums b/i18n/kde-i18n-km/checksums
new file mode 100644
index 0000000..ca6080e
--- /dev/null
+++ b/i18n/kde-i18n-km/checksums
@@ -0,0 +1 @@
+b1564f042ba6f7cd5cb2341d3f18f86f download/kde-i18n-km-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-ko/Makefile b/i18n/kde-i18n-ko/Makefile
new file mode 100644
index 0000000..f96db43
--- /dev/null
+++ b/i18n/kde-i18n-ko/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-ko
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-ko
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-ko/checksums b/i18n/kde-i18n-ko/checksums
new file mode 100644
index 0000000..ff250f7
--- /dev/null
+++ b/i18n/kde-i18n-ko/checksums
@@ -0,0 +1 @@
+32ede9542bdc84f33ea56d5d4b33c7f2 download/kde-i18n-ko-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-lt/Makefile b/i18n/kde-i18n-lt/Makefile
new file mode 100644
index 0000000..7e3770c
--- /dev/null
+++ b/i18n/kde-i18n-lt/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-lt
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-lt
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-lt/checksums b/i18n/kde-i18n-lt/checksums
new file mode 100644
index 0000000..222c87e
--- /dev/null
+++ b/i18n/kde-i18n-lt/checksums
@@ -0,0 +1 @@
+6774803f35f4accba712a7fa1fce50d8 download/kde-i18n-lt-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-lv/Makefile b/i18n/kde-i18n-lv/Makefile
new file mode 100644
index 0000000..3cd1b77
--- /dev/null
+++ b/i18n/kde-i18n-lv/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-lv
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-lv
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-lv/checksums b/i18n/kde-i18n-lv/checksums
new file mode 100644
index 0000000..9eb3e5c
--- /dev/null
+++ b/i18n/kde-i18n-lv/checksums
@@ -0,0 +1 @@
+2e67dcb10511415f09f33e2142ebc504 download/kde-i18n-lv-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-mk/Makefile b/i18n/kde-i18n-mk/Makefile
new file mode 100644
index 0000000..9850a5d
--- /dev/null
+++ b/i18n/kde-i18n-mk/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-mk
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-mk
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-mk/checksums b/i18n/kde-i18n-mk/checksums
new file mode 100644
index 0000000..829f813
--- /dev/null
+++ b/i18n/kde-i18n-mk/checksums
@@ -0,0 +1 @@
+a8fafdfe962f310ca968a81a7db0adbe download/kde-i18n-mk-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-mn/Makefile b/i18n/kde-i18n-mn/Makefile
new file mode 100644
index 0000000..9ddca27
--- /dev/null
+++ b/i18n/kde-i18n-mn/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-mn
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-mn
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-mn/checksums b/i18n/kde-i18n-mn/checksums
new file mode 100644
index 0000000..f7c00be
--- /dev/null
+++ b/i18n/kde-i18n-mn/checksums
@@ -0,0 +1 @@
+a375fb5e27447e566a95660057af122e download/kde-i18n-mn-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-ms/Makefile b/i18n/kde-i18n-ms/Makefile
new file mode 100644
index 0000000..c1487f1
--- /dev/null
+++ b/i18n/kde-i18n-ms/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-ms
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-ms
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-ms/checksums b/i18n/kde-i18n-ms/checksums
new file mode 100644
index 0000000..bb99770
--- /dev/null
+++ b/i18n/kde-i18n-ms/checksums
@@ -0,0 +1 @@
+566168896b51d93f9e1c11a0ec84db68 download/kde-i18n-ms-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-nb/Makefile b/i18n/kde-i18n-nb/Makefile
new file mode 100644
index 0000000..232019c
--- /dev/null
+++ b/i18n/kde-i18n-nb/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-nb
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-nb
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-nb/checksums b/i18n/kde-i18n-nb/checksums
new file mode 100644
index 0000000..3485da4
--- /dev/null
+++ b/i18n/kde-i18n-nb/checksums
@@ -0,0 +1 @@
+0b66b0265556c7892f13d20d30f61423 download/kde-i18n-nb-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-nds/Makefile b/i18n/kde-i18n-nds/Makefile
new file mode 100644
index 0000000..1824d31
--- /dev/null
+++ b/i18n/kde-i18n-nds/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-nds
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-nds
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-nds/checksums b/i18n/kde-i18n-nds/checksums
new file mode 100644
index 0000000..6a85101
--- /dev/null
+++ b/i18n/kde-i18n-nds/checksums
@@ -0,0 +1 @@
+f5c1fd976b345bfa5a5ec91aec0c1d29 download/kde-i18n-nds-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-nl/Makefile b/i18n/kde-i18n-nl/Makefile
new file mode 100644
index 0000000..4a02acc
--- /dev/null
+++ b/i18n/kde-i18n-nl/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-nl
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-nl
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-nl/checksums b/i18n/kde-i18n-nl/checksums
new file mode 100644
index 0000000..438ebdb
--- /dev/null
+++ b/i18n/kde-i18n-nl/checksums
@@ -0,0 +1 @@
+0bc7c76717a67da18a5bcfb1dda278ef download/kde-i18n-nl-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-nn/Makefile b/i18n/kde-i18n-nn/Makefile
new file mode 100644
index 0000000..2bbe0d7
--- /dev/null
+++ b/i18n/kde-i18n-nn/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-nn
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-nn
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-nn/checksums b/i18n/kde-i18n-nn/checksums
new file mode 100644
index 0000000..17de361
--- /dev/null
+++ b/i18n/kde-i18n-nn/checksums
@@ -0,0 +1 @@
+9364ceaf89c1e3b1d5d957d0f8cc9826 download/kde-i18n-nn-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-pa/Makefile b/i18n/kde-i18n-pa/Makefile
new file mode 100644
index 0000000..73bd0f7
--- /dev/null
+++ b/i18n/kde-i18n-pa/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-pa
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-pa
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-pa/checksums b/i18n/kde-i18n-pa/checksums
new file mode 100644
index 0000000..ec239bb
--- /dev/null
+++ b/i18n/kde-i18n-pa/checksums
@@ -0,0 +1 @@
+20d4043b002dad7fc9ff4aa319561f27 download/kde-i18n-pa-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-pl/Makefile b/i18n/kde-i18n-pl/Makefile
new file mode 100644
index 0000000..4890d9a
--- /dev/null
+++ b/i18n/kde-i18n-pl/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-pl
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-pl
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-pl/checksums b/i18n/kde-i18n-pl/checksums
new file mode 100644
index 0000000..8dbd0a2
--- /dev/null
+++ b/i18n/kde-i18n-pl/checksums
@@ -0,0 +1 @@
+c5a58fb84ce0f19e908b3a65f699e880 download/kde-i18n-pl-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-pt/Makefile b/i18n/kde-i18n-pt/Makefile
new file mode 100644
index 0000000..c6427b9
--- /dev/null
+++ b/i18n/kde-i18n-pt/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-pt
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-pt
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-pt/checksums b/i18n/kde-i18n-pt/checksums
new file mode 100644
index 0000000..4203832
--- /dev/null
+++ b/i18n/kde-i18n-pt/checksums
@@ -0,0 +1 @@
+696b4d75f81231e43f898e7c703d133d download/kde-i18n-pt-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-pt_BR/Makefile b/i18n/kde-i18n-pt_BR/Makefile
new file mode 100644
index 0000000..ae70643
--- /dev/null
+++ b/i18n/kde-i18n-pt_BR/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-pt_BR
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-pt_BR
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-pt_BR/checksums b/i18n/kde-i18n-pt_BR/checksums
new file mode 100644
index 0000000..62ef36f
--- /dev/null
+++ b/i18n/kde-i18n-pt_BR/checksums
@@ -0,0 +1 @@
+c7fc3d50c3fb27d8560412156dc464fb download/kde-i18n-pt_BR-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-ro/Makefile b/i18n/kde-i18n-ro/Makefile
new file mode 100644
index 0000000..c7a3097
--- /dev/null
+++ b/i18n/kde-i18n-ro/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-ro
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-ro
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-ro/checksums b/i18n/kde-i18n-ro/checksums
new file mode 100644
index 0000000..d4bdd23
--- /dev/null
+++ b/i18n/kde-i18n-ro/checksums
@@ -0,0 +1 @@
+81eb9ede8fa9073a997d3366ca236f96 download/kde-i18n-ro-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-ru/Makefile b/i18n/kde-i18n-ru/Makefile
new file mode 100644
index 0000000..fadc9c8
--- /dev/null
+++ b/i18n/kde-i18n-ru/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-ru
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-ru
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-ru/checksums b/i18n/kde-i18n-ru/checksums
new file mode 100644
index 0000000..b04f45a
--- /dev/null
+++ b/i18n/kde-i18n-ru/checksums
@@ -0,0 +1 @@
+b0a0edf56a5444d74dca527556a59ae3 download/kde-i18n-ru-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-rw/Makefile b/i18n/kde-i18n-rw/Makefile
new file mode 100644
index 0000000..25878c4
--- /dev/null
+++ b/i18n/kde-i18n-rw/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-rw
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-rw
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-rw/checksums b/i18n/kde-i18n-rw/checksums
new file mode 100644
index 0000000..1c5d533
--- /dev/null
+++ b/i18n/kde-i18n-rw/checksums
@@ -0,0 +1 @@
+69240b537d68e84a727ecbc54a471cb0 download/kde-i18n-rw-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-se/Makefile b/i18n/kde-i18n-se/Makefile
new file mode 100644
index 0000000..12cafdf
--- /dev/null
+++ b/i18n/kde-i18n-se/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-se
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-se
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-se/checksums b/i18n/kde-i18n-se/checksums
new file mode 100644
index 0000000..9d54639
--- /dev/null
+++ b/i18n/kde-i18n-se/checksums
@@ -0,0 +1 @@
+a5dc3120ccbea37cc4e6423d4bb2fbac download/kde-i18n-se-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-sk/Makefile b/i18n/kde-i18n-sk/Makefile
new file mode 100644
index 0000000..9f76c03
--- /dev/null
+++ b/i18n/kde-i18n-sk/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-sk
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-sk
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-sk/checksums b/i18n/kde-i18n-sk/checksums
new file mode 100644
index 0000000..6efca77
--- /dev/null
+++ b/i18n/kde-i18n-sk/checksums
@@ -0,0 +1 @@
+b2c5da89f8b5df63991deb47674bdbb9 download/kde-i18n-sk-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-sl/Makefile b/i18n/kde-i18n-sl/Makefile
new file mode 100644
index 0000000..dbc8f70
--- /dev/null
+++ b/i18n/kde-i18n-sl/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-sl
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-sl
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-sl/checksums b/i18n/kde-i18n-sl/checksums
new file mode 100644
index 0000000..fddeae6
--- /dev/null
+++ b/i18n/kde-i18n-sl/checksums
@@ -0,0 +1 @@
+5b2eff146028bffeb84315aaafa5ea5d download/kde-i18n-sl-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-sr/Makefile b/i18n/kde-i18n-sr/Makefile
new file mode 100644
index 0000000..6ffbaf2
--- /dev/null
+++ b/i18n/kde-i18n-sr/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-sr
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-sr
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-sr/checksums b/i18n/kde-i18n-sr/checksums
new file mode 100644
index 0000000..b01df2e
--- /dev/null
+++ b/i18n/kde-i18n-sr/checksums
@@ -0,0 +1 @@
+06099c0a4a7c84115e06c40256ed97ff download/kde-i18n-sr-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-sr@Latn/Makefile b/i18n/kde-i18n-sr@Latn/Makefile
new file mode 100644
index 0000000..9c63a4a
--- /dev/null
+++ b/i18n/kde-i18n-sr@Latn/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-sr@Latn
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-sr@Latn
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-sr@Latn/checksums b/i18n/kde-i18n-sr@Latn/checksums
new file mode 100644
index 0000000..d341104
--- /dev/null
+++ b/i18n/kde-i18n-sr@Latn/checksums
@@ -0,0 +1 @@
+1cbde47602550b462e91e4a7b5bbe8c8 download/kde-i18n-sr@Latn-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-ss/Makefile b/i18n/kde-i18n-ss/Makefile
new file mode 100644
index 0000000..66624e8
--- /dev/null
+++ b/i18n/kde-i18n-ss/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-ss
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-ss
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-ss/checksums b/i18n/kde-i18n-ss/checksums
new file mode 100644
index 0000000..f242852
--- /dev/null
+++ b/i18n/kde-i18n-ss/checksums
@@ -0,0 +1 @@
+def410b2a9ff67e03138c2acd98382a3 download/kde-i18n-ss-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-sv/Makefile b/i18n/kde-i18n-sv/Makefile
new file mode 100644
index 0000000..875b4b9
--- /dev/null
+++ b/i18n/kde-i18n-sv/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-sv
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-sv
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-sv/checksums b/i18n/kde-i18n-sv/checksums
new file mode 100644
index 0000000..42b5256
--- /dev/null
+++ b/i18n/kde-i18n-sv/checksums
@@ -0,0 +1 @@
+26fcaf78f44e67e3bda09e187fa85374 download/kde-i18n-sv-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-ta/Makefile b/i18n/kde-i18n-ta/Makefile
new file mode 100644
index 0000000..f8af4d4
--- /dev/null
+++ b/i18n/kde-i18n-ta/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-ta
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-ta
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-ta/checksums b/i18n/kde-i18n-ta/checksums
new file mode 100644
index 0000000..a54c747
--- /dev/null
+++ b/i18n/kde-i18n-ta/checksums
@@ -0,0 +1 @@
+c6798c99e32ea3b1e4817b1f1e2857b5 download/kde-i18n-ta-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-tg/Makefile b/i18n/kde-i18n-tg/Makefile
new file mode 100644
index 0000000..d1b678c
--- /dev/null
+++ b/i18n/kde-i18n-tg/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-tg
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-tg
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-tg/checksums b/i18n/kde-i18n-tg/checksums
new file mode 100644
index 0000000..aa52513
--- /dev/null
+++ b/i18n/kde-i18n-tg/checksums
@@ -0,0 +1 @@
+41b096c7409bcdc7d32aa97f3547d4bc download/kde-i18n-tg-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-th/Makefile b/i18n/kde-i18n-th/Makefile
new file mode 100644
index 0000000..44f2945
--- /dev/null
+++ b/i18n/kde-i18n-th/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-th
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-th
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-th/checksums b/i18n/kde-i18n-th/checksums
new file mode 100644
index 0000000..797db90
--- /dev/null
+++ b/i18n/kde-i18n-th/checksums
@@ -0,0 +1 @@
+11a49cc84cc87306dad4c61286ae0048 download/kde-i18n-th-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-tr/Makefile b/i18n/kde-i18n-tr/Makefile
new file mode 100644
index 0000000..30feb91
--- /dev/null
+++ b/i18n/kde-i18n-tr/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-tr
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-tr
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-tr/checksums b/i18n/kde-i18n-tr/checksums
new file mode 100644
index 0000000..75b1fba
--- /dev/null
+++ b/i18n/kde-i18n-tr/checksums
@@ -0,0 +1 @@
+90326b113d8e77497a3eb1d0d87ed65c download/kde-i18n-tr-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-uk/Makefile b/i18n/kde-i18n-uk/Makefile
new file mode 100644
index 0000000..a7865b8
--- /dev/null
+++ b/i18n/kde-i18n-uk/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-uk
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-uk
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-uk/checksums b/i18n/kde-i18n-uk/checksums
new file mode 100644
index 0000000..71f272c
--- /dev/null
+++ b/i18n/kde-i18n-uk/checksums
@@ -0,0 +1 @@
+cee28788e68efeb77fd672a31e206e8e download/kde-i18n-uk-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-uz/Makefile b/i18n/kde-i18n-uz/Makefile
new file mode 100644
index 0000000..2dc7031
--- /dev/null
+++ b/i18n/kde-i18n-uz/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-uz
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-uz
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-uz/checksums b/i18n/kde-i18n-uz/checksums
new file mode 100644
index 0000000..c7e0938
--- /dev/null
+++ b/i18n/kde-i18n-uz/checksums
@@ -0,0 +1 @@
+068da2a91ee5a06a4c9c18853336074e download/kde-i18n-uz-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-vi/Makefile b/i18n/kde-i18n-vi/Makefile
new file mode 100644
index 0000000..cede77d
--- /dev/null
+++ b/i18n/kde-i18n-vi/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-vi
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-vi
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-vi/checksums b/i18n/kde-i18n-vi/checksums
new file mode 100644
index 0000000..f3a503e
--- /dev/null
+++ b/i18n/kde-i18n-vi/checksums
@@ -0,0 +1 @@
+f8aa01eea219b5ed34ecc312a42c50fe download/kde-i18n-vi-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-zh_CN/Makefile b/i18n/kde-i18n-zh_CN/Makefile
new file mode 100644
index 0000000..7d8d9fb
--- /dev/null
+++ b/i18n/kde-i18n-zh_CN/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-zh_CN
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-zh_CN
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-zh_CN/checksums b/i18n/kde-i18n-zh_CN/checksums
new file mode 100644
index 0000000..38280a7
--- /dev/null
+++ b/i18n/kde-i18n-zh_CN/checksums
@@ -0,0 +1 @@
+ef0bf6dcdf3c05bf6a775abfae1944b9 download/kde-i18n-zh_CN-3.5.7.tar.bz2
diff --git a/i18n/kde-i18n-zh_TW/Makefile b/i18n/kde-i18n-zh_TW/Makefile
new file mode 100644
index 0000000..d9fb6f0
--- /dev/null
+++ b/i18n/kde-i18n-zh_TW/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kde-i18n-zh_TW
+GARVERSION = 3.5.7
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+MASTER_SITES = $(I18N_MASTER_SITES)
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kde-i18n-zh_TW
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/kde-i18n-zh_TW/checksums b/i18n/kde-i18n-zh_TW/checksums
new file mode 100644
index 0000000..9bafd17
--- /dev/null
+++ b/i18n/kde-i18n-zh_TW/checksums
@@ -0,0 +1 @@
+d5a68ed78b436874bb41c1e9c423b3ac download/kde-i18n-zh_TW-3.5.7.tar.bz2
diff --git a/i18n/koffice-l10n-bg/Makefile b/i18n/koffice-l10n-bg/Makefile
new file mode 100644
index 0000000..0dcf419
--- /dev/null
+++ b/i18n/koffice-l10n-bg/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-bg
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-bg
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-bg/checksums b/i18n/koffice-l10n-bg/checksums
new file mode 100644
index 0000000..566d10b
--- /dev/null
+++ b/i18n/koffice-l10n-bg/checksums
@@ -0,0 +1 @@
+da3167fc536f51d8e32998ae203cd4b9 download/koffice-l10n-bg-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-ca/Makefile b/i18n/koffice-l10n-ca/Makefile
new file mode 100644
index 0000000..5022876
--- /dev/null
+++ b/i18n/koffice-l10n-ca/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-ca
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-ca
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-ca/checksums b/i18n/koffice-l10n-ca/checksums
new file mode 100644
index 0000000..669044a
--- /dev/null
+++ b/i18n/koffice-l10n-ca/checksums
@@ -0,0 +1 @@
+5ec6aa3c1c613466a545e26bdb9dfd72 download/koffice-l10n-ca-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-cs/Makefile b/i18n/koffice-l10n-cs/Makefile
new file mode 100644
index 0000000..a62026c
--- /dev/null
+++ b/i18n/koffice-l10n-cs/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-cs
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-cs
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-cs/checksums b/i18n/koffice-l10n-cs/checksums
new file mode 100644
index 0000000..ed7f46a
--- /dev/null
+++ b/i18n/koffice-l10n-cs/checksums
@@ -0,0 +1 @@
+d893774830fa05b2450018ae70fcd267 download/koffice-l10n-cs-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-cy/Makefile b/i18n/koffice-l10n-cy/Makefile
new file mode 100644
index 0000000..5b8fd62
--- /dev/null
+++ b/i18n/koffice-l10n-cy/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-cy
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-cy
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-cy/checksums b/i18n/koffice-l10n-cy/checksums
new file mode 100644
index 0000000..4e97dbe
--- /dev/null
+++ b/i18n/koffice-l10n-cy/checksums
@@ -0,0 +1 @@
+6a100e050c3e6ae95733b24ce4d4f4cf download/koffice-l10n-cy-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-da/Makefile b/i18n/koffice-l10n-da/Makefile
new file mode 100644
index 0000000..d618c9a
--- /dev/null
+++ b/i18n/koffice-l10n-da/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-da
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-da
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-da/checksums b/i18n/koffice-l10n-da/checksums
new file mode 100644
index 0000000..6d2f3d3
--- /dev/null
+++ b/i18n/koffice-l10n-da/checksums
@@ -0,0 +1 @@
+fa9c878f7672d1b9881722f93a1dc1ce download/koffice-l10n-da-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-de/Makefile b/i18n/koffice-l10n-de/Makefile
new file mode 100644
index 0000000..75b5d2c
--- /dev/null
+++ b/i18n/koffice-l10n-de/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-de
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-de
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-de/checksums b/i18n/koffice-l10n-de/checksums
new file mode 100644
index 0000000..b004f4f
--- /dev/null
+++ b/i18n/koffice-l10n-de/checksums
@@ -0,0 +1 @@
+9153728550bc6101094bac42aefb7663 download/koffice-l10n-de-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-el/Makefile b/i18n/koffice-l10n-el/Makefile
new file mode 100644
index 0000000..3b06ffe
--- /dev/null
+++ b/i18n/koffice-l10n-el/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-el
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-el
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-el/checksums b/i18n/koffice-l10n-el/checksums
new file mode 100644
index 0000000..6e8ef7a
--- /dev/null
+++ b/i18n/koffice-l10n-el/checksums
@@ -0,0 +1 @@
+be97b80ccaa0da028d8d04f263be5fed download/koffice-l10n-el-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-en_GB/Makefile b/i18n/koffice-l10n-en_GB/Makefile
new file mode 100644
index 0000000..c0f5eca
--- /dev/null
+++ b/i18n/koffice-l10n-en_GB/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-en_GB
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-en_GB
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-en_GB/checksums b/i18n/koffice-l10n-en_GB/checksums
new file mode 100644
index 0000000..515766b
--- /dev/null
+++ b/i18n/koffice-l10n-en_GB/checksums
@@ -0,0 +1 @@
+468c3ac77b57de10e1cb7c99d184a443 download/koffice-l10n-en_GB-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-es/Makefile b/i18n/koffice-l10n-es/Makefile
new file mode 100644
index 0000000..b0e999f
--- /dev/null
+++ b/i18n/koffice-l10n-es/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-es
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-es
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-es/checksums b/i18n/koffice-l10n-es/checksums
new file mode 100644
index 0000000..a007f43
--- /dev/null
+++ b/i18n/koffice-l10n-es/checksums
@@ -0,0 +1 @@
+23f246f5bc86f8831e595f98c24c154e download/koffice-l10n-es-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-et/Makefile b/i18n/koffice-l10n-et/Makefile
new file mode 100644
index 0000000..630eb7c
--- /dev/null
+++ b/i18n/koffice-l10n-et/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-et
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-et
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-et/checksums b/i18n/koffice-l10n-et/checksums
new file mode 100644
index 0000000..5cba329
--- /dev/null
+++ b/i18n/koffice-l10n-et/checksums
@@ -0,0 +1 @@
+fdc1c81ae65bec5f7e56d76bcdbaa1af download/koffice-l10n-et-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-eu/Makefile b/i18n/koffice-l10n-eu/Makefile
new file mode 100644
index 0000000..5217f6c
--- /dev/null
+++ b/i18n/koffice-l10n-eu/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-eu
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-eu
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-eu/checksums b/i18n/koffice-l10n-eu/checksums
new file mode 100644
index 0000000..77b0112
--- /dev/null
+++ b/i18n/koffice-l10n-eu/checksums
@@ -0,0 +1 @@
+3ca81163f7242bcad450342e1105ad89 download/koffice-l10n-eu-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-fa/Makefile b/i18n/koffice-l10n-fa/Makefile
new file mode 100644
index 0000000..8a01eed
--- /dev/null
+++ b/i18n/koffice-l10n-fa/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-fa
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-fa
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-fa/checksums b/i18n/koffice-l10n-fa/checksums
new file mode 100644
index 0000000..7d9a2d2
--- /dev/null
+++ b/i18n/koffice-l10n-fa/checksums
@@ -0,0 +1 @@
+63f5d0570660e47455e8ccd1a8c4bf02 download/koffice-l10n-fa-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-fi/Makefile b/i18n/koffice-l10n-fi/Makefile
new file mode 100644
index 0000000..1c1289b
--- /dev/null
+++ b/i18n/koffice-l10n-fi/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-fi
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-fi
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-fi/checksums b/i18n/koffice-l10n-fi/checksums
new file mode 100644
index 0000000..5a33b37
--- /dev/null
+++ b/i18n/koffice-l10n-fi/checksums
@@ -0,0 +1 @@
+98b3b306061c127b92d9e73d3641f687 download/koffice-l10n-fi-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-fr/Makefile b/i18n/koffice-l10n-fr/Makefile
new file mode 100644
index 0000000..1ea17e5
--- /dev/null
+++ b/i18n/koffice-l10n-fr/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-fr
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-fr
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-fr/checksums b/i18n/koffice-l10n-fr/checksums
new file mode 100644
index 0000000..edb6deb
--- /dev/null
+++ b/i18n/koffice-l10n-fr/checksums
@@ -0,0 +1 @@
+01219310196ac9c8325c3d8c7456bcb3 download/koffice-l10n-fr-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-ga/Makefile b/i18n/koffice-l10n-ga/Makefile
new file mode 100644
index 0000000..66641b6
--- /dev/null
+++ b/i18n/koffice-l10n-ga/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-ga
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-ga
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-ga/checksums b/i18n/koffice-l10n-ga/checksums
new file mode 100644
index 0000000..f38f8fc
--- /dev/null
+++ b/i18n/koffice-l10n-ga/checksums
@@ -0,0 +1 @@
+80f28f345dbae9b108b97701ab2a3b7b download/koffice-l10n-ga-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-gl/Makefile b/i18n/koffice-l10n-gl/Makefile
new file mode 100644
index 0000000..b2bc066
--- /dev/null
+++ b/i18n/koffice-l10n-gl/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-gl
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-gl
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-gl/checksums b/i18n/koffice-l10n-gl/checksums
new file mode 100644
index 0000000..8a5b124
--- /dev/null
+++ b/i18n/koffice-l10n-gl/checksums
@@ -0,0 +1 @@
+84b9c65886a99599d99c7ea077875a88 download/koffice-l10n-gl-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-hu/Makefile b/i18n/koffice-l10n-hu/Makefile
new file mode 100644
index 0000000..efc179c
--- /dev/null
+++ b/i18n/koffice-l10n-hu/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-hu
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-hu
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-hu/checksums b/i18n/koffice-l10n-hu/checksums
new file mode 100644
index 0000000..e185d44
--- /dev/null
+++ b/i18n/koffice-l10n-hu/checksums
@@ -0,0 +1 @@
+088e5c503a9dedfa8d23a3fa11f596ca download/koffice-l10n-hu-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-it/Makefile b/i18n/koffice-l10n-it/Makefile
new file mode 100644
index 0000000..88ea1bc
--- /dev/null
+++ b/i18n/koffice-l10n-it/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-it
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-it
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-it/checksums b/i18n/koffice-l10n-it/checksums
new file mode 100644
index 0000000..05db261
--- /dev/null
+++ b/i18n/koffice-l10n-it/checksums
@@ -0,0 +1 @@
+1aa3d67279e63f7c7919908c686f2281 download/koffice-l10n-it-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-ja/Makefile b/i18n/koffice-l10n-ja/Makefile
new file mode 100644
index 0000000..b59c1d4
--- /dev/null
+++ b/i18n/koffice-l10n-ja/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-ja
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-ja
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-ja/checksums b/i18n/koffice-l10n-ja/checksums
new file mode 100644
index 0000000..2b5142a
--- /dev/null
+++ b/i18n/koffice-l10n-ja/checksums
@@ -0,0 +1 @@
+b0d886c7504a8b0bafb5095835e78c8a download/koffice-l10n-ja-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-km/Makefile b/i18n/koffice-l10n-km/Makefile
new file mode 100644
index 0000000..74036c1
--- /dev/null
+++ b/i18n/koffice-l10n-km/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-km
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-km
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-km/checksums b/i18n/koffice-l10n-km/checksums
new file mode 100644
index 0000000..f4c5864
--- /dev/null
+++ b/i18n/koffice-l10n-km/checksums
@@ -0,0 +1 @@
+527e698b2907f90712239681f0ae0a9e download/koffice-l10n-km-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-lv/Makefile b/i18n/koffice-l10n-lv/Makefile
new file mode 100644
index 0000000..854b0b2
--- /dev/null
+++ b/i18n/koffice-l10n-lv/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-lv
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-lv
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-lv/checksums b/i18n/koffice-l10n-lv/checksums
new file mode 100644
index 0000000..f7155c9
--- /dev/null
+++ b/i18n/koffice-l10n-lv/checksums
@@ -0,0 +1 @@
+62386e1713216bd2709e1ce3fd150c8e download/koffice-l10n-lv-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-ms/Makefile b/i18n/koffice-l10n-ms/Makefile
new file mode 100644
index 0000000..0802fdc
--- /dev/null
+++ b/i18n/koffice-l10n-ms/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-ms
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-ms
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-ms/checksums b/i18n/koffice-l10n-ms/checksums
new file mode 100644
index 0000000..1829409
--- /dev/null
+++ b/i18n/koffice-l10n-ms/checksums
@@ -0,0 +1 @@
+1bf2fcf2c82464e038eed026eaa13fca download/koffice-l10n-ms-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-nb/Makefile b/i18n/koffice-l10n-nb/Makefile
new file mode 100644
index 0000000..c919579
--- /dev/null
+++ b/i18n/koffice-l10n-nb/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-nb
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-nb
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-nb/checksums b/i18n/koffice-l10n-nb/checksums
new file mode 100644
index 0000000..022bbc2
--- /dev/null
+++ b/i18n/koffice-l10n-nb/checksums
@@ -0,0 +1 @@
+462ecb27a008482801ca3bd9e803b2d1 download/koffice-l10n-nb-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-nds/Makefile b/i18n/koffice-l10n-nds/Makefile
new file mode 100644
index 0000000..9f8dff4
--- /dev/null
+++ b/i18n/koffice-l10n-nds/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-nds
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-nds
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-nds/checksums b/i18n/koffice-l10n-nds/checksums
new file mode 100644
index 0000000..c388abc
--- /dev/null
+++ b/i18n/koffice-l10n-nds/checksums
@@ -0,0 +1 @@
+50702ef6c8d586e89280a2b42d2c5225 download/koffice-l10n-nds-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-ne/Makefile b/i18n/koffice-l10n-ne/Makefile
new file mode 100644
index 0000000..9875df5
--- /dev/null
+++ b/i18n/koffice-l10n-ne/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-ne
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-ne
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-ne/checksums b/i18n/koffice-l10n-ne/checksums
new file mode 100644
index 0000000..f958030
--- /dev/null
+++ b/i18n/koffice-l10n-ne/checksums
@@ -0,0 +1 @@
+bd95494b15f647dfcbe39d514811504a download/koffice-l10n-ne-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-nl/Makefile b/i18n/koffice-l10n-nl/Makefile
new file mode 100644
index 0000000..3cf89b6
--- /dev/null
+++ b/i18n/koffice-l10n-nl/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-nl
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-nl
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-nl/checksums b/i18n/koffice-l10n-nl/checksums
new file mode 100644
index 0000000..a7c8389
--- /dev/null
+++ b/i18n/koffice-l10n-nl/checksums
@@ -0,0 +1 @@
+a63c40510c0bb322dc1f6bb057759772 download/koffice-l10n-nl-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-pl/Makefile b/i18n/koffice-l10n-pl/Makefile
new file mode 100644
index 0000000..6310c57
--- /dev/null
+++ b/i18n/koffice-l10n-pl/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-pl
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-pl
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-pl/checksums b/i18n/koffice-l10n-pl/checksums
new file mode 100644
index 0000000..c04d45c
--- /dev/null
+++ b/i18n/koffice-l10n-pl/checksums
@@ -0,0 +1 @@
+a174b73f3e2c0e579bf3775e481958dd download/koffice-l10n-pl-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-pt/Makefile b/i18n/koffice-l10n-pt/Makefile
new file mode 100644
index 0000000..c0f10e8
--- /dev/null
+++ b/i18n/koffice-l10n-pt/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-pt
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-pt
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-pt/checksums b/i18n/koffice-l10n-pt/checksums
new file mode 100644
index 0000000..c83b59a
--- /dev/null
+++ b/i18n/koffice-l10n-pt/checksums
@@ -0,0 +1 @@
+e74540534eae3d0b1cb4bbabf3da0ed0 download/koffice-l10n-pt-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-pt_BR/Makefile b/i18n/koffice-l10n-pt_BR/Makefile
new file mode 100644
index 0000000..014c6fa
--- /dev/null
+++ b/i18n/koffice-l10n-pt_BR/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-pt_BR
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-pt_BR
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-pt_BR/checksums b/i18n/koffice-l10n-pt_BR/checksums
new file mode 100644
index 0000000..74f3525
--- /dev/null
+++ b/i18n/koffice-l10n-pt_BR/checksums
@@ -0,0 +1 @@
+fe49fa2405b44044b69b5d1e2bcb15cf download/koffice-l10n-pt_BR-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-ru/Makefile b/i18n/koffice-l10n-ru/Makefile
new file mode 100644
index 0000000..926b588
--- /dev/null
+++ b/i18n/koffice-l10n-ru/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-ru
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-ru
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-ru/checksums b/i18n/koffice-l10n-ru/checksums
new file mode 100644
index 0000000..b635389
--- /dev/null
+++ b/i18n/koffice-l10n-ru/checksums
@@ -0,0 +1 @@
+e6be9bcea5e2b6e6aa4662f1530841ef download/koffice-l10n-ru-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-sk/Makefile b/i18n/koffice-l10n-sk/Makefile
new file mode 100644
index 0000000..4637214
--- /dev/null
+++ b/i18n/koffice-l10n-sk/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-sk
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-sk
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-sk/checksums b/i18n/koffice-l10n-sk/checksums
new file mode 100644
index 0000000..1310bc0
--- /dev/null
+++ b/i18n/koffice-l10n-sk/checksums
@@ -0,0 +1 @@
+aa49a6c5497dc201359c577ab77c8361 download/koffice-l10n-sk-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-sl/Makefile b/i18n/koffice-l10n-sl/Makefile
new file mode 100644
index 0000000..1211c0c
--- /dev/null
+++ b/i18n/koffice-l10n-sl/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-sl
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-sl
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-sl/checksums b/i18n/koffice-l10n-sl/checksums
new file mode 100644
index 0000000..efa1a6f
--- /dev/null
+++ b/i18n/koffice-l10n-sl/checksums
@@ -0,0 +1 @@
+18e3f2e81be91170fe551e4b47c2f907 download/koffice-l10n-sl-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-sr/Makefile b/i18n/koffice-l10n-sr/Makefile
new file mode 100644
index 0000000..c3b304a
--- /dev/null
+++ b/i18n/koffice-l10n-sr/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-sr
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-sr
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-sr/checksums b/i18n/koffice-l10n-sr/checksums
new file mode 100644
index 0000000..b61255b
--- /dev/null
+++ b/i18n/koffice-l10n-sr/checksums
@@ -0,0 +1 @@
+3eb97f2ef5f65b3637af397dca0d8fcb download/koffice-l10n-sr-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-sr@Latn/Makefile b/i18n/koffice-l10n-sr@Latn/Makefile
new file mode 100644
index 0000000..2e95092
--- /dev/null
+++ b/i18n/koffice-l10n-sr@Latn/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-sr@Latn
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-sr@Latn
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-sr@Latn/checksums b/i18n/koffice-l10n-sr@Latn/checksums
new file mode 100644
index 0000000..3f8a32a
--- /dev/null
+++ b/i18n/koffice-l10n-sr@Latn/checksums
@@ -0,0 +1 @@
+217064c12d6efe969a1bbdac2ef8aef0 download/koffice-l10n-sr@Latn-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-sv/Makefile b/i18n/koffice-l10n-sv/Makefile
new file mode 100644
index 0000000..a4f823e
--- /dev/null
+++ b/i18n/koffice-l10n-sv/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-sv
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-sv
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-sv/checksums b/i18n/koffice-l10n-sv/checksums
new file mode 100644
index 0000000..ee8a5ee
--- /dev/null
+++ b/i18n/koffice-l10n-sv/checksums
@@ -0,0 +1 @@
+c6c530010a64fb9e2880a3f33bb9276e download/koffice-l10n-sv-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-tr/Makefile b/i18n/koffice-l10n-tr/Makefile
new file mode 100644
index 0000000..9ba09fe
--- /dev/null
+++ b/i18n/koffice-l10n-tr/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-tr
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-tr
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-tr/checksums b/i18n/koffice-l10n-tr/checksums
new file mode 100644
index 0000000..0127de8
--- /dev/null
+++ b/i18n/koffice-l10n-tr/checksums
@@ -0,0 +1 @@
+301f3a665f12d1b7f56fe9be93403812 download/koffice-l10n-tr-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-uk/Makefile b/i18n/koffice-l10n-uk/Makefile
new file mode 100644
index 0000000..3d19ecb
--- /dev/null
+++ b/i18n/koffice-l10n-uk/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-uk
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-uk
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-uk/checksums b/i18n/koffice-l10n-uk/checksums
new file mode 100644
index 0000000..bee2c22
--- /dev/null
+++ b/i18n/koffice-l10n-uk/checksums
@@ -0,0 +1 @@
+f8a50375d4f280131a27e0bdfb0deb83 download/koffice-l10n-uk-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-zh_CN/Makefile b/i18n/koffice-l10n-zh_CN/Makefile
new file mode 100644
index 0000000..73914dd
--- /dev/null
+++ b/i18n/koffice-l10n-zh_CN/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-zh_CN
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-zh_CN
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-zh_CN/checksums b/i18n/koffice-l10n-zh_CN/checksums
new file mode 100644
index 0000000..21e94aa
--- /dev/null
+++ b/i18n/koffice-l10n-zh_CN/checksums
@@ -0,0 +1 @@
+a21490ebc1d0beedc565c070d4bdad25 download/koffice-l10n-zh_CN-1.6.3.tar.bz2
diff --git a/i18n/koffice-l10n-zh_TW/Makefile b/i18n/koffice-l10n-zh_TW/Makefile
new file mode 100644
index 0000000..79e4f7d
--- /dev/null
+++ b/i18n/koffice-l10n-zh_TW/Makefile
@@ -0,0 +1,18 @@
+GARNAME = koffice-l10n-zh_TW
+GARVERSION = 1.6.3
+CATEGORIES = i18n
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = $(KOFFICE_MASTER_SITES)/koffice-l10n/
+
+LIBDEPS = apps/office/koffice
+
+DESCRIPTION = koffice-l10n-zh_TW
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/i18n/koffice-l10n-zh_TW/checksums b/i18n/koffice-l10n-zh_TW/checksums
new file mode 100644
index 0000000..3f5ec7c
--- /dev/null
+++ b/i18n/koffice-l10n-zh_TW/checksums
@@ -0,0 +1 @@
+7c7c3787a45743ae9d06938829381d2e download/koffice-l10n-zh_TW-1.6.3.tar.bz2
diff --git a/kde.conf.mk b/kde.conf.mk
new file mode 100644
index 0000000..1d17e52
--- /dev/null
+++ b/kde.conf.mk
@@ -0,0 +1,11 @@
+# http://download.kde.org/ is a round-robbin dns service
+MASTER_SITES += http://download.kde.org/stable/3.5.7/src/ ftp://ftp.kde.org/pub/kde/stable/3.5.7/src/
+I18N_MASTER_SITES += http://download.kde.org/stable/3.5.7/src/kde-i18n/ ftp://ftp.kde.org/pub/kde/stable/3.5.7/src/kde-i18n/
+KOFFICE_MASTER_SITES += http://download.kde.org/stable/koffice-1.6.3/src/ ftp://ftp.kde.org/pub/kde/stable/koffice-1.6.3/src/
+
+# Pick a specific server of the above rotated if it is faster for you
+# MASTER_SITES += ftp://ftp.uni-kl.de/pub/linux/kde/stable/3.5.7/src/
+# MASTER_SITES += http://download.at.kde.org/pub/kde/stable/3.5.7/src/
+# MASTER_SITES += http://ftp.du.se/pub/mirrors/kde/stable/3.5.7/src/
+# MASTER_SITES += ftp://ibiblio.org/pub/packages/desktops/kde/stable/3.5.7/src/
+# MASTER_SITES += http://www.gtlib.cc.gatech.edu/pub/kde/stable/3.5.7/src/
diff --git a/kde/Makefile b/kde/Makefile
new file mode 100644
index 0000000..84ff360
--- /dev/null
+++ b/kde/Makefile
@@ -0,0 +1 @@
+include ../category.mk
diff --git a/kde/category.mk b/kde/category.mk
new file mode 100644
index 0000000..a2f8f0b
--- /dev/null
+++ b/kde/category.mk
@@ -0,0 +1,4 @@
+# extra configure info
+# CONFIGURE_ARGS += --disable-debug
+
+include ../../gar.mk
diff --git a/kde/kdeaccessibility/Makefile b/kde/kdeaccessibility/Makefile
new file mode 100644
index 0000000..1e29d5f
--- /dev/null
+++ b/kde/kdeaccessibility/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdeaccessibility
+GARVERSION = 3.5.7
+CATEGORIES = apps
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = KMag, KMouseTool, KMouth
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdeaccessibility/checksums b/kde/kdeaccessibility/checksums
new file mode 100644
index 0000000..7d56f69
--- /dev/null
+++ b/kde/kdeaccessibility/checksums
@@ -0,0 +1 @@
+49a3ffc5303a0c59abf9dcfef185f8bc download/kdeaccessibility-3.5.7.tar.bz2
diff --git a/kde/kdeaddons/Makefile b/kde/kdeaddons/Makefile
new file mode 100644
index 0000000..efcd116
--- /dev/null
+++ b/kde/kdeaddons/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdeaddons
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdebase kde/kdegames kde/kdemultimedia
+
+DESCRIPTION = kdeaddons
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdeaddons/checksums b/kde/kdeaddons/checksums
new file mode 100644
index 0000000..14f7776
--- /dev/null
+++ b/kde/kdeaddons/checksums
@@ -0,0 +1 @@
+7b50fa8e103bd722dfcdfc329126ff28 download/kdeaddons-3.5.7.tar.bz2
diff --git a/kde/kdeadmin/Makefile b/kde/kdeadmin/Makefile
new file mode 100644
index 0000000..5153e3b
--- /dev/null
+++ b/kde/kdeadmin/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdeadmin
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = kdeadmin
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdeadmin/checksums b/kde/kdeadmin/checksums
new file mode 100644
index 0000000..d0a0141
--- /dev/null
+++ b/kde/kdeadmin/checksums
@@ -0,0 +1 @@
+fdf4e7e230d9b5688d72f0e1a8039e12 download/kdeadmin-3.5.7.tar.bz2
diff --git a/kde/kdeartwork/Makefile b/kde/kdeartwork/Makefile
new file mode 100644
index 0000000..7bbeb8d
--- /dev/null
+++ b/kde/kdeartwork/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdeartwork
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = kdeartwork
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdeartwork/checksums b/kde/kdeartwork/checksums
new file mode 100644
index 0000000..2df07e7
--- /dev/null
+++ b/kde/kdeartwork/checksums
@@ -0,0 +1 @@
+4ce75cd6f98b8662e450be735bc0b060 download/kdeartwork-3.5.7.tar.bz2
diff --git a/kde/kdebase/Makefile b/kde/kdebase/Makefile
new file mode 100644
index 0000000..d61c61b
--- /dev/null
+++ b/kde/kdebase/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdebase
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kdebase
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final --with-extra-includes=/usr/kerberos/include
+
+include ../category.mk
diff --git a/kde/kdebase/checksums b/kde/kdebase/checksums
new file mode 100644
index 0000000..b06bcd2
--- /dev/null
+++ b/kde/kdebase/checksums
@@ -0,0 +1 @@
+b421e01b3ee712549ee967f58ed24de0 download/kdebase-3.5.7.tar.bz2
diff --git a/kde/kdebindings/Makefile b/kde/kdebindings/Makefile
new file mode 100644
index 0000000..1ee2327
--- /dev/null
+++ b/kde/kdebindings/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdebindings
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = kdebindings
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdebindings/checksums b/kde/kdebindings/checksums
new file mode 100644
index 0000000..7b79805
--- /dev/null
+++ b/kde/kdebindings/checksums
@@ -0,0 +1 @@
+bc8a95f0cfd52ad0559a775cf045f230 download/kdebindings-3.5.7.tar.bz2
diff --git a/kde/kdeedu/Makefile b/kde/kdeedu/Makefile
new file mode 100644
index 0000000..0f9fedb
--- /dev/null
+++ b/kde/kdeedu/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdeedu
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kdeedu
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdeedu/checksums b/kde/kdeedu/checksums
new file mode 100644
index 0000000..3361e03
--- /dev/null
+++ b/kde/kdeedu/checksums
@@ -0,0 +1 @@
+e2568148df3bf5aecec2ed21c4a0e0a1 download/kdeedu-3.5.7.tar.bz2
diff --git a/kde/kdegames/Makefile b/kde/kdegames/Makefile
new file mode 100644
index 0000000..ae8439f
--- /dev/null
+++ b/kde/kdegames/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdegames
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdebase
+
+DESCRIPTION = kdegames
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdegames/checksums b/kde/kdegames/checksums
new file mode 100644
index 0000000..3b3891f
--- /dev/null
+++ b/kde/kdegames/checksums
@@ -0,0 +1 @@
+49ada123885195673d8bcbada4e9c82c download/kdegames-3.5.7.tar.bz2
diff --git a/kde/kdegraphics/Makefile b/kde/kdegraphics/Makefile
new file mode 100644
index 0000000..7985f90
--- /dev/null
+++ b/kde/kdegraphics/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdegraphics
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs libs/imlib libs/lcms libs/fribidi
+
+DESCRIPTION = kdegraphics
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdegraphics/checksums b/kde/kdegraphics/checksums
new file mode 100644
index 0000000..cc215da
--- /dev/null
+++ b/kde/kdegraphics/checksums
@@ -0,0 +1 @@
+eae753e80c5f8dd304e7fd0dca84ae67 download/kdegraphics-3.5.7.tar.bz2
diff --git a/kde/kdelibs/Makefile b/kde/kdelibs/Makefile
new file mode 100644
index 0000000..3919e9b
--- /dev/null
+++ b/kde/kdelibs/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kdelibs
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+PATCHFILES = do-not-fail-fast-malloc.diff bomb_out_bzip2.diff
+
+LIBDEPS = libs/arts libs/libidn libs/libxslt libs/libart_lgpl libs/mdnsresponder
+
+DESCRIPTION = kdelibs
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final --with-extra-includes=/usr/kerberos/include
+
+include ../category.mk
diff --git a/kde/kdelibs/checksums b/kde/kdelibs/checksums
new file mode 100644
index 0000000..028a215
--- /dev/null
+++ b/kde/kdelibs/checksums
@@ -0,0 +1,3 @@
+50ed644f2ec91963570fe2b155652957 download/kdelibs-3.5.7.tar.bz2
+8f5083b762d09a77f01527e3a899c4c1 download/do-not-fail-fast-malloc.diff
+1a034b0c1c4e8abb3acb2c91ad4400a4 download/bomb_out_bzip2.diff
diff --git a/kde/kdelibs/files/bomb_out_bzip2.diff b/kde/kdelibs/files/bomb_out_bzip2.diff
new file mode 100644
index 0000000..92644d7
--- /dev/null
+++ b/kde/kdelibs/files/bomb_out_bzip2.diff
@@ -0,0 +1,10 @@
+--- work/kdelibs-3.5.7/configure 2004-02-11 16:52:37.000000000 +0100
++++ tmp/kdelibs-3.5.7/configure 2004-02-11 16:52:27.000000000 +0100
+@@ -46967,6 +46967,7 @@
+ if test -z "$LIBBZ2"; then
+ echo ""
+ echo "You're missing bzip2 development files."
++ exit 1
+ echo "KDE won't be able to provide a help ioslave (help://) without it,"
+ echo "so if you want helpfiles you should consider installing it."
+ echo "Have a look at http://sources.redhat.com/bzip2/ for sources, "
diff --git a/kde/kdelibs/files/do-not-fail-fast-malloc.diff b/kde/kdelibs/files/do-not-fail-fast-malloc.diff
new file mode 100644
index 0000000..ebe014d
--- /dev/null
+++ b/kde/kdelibs/files/do-not-fail-fast-malloc.diff
@@ -0,0 +1,16 @@
+--- work/kdelibs-3.5.7/configure 2003-11-30 14:18:30.000000000 +0100
++++ tmp/kdelibs-3.5.7/configure 2003-12-01 20:18:09.000000000 +0100
+@@ -38308,13 +38308,7 @@
+
+ ;;
+ *)
+- if test "$kde_fast_malloc" = "notgiven"; then
+ kde_fast_malloc=no
+- else
+- { { echo "$as_me:$LINENO: error: Fast malloc is not supported on this platform (missing spinlock implementation)." >&5
+-echo "$as_me: error: Fast malloc is not supported on this platform (missing spinlock implementation)." >&2;}
+- { (exit 1); exit 1; }; }
+- fi
+ ;;
+ esac
+ case $target_os in
diff --git a/kde/kdemultimedia/Makefile b/kde/kdemultimedia/Makefile
new file mode 100644
index 0000000..142d85f
--- /dev/null
+++ b/kde/kdemultimedia/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdemultimedia
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs libs/taglib libs/libmusicbrainz libs/xine-lib libs/akode
+
+DESCRIPTION = kdemultimedia
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final --enable-new-ldflags
+
+include ../category.mk
diff --git a/kde/kdemultimedia/checksums b/kde/kdemultimedia/checksums
new file mode 100644
index 0000000..e7d5234
--- /dev/null
+++ b/kde/kdemultimedia/checksums
@@ -0,0 +1 @@
+3d18574ca14258fb565160aa84bf217c download/kdemultimedia-3.5.7.tar.bz2
diff --git a/kde/kdenetwork/Makefile b/kde/kdenetwork/Makefile
new file mode 100644
index 0000000..bd3238f
--- /dev/null
+++ b/kde/kdenetwork/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kdenetwork
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = libs/openslp kde/kdebase
+
+DESCRIPTION = kdenetwork
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --with-extra-includes=/usr/kerberos/include
+#--enable-final
+
+include ../category.mk
diff --git a/kde/kdenetwork/checksums b/kde/kdenetwork/checksums
new file mode 100644
index 0000000..6f9337c
--- /dev/null
+++ b/kde/kdenetwork/checksums
@@ -0,0 +1 @@
+d7f2a05a7e304b33128123c3f67ea636 download/kdenetwork-3.5.7.tar.bz2
diff --git a/kde/kdepim/Makefile b/kde/kdepim/Makefile
new file mode 100644
index 0000000..72be1e4
--- /dev/null
+++ b/kde/kdepim/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdepim
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs libs/gpgme
+
+DESCRIPTION = kdepim
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdepim/checksums b/kde/kdepim/checksums
new file mode 100644
index 0000000..5792f85
--- /dev/null
+++ b/kde/kdepim/checksums
@@ -0,0 +1 @@
+8571db6dcf4168614c96bb72c493f931 download/kdepim-3.5.7.tar.bz2
diff --git a/kde/kdesdk/Makefile b/kde/kdesdk/Makefile
new file mode 100644
index 0000000..b1a1b39
--- /dev/null
+++ b/kde/kdesdk/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdesdk
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdepim
+
+DESCRIPTION = kdesdk
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdesdk/checksums b/kde/kdesdk/checksums
new file mode 100644
index 0000000..e6cd778
--- /dev/null
+++ b/kde/kdesdk/checksums
@@ -0,0 +1 @@
+6a8f7b7fea753e2a4517301dee76d84a download/kdesdk-3.5.7.tar.bz2
diff --git a/kde/kdetoys/Makefile b/kde/kdetoys/Makefile
new file mode 100644
index 0000000..bc2b7c7
--- /dev/null
+++ b/kde/kdetoys/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdetoys
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = kdetoys
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdetoys/checksums b/kde/kdetoys/checksums
new file mode 100644
index 0000000..f42f644
--- /dev/null
+++ b/kde/kdetoys/checksums
@@ -0,0 +1 @@
+946e58b53ac4e6374051736a0eb4cf92 download/kdetoys-3.5.7.tar.bz2
diff --git a/kde/kdeutils/Makefile b/kde/kdeutils/Makefile
new file mode 100644
index 0000000..99765a1
--- /dev/null
+++ b/kde/kdeutils/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdeutils
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs libs/gmp
+
+DESCRIPTION = kdeutils
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdeutils/checksums b/kde/kdeutils/checksums
new file mode 100644
index 0000000..78a3a48
--- /dev/null
+++ b/kde/kdeutils/checksums
@@ -0,0 +1 @@
+5f167f53bdbf0b8c71c2d0f0ff7593fd download/kdeutils-3.5.7.tar.bz2
diff --git a/kde/kdewebdev/Makefile b/kde/kdewebdev/Makefile
new file mode 100644
index 0000000..b150b1c
--- /dev/null
+++ b/kde/kdewebdev/Makefile
@@ -0,0 +1,16 @@
+GARNAME = kdewebdev
+GARVERSION = 3.5.7
+CATEGORIES = kde
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs
+
+DESCRIPTION = Web development applications
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/kde/kdewebdev/checksums b/kde/kdewebdev/checksums
new file mode 100644
index 0000000..9b12c6f
--- /dev/null
+++ b/kde/kdewebdev/checksums
@@ -0,0 +1 @@
+1329e0aea45947a14faa3d936f9edb5d download/kdewebdev-3.5.7.tar.bz2
diff --git a/libs/Makefile b/libs/Makefile
new file mode 100644
index 0000000..84ff360
--- /dev/null
+++ b/libs/Makefile
@@ -0,0 +1 @@
+include ../category.mk
diff --git a/libs/akode/Makefile b/libs/akode/Makefile
new file mode 100644
index 0000000..cd74c35
--- /dev/null
+++ b/libs/akode/Makefile
@@ -0,0 +1,16 @@
+GARNAME = akode
+GARVERSION = 2.0.1
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://developer.kde.org/~binner/konstruct/
+
+DESCRIPTION = Simple audio-decoding frame-work
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/akode/checksums b/libs/akode/checksums
new file mode 100644
index 0000000..602c706
--- /dev/null
+++ b/libs/akode/checksums
@@ -0,0 +1 @@
+94a10e7729b20b669bc5c7721f62e162 download/akode-2.0.1.tar.bz2
diff --git a/libs/arts/Makefile b/libs/arts/Makefile
new file mode 100644
index 0000000..7dce3f8
--- /dev/null
+++ b/libs/arts/Makefile
@@ -0,0 +1,16 @@
+GARNAME = arts
+GARVERSION = 1.5.7
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = libs/glib libs/qt-x11-free
+
+DESCRIPTION = arts
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) $(ENABLE_LIBSUFFIX) --enable-final
+
+include ../category.mk
diff --git a/libs/arts/checksums b/libs/arts/checksums
new file mode 100644
index 0000000..90838b7
--- /dev/null
+++ b/libs/arts/checksums
@@ -0,0 +1 @@
+28ac10541e5d8daf9009f6af1f7857af download/arts-1.5.7.tar.bz2
diff --git a/libs/category.mk b/libs/category.mk
new file mode 100644
index 0000000..39b89ea
--- /dev/null
+++ b/libs/category.mk
@@ -0,0 +1 @@
+include ../../gar.mk
diff --git a/libs/cyrus-sasl/Makefile b/libs/cyrus-sasl/Makefile
new file mode 100644
index 0000000..6fd5aa2
--- /dev/null
+++ b/libs/cyrus-sasl/Makefile
@@ -0,0 +1,16 @@
+GARNAME = cyrus-sasl
+GARVERSION = 2.1.22
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ http://developer.kde.org/~binner/konstruct/
+
+DESCRIPTION = Authentification library
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/cyrus-sasl/checksums b/libs/cyrus-sasl/checksums
new file mode 100644
index 0000000..398c42f
--- /dev/null
+++ b/libs/cyrus-sasl/checksums
@@ -0,0 +1 @@
+45dde9d19193ae9dd388eb68b2027bc9 download/cyrus-sasl-2.1.22.tar.gz
diff --git a/libs/dirmngr/Makefile b/libs/dirmngr/Makefile
new file mode 100644
index 0000000..d2d6a15
--- /dev/null
+++ b/libs/dirmngr/Makefile
@@ -0,0 +1,18 @@
+GARNAME = dirmngr
+GARVERSION = 0.5.6
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = ftp://ftp.mirror.ac.uk/sites/ftp.gnupg.org/alpha/dirmngr/ ftp://gd.tuwien.ac.at/privacy/gnupg/alpha/dirmngr/
+
+LIBDEPS = libs/libgcrypt libs/libksba libs/libassuan
+
+DESCRIPTION = dirmngr
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/dirmngr/checksums b/libs/dirmngr/checksums
new file mode 100644
index 0000000..2b34ef6
--- /dev/null
+++ b/libs/dirmngr/checksums
@@ -0,0 +1 @@
+8668160837dbe73a4d129eb2dfd21f88 download/dirmngr-0.5.6.tar.gz
diff --git a/libs/exiv2/Makefile b/libs/exiv2/Makefile
new file mode 100644
index 0000000..cb2c27b
--- /dev/null
+++ b/libs/exiv2/Makefile
@@ -0,0 +1,16 @@
+GARNAME = exiv2
+GARVERSION = 0.12
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://www.exiv2.org/
+
+DESCRIPTION = exiv2
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/exiv2/checksums b/libs/exiv2/checksums
new file mode 100644
index 0000000..900c7d4
--- /dev/null
+++ b/libs/exiv2/checksums
@@ -0,0 +1 @@
+a97a4e489df7ec99458e3e33b506c3e6 download/exiv2-0.12.tar.gz
diff --git a/libs/fribidi/Makefile b/libs/fribidi/Makefile
new file mode 100644
index 0000000..45294bb
--- /dev/null
+++ b/libs/fribidi/Makefile
@@ -0,0 +1,16 @@
+GARNAME = fribidi
+GARVERSION = 0.10.7
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://fribidi.org/download/
+
+DESCRIPTION = FriBidi
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/fribidi/checksums b/libs/fribidi/checksums
new file mode 100644
index 0000000..e05103a
--- /dev/null
+++ b/libs/fribidi/checksums
@@ -0,0 +1 @@
+0f602ed32869dbc551dc6bc83d8a3d28 download/fribidi-0.10.7.tar.gz
diff --git a/libs/glib/Makefile b/libs/glib/Makefile
new file mode 100644
index 0000000..31831dd
--- /dev/null
+++ b/libs/glib/Makefile
@@ -0,0 +1,19 @@
+GARNAME = glib
+GARVERSION = 2.12.11
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = ftp://ftp.gtk.org/pub/glib/2.12/ ftp://ftp.gnome.org/pub/gnome/sources/glib/2.12/ http://ftp.linux.org.uk/mirrors/ftp.gnome.org/sources/glib/2.12/
+
+LIBDEPS = misc/pkgconfig
+
+DESCRIPTION = low-level core library
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+# Add --with-libiconv=gnu on non-GNU based platforms
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/glib/checksums b/libs/glib/checksums
new file mode 100644
index 0000000..3f41086
--- /dev/null
+++ b/libs/glib/checksums
@@ -0,0 +1 @@
+077a9917b673a9a0bc63f351786dde24 download/glib-2.12.11.tar.bz2
diff --git a/libs/gmp/Makefile b/libs/gmp/Makefile
new file mode 100644
index 0000000..448af30
--- /dev/null
+++ b/libs/gmp/Makefile
@@ -0,0 +1,16 @@
+GARNAME = gmp
+GARVERSION = 4.2.1
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://ftp.sunet.se/pub/gnu/gmp/ ftp://ftp.gnu.org/gnu/gmp/
+
+DESCRIPTION = Library for arbitrary precision arithmetic
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/gmp/checksums b/libs/gmp/checksums
new file mode 100644
index 0000000..aee2940
--- /dev/null
+++ b/libs/gmp/checksums
@@ -0,0 +1 @@
+091c56e0e1cca6b09b17b69d47ef18e3 download/gmp-4.2.1.tar.bz2
diff --git a/libs/gpgme/Makefile b/libs/gpgme/Makefile
new file mode 100644
index 0000000..c48d0c4
--- /dev/null
+++ b/libs/gpgme/Makefile
@@ -0,0 +1,18 @@
+GARNAME = gpgme
+GARVERSION = 1.1.4
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+LIBDEPS = misc/gnupg
+
+MASTER_SITES = ftp://ftp.mirror.ac.uk/sites/ftp.gnupg.org/gpgme/ ftp://gd.tuwien.ac.at/privacy/gnupg/gpgme/
+
+DESCRIPTION = gpgme
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --without-gpgsm
+
+include ../category.mk
diff --git a/libs/gpgme/checksums b/libs/gpgme/checksums
new file mode 100644
index 0000000..aab12f7
--- /dev/null
+++ b/libs/gpgme/checksums
@@ -0,0 +1 @@
+0a2d20f70e6e01a4869ad6b7497404ae download/gpgme-1.1.4.tar.gz
diff --git a/libs/id3lib/Makefile b/libs/id3lib/Makefile
new file mode 100644
index 0000000..f7eb928
--- /dev/null
+++ b/libs/id3lib/Makefile
@@ -0,0 +1,16 @@
+GARNAME = id3lib
+GARVERSION = 3.8.3
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/id3lib/ http://belnet.dl.sourceforge.net/sourceforge/id3lib/
+
+DESCRIPTION = id3lib
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/id3lib/checksums b/libs/id3lib/checksums
new file mode 100644
index 0000000..dd16549
--- /dev/null
+++ b/libs/id3lib/checksums
@@ -0,0 +1 @@
+19f27ddd2dda4b2d26a559a4f0f402a7 download/id3lib-3.8.3.tar.gz
diff --git a/libs/imlib/Makefile b/libs/imlib/Makefile
new file mode 100644
index 0000000..9c3d73a
--- /dev/null
+++ b/libs/imlib/Makefile
@@ -0,0 +1,18 @@
+GARNAME = imlib
+GARVERSION = 1.9.15
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = libs/libungif
+
+MASTER_SITES = http://ftp.gnome.org/pub/gnome/sources/imlib/1.9/ http://ftp.linux.org.uk/mirrors/ftp.gnome.org/sources/imlib/1.9/
+
+DESCRIPTION = imlib
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/imlib/checksums b/libs/imlib/checksums
new file mode 100644
index 0000000..acaf269
--- /dev/null
+++ b/libs/imlib/checksums
@@ -0,0 +1 @@
+7db987e6c52e4daf70d7d0f471238eae download/imlib-1.9.15.tar.bz2
diff --git a/libs/kipi-plugins/Makefile b/libs/kipi-plugins/Makefile
new file mode 100644
index 0000000..f444cd9
--- /dev/null
+++ b/libs/kipi-plugins/Makefile
@@ -0,0 +1,18 @@
+GARNAME = kipi-plugins
+GARVERSION = 0.1.0-rc1
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS= misc/pkgconfig libs/libkipi libs/libkexif misc/imagemagick
+
+MASTER_SITES = http://belnet.dl.sourceforge.net/sourceforge/digikam/ http://switch.dl.sourceforge.net/sourceforge/digikam/
+
+DESCRIPTION = kipi-plugins
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/kipi-plugins/checksums b/libs/kipi-plugins/checksums
new file mode 100644
index 0000000..9f9e913
--- /dev/null
+++ b/libs/kipi-plugins/checksums
@@ -0,0 +1 @@
+e2c5abb08c4f9e82c4d475713b57301f download/kipi-plugins-0.1.0-rc1.tar.bz2
diff --git a/libs/lcms/Makefile b/libs/lcms/Makefile
new file mode 100644
index 0000000..a9cbc39
--- /dev/null
+++ b/libs/lcms/Makefile
@@ -0,0 +1,16 @@
+GARNAME = lcms
+GARVERSION = 1.16
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://www.littlecms.com/ http://switch.dl.sourceforge.net/sourceforge/lcms/ http://belnet.dl.sourceforge.net/sourceforge/lcms/
+
+DESCRIPTION = Little CMS
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/lcms/checksums b/libs/lcms/checksums
new file mode 100644
index 0000000..d55fb68
--- /dev/null
+++ b/libs/lcms/checksums
@@ -0,0 +1 @@
+b07b623f3e712373ff713fb32cf23651 download/lcms-1.16.tar.gz
diff --git a/libs/libart_lgpl/Makefile b/libs/libart_lgpl/Makefile
new file mode 100644
index 0000000..68cc31a
--- /dev/null
+++ b/libs/libart_lgpl/Makefile
@@ -0,0 +1,17 @@
+GARNAME = libart_lgpl
+GARVERSION = 2.3.19
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+PATCHFILES = fix-headers.diff
+
+MASTER_SITES = http://ftp.gnome.org/pub/gnome/sources/libart_lgpl/2.3/ http://ftp.linux.org.uk/mirrors/ftp.gnome.org/sources/libart_lgpl/2.3/
+
+DESCRIPTION = libart_lgpl
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libart_lgpl/checksums b/libs/libart_lgpl/checksums
new file mode 100644
index 0000000..798af33
--- /dev/null
+++ b/libs/libart_lgpl/checksums
@@ -0,0 +1,2 @@
+ac885805d1918026a18b560f4015bc66 download/libart_lgpl-2.3.19.tar.bz2
+0f5d28be5b27825fe1769e8ac381d97c download/fix-headers.diff
diff --git a/libs/libart_lgpl/files/fix-headers.diff b/libs/libart_lgpl/files/fix-headers.diff
new file mode 100644
index 0000000..139aa7e
--- /dev/null
+++ b/libs/libart_lgpl/files/fix-headers.diff
@@ -0,0 +1,24 @@
+--- work/libart_lgpl-2.3.19/art_misc.h
++++ work/libart_lgpl-2.3.19/art_misc.h
+@@ -34,10 +34,6 @@
+ #include <libart_lgpl/art_config.h>
+ #endif
+
+-void *art_alloc(size_t size);
+-void art_free(void *ptr);
+-void *art_realloc(void *ptr, size_t size);
+-
+ /* These aren't, strictly speaking, configuration macros, but they're
+ damn handy to have around, and may be worth playing with for
+ debugging. */
+@@ -78,6 +74,10 @@
+ extern "C" {
+ #endif
+
++extern void *art_alloc(size_t size);
++extern void art_free(void *ptr);
++extern void *art_realloc(void *ptr, size_t size);
++
+ void ART_GNUC_NORETURN
+ art_die (const char *fmt, ...) ART_GNUC_PRINTF (1, 2);
+
diff --git a/libs/libassuan/Makefile b/libs/libassuan/Makefile
new file mode 100644
index 0000000..74c0635
--- /dev/null
+++ b/libs/libassuan/Makefile
@@ -0,0 +1,16 @@
+GARNAME = libassuan
+GARVERSION = 0.9.3
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = ftp://ftp.gnupg.org/GnuPG/alpha/libassuan ftp://gd.tuwien.ac.at/privacy/gnupg/alpha/libassuan/
+
+DESCRIPTION = libassuan
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libassuan/checksums b/libs/libassuan/checksums
new file mode 100644
index 0000000..e909b11
--- /dev/null
+++ b/libs/libassuan/checksums
@@ -0,0 +1 @@
+60add4aebf1961436da3a470d6ac833c download/libassuan-0.9.3.tar.bz2
diff --git a/libs/libexif/Makefile b/libs/libexif/Makefile
new file mode 100644
index 0000000..c38f46d
--- /dev/null
+++ b/libs/libexif/Makefile
@@ -0,0 +1,16 @@
+GARNAME = libexif
+GARVERSION = 0.6.13
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/libexif/ http://belnet.dl.sourceforge.net/sourceforge/libexif/
+
+DESCRIPTION = libexif
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libexif/checksums b/libs/libexif/checksums
new file mode 100644
index 0000000..bc70419
--- /dev/null
+++ b/libs/libexif/checksums
@@ -0,0 +1 @@
+1b1e2b495c5aa20c08725f30545a110b download/libexif-0.6.13.tar.bz2
diff --git a/libs/libexif/files/fix-compile.diff b/libs/libexif/files/fix-compile.diff
new file mode 100644
index 0000000..2f1510e
--- /dev/null
+++ b/libs/libexif/files/fix-compile.diff
@@ -0,0 +1,11 @@
+--- work/libexif-0.6.13/libexif/exif-utils.c 2005-03-13 03:27:13.000000000 +0100
++++ tmp/libexif-0.6.13/libexif/exif-utils.c 2005-10-17 21:54:20.000000000 +0200
+@@ -83,7 +83,7 @@
+ }
+ }
+
+-static ExifSShort
++ExifSShort
+ exif_get_sshort (const unsigned char *buf, ExifByteOrder order)
+ {
+ if (!buf) return 0;
diff --git a/libs/libgcrypt/Makefile b/libs/libgcrypt/Makefile
new file mode 100644
index 0000000..91c7b25
--- /dev/null
+++ b/libs/libgcrypt/Makefile
@@ -0,0 +1,18 @@
+GARNAME = libgcrypt
+GARVERSION = 1.2.4
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+LIBDEPS = libs/libgpg-error
+
+MASTER_SITES = ftp://ftp.mirror.ac.uk/sites/ftp.gnupg.org/libgcrypt/ ftp://gd.tuwien.ac.at/privacy/gnupg/libgcrypt/
+
+DESCRIPTION = libgcrypt
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libgcrypt/checksums b/libs/libgcrypt/checksums
new file mode 100644
index 0000000..68a5a63
--- /dev/null
+++ b/libs/libgcrypt/checksums
@@ -0,0 +1 @@
+be20ee47778ff90703afd58c090f07b9 download/libgcrypt-1.2.4.tar.gz
diff --git a/libs/libgpg-error/Makefile b/libs/libgpg-error/Makefile
new file mode 100644
index 0000000..85d9c35
--- /dev/null
+++ b/libs/libgpg-error/Makefile
@@ -0,0 +1,16 @@
+GARNAME = libgpg-error
+GARVERSION = 1.5
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = ftp://ftp.gnupg.org/gcrypt/libgpg-error ftp://gd.tuwien.ac.at/privacy/gnupg/libgpg-error/
+
+DESCRIPTION = libgpg-error
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libgpg-error/checksums b/libs/libgpg-error/checksums
new file mode 100644
index 0000000..8f1520a
--- /dev/null
+++ b/libs/libgpg-error/checksums
@@ -0,0 +1 @@
+8599b96c911b1df1be24a6ff4ec3c364 download/libgpg-error-1.5.tar.bz2
diff --git a/libs/libgsf/Makefile b/libs/libgsf/Makefile
new file mode 100644
index 0000000..9182ea5
--- /dev/null
+++ b/libs/libgsf/Makefile
@@ -0,0 +1,18 @@
+GARNAME = libgsf
+GARVERSION = 1.14.3
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://ftp.acc.umu.se/pub/GNOME/sources/libgsf/1.14/ http://ftp.linux.org.uk/mirrors/ftp.gnome.org/sources/libgsf/1.14/
+
+LIBDEPS = libs/glib libs/libxml2
+
+DESCRIPTION = libgsf
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --without-gnome --disable-gtk-doc
+
+include ../category.mk
diff --git a/libs/libgsf/checksums b/libs/libgsf/checksums
new file mode 100644
index 0000000..315363c
--- /dev/null
+++ b/libs/libgsf/checksums
@@ -0,0 +1 @@
+c707a7ffc3e2bf802556bae86a453020 download/libgsf-1.14.3.tar.bz2
diff --git a/libs/libidn/Makefile b/libs/libidn/Makefile
new file mode 100644
index 0000000..d38a9b5
--- /dev/null
+++ b/libs/libidn/Makefile
@@ -0,0 +1,18 @@
+GARNAME = libidn
+GARVERSION = 0.6.9
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+LIBDEPS = misc/pkgconfig
+
+MASTER_SITES = ftp://alpha.gnu.org/pub/gnu/libidn/ http://josefsson.org/libidn/releases/
+
+DESCRIPTION = libidn
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libidn/checksums b/libs/libidn/checksums
new file mode 100644
index 0000000..fbe39f2
--- /dev/null
+++ b/libs/libidn/checksums
@@ -0,0 +1 @@
+616135837f5aaa9fac752e6b54221fb3 download/libidn-0.6.9.tar.gz
diff --git a/libs/libkexif/Makefile b/libs/libkexif/Makefile
new file mode 100644
index 0000000..1a1ebae
--- /dev/null
+++ b/libs/libkexif/Makefile
@@ -0,0 +1,18 @@
+GARNAME = libkexif
+GARVERSION = 0.2.1
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs libs/libexif
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/digikam/ http://belnet.dl.sourceforge.net/sourceforge/digikam
+
+DESCRIPTION = libkexif
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libkexif/checksums b/libs/libkexif/checksums
new file mode 100644
index 0000000..a57f560
--- /dev/null
+++ b/libs/libkexif/checksums
@@ -0,0 +1 @@
+28a7eb727d6a884343ce8cbe061cb58f download/libkexif-0.2.1.tar.bz2
diff --git a/libs/libkipi/Makefile b/libs/libkipi/Makefile
new file mode 100644
index 0000000..966c3b1
--- /dev/null
+++ b/libs/libkipi/Makefile
@@ -0,0 +1,18 @@
+GARNAME = libkipi
+GARVERSION = 0.1.1
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = kde/kdelibs
+
+MASTER_SITES = http://belnet.dl.sourceforge.net/sourceforge/digikam/ http://switch.dl.sourceforge.net/sourceforge/digikam/
+
+DESCRIPTION = libkipi
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libkipi/checksums b/libs/libkipi/checksums
new file mode 100644
index 0000000..1ce1d82
--- /dev/null
+++ b/libs/libkipi/checksums
@@ -0,0 +1 @@
+395d87ad36b1261f58bdeac87145734c download/libkipi-0.1.1.tar.bz2
diff --git a/libs/libksba/Makefile b/libs/libksba/Makefile
new file mode 100644
index 0000000..ed05003
--- /dev/null
+++ b/libs/libksba/Makefile
@@ -0,0 +1,18 @@
+GARNAME = libksba
+GARVERSION = 1.0.1
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = libs/libgpg-error
+
+MASTER_SITES = ftp://ftp.gnupg.org/GnuPG/libksba ftp://gd.tuwien.ac.at/privacy/gnupg/libksba/
+
+DESCRIPTION = libksba
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libksba/checksums b/libs/libksba/checksums
new file mode 100644
index 0000000..8328157
--- /dev/null
+++ b/libs/libksba/checksums
@@ -0,0 +1 @@
+43646aa414f28e4962f8db138efbf249 download/libksba-1.0.1.tar.bz2
diff --git a/libs/libmusicbrainz/Makefile b/libs/libmusicbrainz/Makefile
new file mode 100644
index 0000000..7c869f7
--- /dev/null
+++ b/libs/libmusicbrainz/Makefile
@@ -0,0 +1,16 @@
+GARNAME = libmusicbrainz
+GARVERSION = 2.1.4
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://ftp.musicbrainz.org/pub/musicbrainz/ ftp://ftp.au.musicbrainz.org/pub/musicbrainz/
+
+DESCRIPTION = MusicBrainz lookup library
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libmusicbrainz/checksums b/libs/libmusicbrainz/checksums
new file mode 100644
index 0000000..383e083
--- /dev/null
+++ b/libs/libmusicbrainz/checksums
@@ -0,0 +1 @@
+98bf1e102dda3b6ec3e72e1426445489 download/libmusicbrainz-2.1.4.tar.gz
diff --git a/libs/libungif/Makefile b/libs/libungif/Makefile
new file mode 100644
index 0000000..2c2941d
--- /dev/null
+++ b/libs/libungif/Makefile
@@ -0,0 +1,16 @@
+GARNAME = libungif
+GARVERSION = 4.1.3
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = ftp://ftp.tu-chemnitz.de/pub/FreeBSD/ports/distfiles/
+
+DESCRIPTION = libungif
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libungif/checksums b/libs/libungif/checksums
new file mode 100644
index 0000000..97fb41c
--- /dev/null
+++ b/libs/libungif/checksums
@@ -0,0 +1 @@
+8c198831cc0495596c78134b8849e9ad download/libungif-4.1.3.tar.bz2
diff --git a/libs/libwpd/Makefile b/libs/libwpd/Makefile
new file mode 100644
index 0000000..53dc350
--- /dev/null
+++ b/libs/libwpd/Makefile
@@ -0,0 +1,18 @@
+GARNAME = libwpd
+GARVERSION = 0.8.9
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+LIBDEPS = misc/pkgconfig libs/glib libs/libgsf
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/libwpd/ http://belnet.dl.sourceforge.net/sourceforge/libwpd/
+
+DESCRIPTION = WordPerfect import library
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libwpd/checksums b/libs/libwpd/checksums
new file mode 100644
index 0000000..a43f0ba
--- /dev/null
+++ b/libs/libwpd/checksums
@@ -0,0 +1 @@
+c48c74e90637e5e59140d0bec73a0145 download/libwpd-0.8.9.tar.gz
diff --git a/libs/libxml2/Makefile b/libs/libxml2/Makefile
new file mode 100644
index 0000000..f6492d5
--- /dev/null
+++ b/libs/libxml2/Makefile
@@ -0,0 +1,16 @@
+GARNAME = libxml2
+GARVERSION = 2.6.27
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://ftp.gnome.org/pub/gnome/sources/libxml2/2.6/ http://ftp.linux.org.uk/mirrors/ftp.gnome.org/sources/libxml2/2.6/ ftp://xmlsoft.org/
+
+DESCRIPTION = libxml2
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libxml2/checksums b/libs/libxml2/checksums
new file mode 100644
index 0000000..3b62544
--- /dev/null
+++ b/libs/libxml2/checksums
@@ -0,0 +1 @@
+3617f7dc07534025a4898f2b62fb46df download/libxml2-2.6.27.tar.bz2
diff --git a/libs/libxslt/Makefile b/libs/libxslt/Makefile
new file mode 100644
index 0000000..3d5f83b
--- /dev/null
+++ b/libs/libxslt/Makefile
@@ -0,0 +1,18 @@
+GARNAME = libxslt
+GARVERSION = 1.1.20
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://ftp.acc.umu.se/pub/gnome/sources/libxslt/1.1/ http://ftp.linux.org.uk/mirrors/ftp.gnome.org/sources/libxslt/1.1/ ftp://xmlsoft.org/
+
+LIBDEPS = libs/libxml2
+
+DESCRIPTION = libxslt
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/libxslt/checksums b/libs/libxslt/checksums
new file mode 100644
index 0000000..ace16bf
--- /dev/null
+++ b/libs/libxslt/checksums
@@ -0,0 +1 @@
+aa0b4817c38104d9a724ee12b81e286e download/libxslt-1.1.20.tar.bz2
diff --git a/libs/mdnsresponder/Makefile b/libs/mdnsresponder/Makefile
new file mode 100644
index 0000000..54819fa
--- /dev/null
+++ b/libs/mdnsresponder/Makefile
@@ -0,0 +1,37 @@
+GARNAME = mDNSResponder
+GARVERSION = 107
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+PATCHFILES = makefile.patch
+
+MASTER_SITES = http://et.put.poznan.pl/~jstachow/pub/
+
+DESCRIPTION = mdnsresponder
+
+#CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/mDNSPosix/Makefile
+BUILD_ARGS = os=linux
+INSTALL_ENV = INSTBASE=$(prefix)
+INSTALL_SCRIPTS = $(WORKSRC)/mDNSPosix/Makefile
+INSTALL_ARGS = os=linux
+
+include ../category.mk
+
+ifdef HAVE_64BIT_TARGET
+post-configure:
+ perl -pi -e '{s#/usr/lib/#/usr/lib64/#}' ./work/mDNSResponder-107/Clients/Makefile
+ perl -pi -e '{s/\$\(INSTBASE\)\/lib/\$\(INSTBASE\)\/lib64/}' ./work/mDNSResponder-107/mDNSPosix/Makefile
+endif
+
+post-install:
+ @echo
+ @echo "- = = = = = = = = == === ===== ATTENTION ==== === == = = = = = = = -"
+ @echo
+ @echo You should copy ${libdir}/libnss_mdns-0.2.so and
+ @echo ${libdir}/libnss_mdns.so.2 to /$(TARGET_LIBNAME) ,
+ @echo ${prefix}/etc/nsswitch.conf and
+ @echo ${prefix}/etc/nss_mdns.conf to /etc .
+ @echo
+ @echo This is necessary for ZeroConf support in KDE like zeroconf:/ ioslave, krfb,
+ @echo krdc and others. It also makes possible to use \'hostname.local\' names
+ @echo instead of IP numbers on LAN. Do not forget to start the mdnsd daemon.
diff --git a/libs/mdnsresponder/checksums b/libs/mdnsresponder/checksums
new file mode 100644
index 0000000..a7fa8c3
--- /dev/null
+++ b/libs/mdnsresponder/checksums
@@ -0,0 +1,2 @@
+3bf9551c2db77cd00c193f8b423c9241 download/mDNSResponder-107.tar.gz
+2bb3ab2ae1b200a9638ec63edaf084cf download/makefile.patch
diff --git a/libs/mdnsresponder/files/makefile.patch b/libs/mdnsresponder/files/makefile.patch
new file mode 100644
index 0000000..21e8954
--- /dev/null
+++ b/libs/mdnsresponder/files/makefile.patch
@@ -0,0 +1,89 @@
+--- work/mDNSResponder-107/mDNSPosix/Makefile 2004-12-15 22:58:41.000000000 +0100
++++ tmp/mDNSResponder-107/mDNSPosix/Makefile 2005-02-09 12:31:12.664835888 +0100
+@@ -303,7 +303,7 @@
+ NSSVERSION := 0.2
+ NSSLIBFILE := $(NSSLIBNAME)-$(NSSVERSION).so
+ NSSLINKNAME := $(NSSLIBNAME).so.2
+-NSSINSTPATH := /lib
++NSSINSTPATH := $(INSTBASE)/lib
+
+ # If not otherwise defined, we install into /usr/lib and /usr/include
+ # and our startup script is called mdns (e.g. /etc/init.d/mdns)
+@@ -319,11 +319,11 @@
+ endif
+
+ # If directory /usr/share/man exists, then we install man pages into that, else /usr/man
+-ifeq ($(wildcard /usr/share/man), /usr/share/man)
+-MANPATH := /usr/share/man
+-else
+-MANPATH := /usr/man
+-endif
++#ifeq ($(wildcard /usr/share/man), /usr/share/man)
++#MANPATH := $(INSTBASE)/usr/share/man
++#else
++MANPATH := $(INSTBASE)/man
++#endif
+
+ # If directories /etc/init.d/rc*.d exist, then we install into that (Suse)
+ ifeq ($(wildcard /etc/init.d/rc2.d/), /etc/init.d/rc2.d/)
+@@ -352,7 +352,7 @@
+
+ all: setup Daemon libdns_sd Client Responder ProxyResponder Identify NetMonitor dnsextd $(OPTIONALTARG)
+
+-install: setup InstalledDaemon InstalledLib InstalledStartup InstalledManPages $(OPTINSTALL)
++install: setup InstalledDaemon InstalledLib InstalledManPages $(OPTINSTALL)
+
+ # 'setup' sets up the build directory structure the way we want
+ setup:
+@@ -410,7 +410,7 @@
+ InstalledStartup: $(STARTUPSCRIPTDIR)/$(STARTUPSCRIPTNAME)
+ @echo $+ " installed"
+
+-InstalledNSS: $(NSSINSTPATH)/$(NSSLINKNAME) /etc/nss_mdns.conf $(MANPATH)/man5/nss_mdns.conf.5 $(MANPATH)/man8/libnss_mdns.8
++InstalledNSS: $(NSSINSTPATH)/$(NSSLINKNAME) $(INSTBASE)/etc/nss_mdns.conf $(MANPATH)/man5/nss_mdns.conf.5 $(MANPATH)/man8/libnss_mdns.8
+ @echo $+ " installed"
+
+ InstalledManPages: $(MANPATH)/man8/mdnsd.8
+@@ -448,31 +448,33 @@
+
+ $(NSSINSTPATH)/$(NSSLINKNAME): $(NSSINSTPATH)/$(NSSLIBFILE)
+ $(LN) $< $@
+- ldconfig
++ifdef LDCONFIG
++ $(LDCONFIG)
++endif
+
+ $(NSSINSTPATH)/$(NSSLIBFILE): $(BUILDDIR)/$(NSSLIBFILE)
+ $(CP) $< $@
+- chmod 444 $@
++ chmod 644 $@
+
+-/etc/nss_mdns.conf: nss_mdns.conf
++$(INSTBASE)/etc/nss_mdns.conf: nss_mdns.conf
+ $(CP) $< $@
+- chmod 444 $@
++ chmod 644 $@
+ # Check the nsswitch.conf file.
+ # If 'mdns' does not already appear on the "hosts:" line, then add it right before 'dns'
+- cp -f /etc/nsswitch.conf /etc/nsswitch.conf.pre-mdns
+- sed -e '/mdns/!s/^\(hosts:.*\)dns\(.*\)/\1mdns dns\2/' /etc/nsswitch.conf.pre-mdns > /etc/nsswitch.conf
++ cp -f /etc/nsswitch.conf $(INSTBASE)/etc/nsswitch.conf.pre-mdns
++ sed -e '/mdns/!s/^\(hosts:.*\)dns\(.*\)/\1mdns dns\2/' $(INSTBASE)/etc/nsswitch.conf.pre-mdns > $(INSTBASE)/etc/nsswitch.conf
+
+ $(MANPATH)/man5/%.5: %.5
+ cp $< $@
+- chmod 444 $@
++ chmod 644 $@
+
+ $(MANPATH)/man8/%.8: %.8
+ cp $< $@
+- chmod 444 $@
++ chmod 644 $@
+
+ $(MANPATH)/man8/mdnsd.8: $(SHAREDDIR)/mDNSResponder.8
+ cp $< $@
+- chmod 444 $@
++ chmod 644 $@
+
+ #############################################################################
+
diff --git a/libs/openslp/Makefile b/libs/openslp/Makefile
new file mode 100644
index 0000000..8b63763
--- /dev/null
+++ b/libs/openslp/Makefile
@@ -0,0 +1,16 @@
+GARNAME = openslp
+GARVERSION = 1.2.1
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/openslp/ http://belnet.dl.sourceforge.net/sourceforge/openslp/
+
+DESCRIPTION = OpenSLP
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/openslp/checksums b/libs/openslp/checksums
new file mode 100644
index 0000000..2745ece
--- /dev/null
+++ b/libs/openslp/checksums
@@ -0,0 +1 @@
+ff9999d1b44017281dd00ed2c4d32330 download/openslp-1.2.1.tar.gz
diff --git a/libs/pinentry/Makefile b/libs/pinentry/Makefile
new file mode 100644
index 0000000..9e32a8b
--- /dev/null
+++ b/libs/pinentry/Makefile
@@ -0,0 +1,18 @@
+GARNAME = pinentry
+GARVERSION = 0.7.2
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+LIBDEPS = libs/qt-x11-free
+
+MASTER_SITES = ftp://ftp.mirror.ac.uk/sites/ftp.gnupg.org/pinentry/ ftp://gd.tuwien.ac.at/privacy/gnupg/pinentry/
+
+DESCRIPTION = pinentry
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --disable-pinentry-curses --disable-fallback-curses --disable-pinentry-gtk
+
+include ../category.mk
diff --git a/libs/pinentry/checksums b/libs/pinentry/checksums
new file mode 100644
index 0000000..66eab45
--- /dev/null
+++ b/libs/pinentry/checksums
@@ -0,0 +1 @@
+55626ce13ed76d82ec5330d19bdf3ab4 download/pinentry-0.7.2.tar.gz
diff --git a/libs/pth/Makefile b/libs/pth/Makefile
new file mode 100644
index 0000000..e791147
--- /dev/null
+++ b/libs/pth/Makefile
@@ -0,0 +1,16 @@
+GARNAME = pth
+GARVERSION = 2.0.7
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = ftp://ftp.gnu.org/gnu/pth/
+
+DESCRIPTION = GNU Portable Threads
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/pth/checksums b/libs/pth/checksums
new file mode 100644
index 0000000..a2400b6
--- /dev/null
+++ b/libs/pth/checksums
@@ -0,0 +1 @@
+9cb4a25331a4c4db866a31cbe507c793 download/pth-2.0.7.tar.gz
diff --git a/libs/qt-x11-free/Makefile b/libs/qt-x11-free/Makefile
new file mode 100644
index 0000000..78f2658
--- /dev/null
+++ b/libs/qt-x11-free/Makefile
@@ -0,0 +1,68 @@
+GARNAME = qt-x11-free
+GARVERSION = 3.3.8
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+PATCHFILES = auto-license.diff \
+ 0001-dnd_optimization.patch \
+ 0002-dnd_active_window_fix.patch \
+ 0005-qpixmap_mitshm.patch \
+ 0007-qpixmap_constants.patch \
+ 0015-qiconview-finditem.patch \
+ 0016-qiconview-rebuildcontainer.patch \
+ 0017-qiconview-ctrl_rubber.patch \
+ 0020-designer-deletetabs.patch \
+ 0032-fix_rotated_randr.diff \
+ 0035-qvaluelist-streaming-operator.patch \
+ 0036-qprogressbar-optimization.patch \
+ 0038-dragobject-dont-prefer-unknown.patch \
+ 0044-qscrollview-windowactivate-fix.diff \
+ 0046-qiconview-no-useless-scrollbar.diff \
+ 0047-fix-kmenu-width.diff \
+ 0048-qclipboard_hack_80072.patch \
+ 0049-qiconview-rubber_on_move.diff \
+ 0056-khotkeys_input_84434.patch \
+ 0059-qpopup_has_mouse.patch \
+ 0060-qpopup_ignore_mousepos.patch \
+ 0061-qscrollview-propagate-horizontal-wheelevent.patch \
+ q_export-visibility.diff \
+ dont-use-includehints.diff \
+ 0073-xinerama-aware-qpopup.patch \
+ 0076-fix-qprocess.diff \
+ 0077-utf8-decoder-fixes.diff
+
+MASTER_SITES = ftp://ftp.trolltech.com/qt/source/
+
+DESCRIPTION = qt-x11-free
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+include ../../gar.conf.mk
+ifdef HAVE_QT_3_3_INSTALLED
+ all_commands clean fetch checksum extract patch configure build install:
+ @echo Variable HAVE_QT_3_3_INSTALLED is set, skipping \"$@\" for $(GARNAME)
+else
+ include ../category.mk
+endif
+
+CONFIGURE_ENV = QTDIR=$(shell pwd)/$(WORKSRC) LD_LIBRARY_PATH=$(shell pwd)/$(WORKSRC)/lib:$(LD_LIBRARY_PATH)
+BUILD_ENV = QTDIR=$(shell pwd)/$(WORKSRC) LD_LIBRARY_PATH=$(shell pwd)/$(WORKSRC)/lib:$(LD_LIBRARY_PATH)
+INSTALL_ENV = QTDIR=$(shell pwd)/$(WORKSRC)
+
+CONFIGURE_ARGS = -platform $(TARGET_PLATFORM) -prefix $(prefix) -libdir $(libdir) -system-zlib -qt-gif -system-libpng -system-libjpeg -plugin-imgfmt-mng -thread -no-exceptions -no-fast
+BUILD_ARGS = -j1 sub-tools
+
+pre-configure:
+ @if test -z "$(CXX)"; then : ; else \
+ sed "s#= g++#= $(CXX)#" $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf > $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf.tmp; \
+ mv $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf.tmp $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf; \
+ fi
+ @if test -z "$(CC)"; then : ; else \
+ sed "s#= gcc#= $(CC)#" $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf > $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf.tmp; \
+ mv $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf.tmp $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf; \
+ fi
+ sed "s#= -O2#= $(OWN_CFLAGS)#" $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf | \
+ sed "s#/usr/X11R6#$(TARGET_X11)#g" > $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf.tmp;
+ mv $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf.tmp $(WORKSRC)/mkspecs/$(TARGET_PLATFORM)/qmake.conf;
+ $(MAKECOOKIE)
diff --git a/libs/qt-x11-free/checksums b/libs/qt-x11-free/checksums
new file mode 100644
index 0000000..6eee4b6
--- /dev/null
+++ b/libs/qt-x11-free/checksums
@@ -0,0 +1,28 @@
+cf3c43a7dfde5bfb76f8001102fe6e85 download/qt-x11-free-3.3.8.tar.bz2
+7a6f20200e85ba93b8adb1ba7d3b4860 download/auto-license.diff
+b73ab8bd557f79c8da68528d6fad1501 download/0001-dnd_optimization.patch
+e7ee6bd48e490a35d93cf53e845140c0 download/0002-dnd_active_window_fix.patch
+c0b78865f873bac93cd6224564528dd0 download/0005-qpixmap_mitshm.patch
+d9a03907dfa5345f901d2d8d4f072083 download/0007-qpixmap_constants.patch
+1381924aba121993c775a3050df4773c download/0015-qiconview-finditem.patch
+197d7c8f73ee24c61799ca19821e8618 download/0016-qiconview-rebuildcontainer.patch
+a0bc5fd433e678f88da96a924a1da491 download/0017-qiconview-ctrl_rubber.patch
+94b3fa0e91027ef986d678690b936e4d download/0020-designer-deletetabs.patch
+a1cca4f8950f7df07f182a90ec993c06 download/0032-fix_rotated_randr.diff
+abbee9218c8c0330f97be3d3e086b4a4 download/0035-qvaluelist-streaming-operator.patch
+6b47a7e9ad036121fa142165322e5996 download/0036-qprogressbar-optimization.patch
+f97eb16d91a6b458d78004c450df401f download/0038-dragobject-dont-prefer-unknown.patch
+3739d1440cbfdd6f69ce2a3ca9a5e4bb download/0044-qscrollview-windowactivate-fix.diff
+964690cc58182397edcde6fa26c4d61f download/0046-qiconview-no-useless-scrollbar.diff
+508e8f796382023164af635dc3d8753e download/0047-fix-kmenu-width.diff
+745bb4c593672993127b940827d639d7 download/0048-qclipboard_hack_80072.patch
+12b382dcf824cc1d989275871bd81594 download/0049-qiconview-rubber_on_move.diff
+133662c8a27402aa96f07c1a806ba8d6 download/0056-khotkeys_input_84434.patch
+cb087ef9ec100045760453dc9e83b8c1 download/0059-qpopup_has_mouse.patch
+3f33c3ea0dd6263bd7cdb4ba202672fa download/0060-qpopup_ignore_mousepos.patch
+4588fe3d3513b9851d2f2a17d0d50a25 download/0061-qscrollview-propagate-horizontal-wheelevent.patch
+527ca17f9c9688ec89f6241b174eefc7 download/q_export-visibility.diff
+d308aa2ed7e46f01bcb70684404d04a9 download/dont-use-includehints.diff
+85fbe15ee105bc281c1e409dc7e5a213 download/0073-xinerama-aware-qpopup.patch
+257177f717e6b56beae9046e6fcf6f61 download/0076-fix-qprocess.diff
+25d9536cf5e069a88d944b29de1e5be4 download/0077-utf8-decoder-fixes.diff
diff --git a/libs/qt-x11-free/files/0001-dnd_optimization.patch b/libs/qt-x11-free/files/0001-dnd_optimization.patch
new file mode 100644
index 0000000..595949d
--- /dev/null
+++ b/libs/qt-x11-free/files/0001-dnd_optimization.patch
@@ -0,0 +1,187 @@
+qt-bugs@ issue : 16115
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+See http://lists.kde.org/?t=104388858900001&r=1&w=2
+
+
+--- work/qt-x11-free-3.3.8/src/kernel/qdnd_x11.cpp.sav 2003-02-05 16:09:45.000000000 +0100
++++ work/qt-x11-free-3.3.8/src/kernel/qdnd_x11.cpp 2003-02-07 16:14:49.000000000 +0100
+@@ -49,13 +49,15 @@
+ #include "qdragobject.h"
+ #include "qobjectlist.h"
+ #include "qcursor.h"
++#include "qbitmap.h"
++#include "qpainter.h"
+
+ #include "qt_x11_p.h"
+
+ // conflict resolution
+
+-// unused, may be used again later: const int XKeyPress = KeyPress;
+-// unused, may be used again later: const int XKeyRelease = KeyRelease;
++const int XKeyPress = KeyPress;
++const int XKeyRelease = KeyRelease;
+ #undef KeyPress
+ #undef KeyRelease
+
+@@ -249,20 +251,47 @@ class QShapedPixmapWidget : public QWidg
+ public:
+ QShapedPixmapWidget(int screen = -1) :
+ QWidget(QApplication::desktop()->screen( screen ),
+- 0, WStyle_Customize | WStyle_Tool | WStyle_NoBorder | WX11BypassWM )
++ 0, WStyle_Customize | WStyle_Tool | WStyle_NoBorder | WX11BypassWM ), oldpmser( 0 ), oldbmser( 0 )
+ {
+ }
+
+- void setPixmap(QPixmap pm)
++ void setPixmap(QPixmap pm, QPoint hot)
+ {
+- if ( pm.mask() ) {
++ int bmser = pm.mask() ? pm.mask()->serialNumber() : 0;
++ if( oldpmser == pm.serialNumber() && oldbmser == bmser
++ && oldhot == hot )
++ return;
++ oldpmser = pm.serialNumber();
++ oldbmser = bmser;
++ oldhot = hot;
++ bool hotspot_in = !(hot.x() < 0 || hot.y() < 0 || hot.x() >= pm.width() || hot.y() >= pm.height());
++// if the pixmap has hotspot in its area, make a "hole" in it at that position
++// this will allow XTranslateCoordinates() to find directly the window below the cursor instead
++// of finding this pixmap, and therefore there won't be needed any (slow) search for the window
++// using findRealWindow()
++ if( hotspot_in ) {
++ QBitmap mask = pm.mask() ? *pm.mask() : QBitmap( pm.width(), pm.height());
++ if( !pm.mask())
++ mask.fill( Qt::color1 );
++ QPainter p( &mask );
++ p.setPen( Qt::color0 );
++ p.drawPoint( hot.x(), hot.y());
++ p.end();
++ pm.setMask( mask );
++ setMask( mask );
++ } else if ( pm.mask() ) {
+ setMask( *pm.mask() );
+ } else {
+ clearMask();
+ }
+ resize(pm.width(),pm.height());
+ setErasePixmap(pm);
++ erase();
+ }
++private:
++ int oldpmser;
++ int oldbmser;
++ QPoint oldhot;
+ };
+
+ QShapedPixmapWidget * qt_xdnd_deco = 0;
+@@ -859,6 +888,45 @@ void QDragManager::timerEvent( QTimerEve
+ move( QCursor::pos() );
+ }
+
++static bool qt_xdnd_was_move = false;
++static bool qt_xdnd_found = false;
++// check whole incoming X queue for move events
++// checking whole queue is done by always returning False in the predicate
++// if there's another move event in the queue, and there's not a mouse button
++// or keyboard or ClientMessage event before it, the current move event
++// may be safely discarded
++// this helps avoiding being overloaded by being flooded from many events
++// from the XServer
++static
++Bool qt_xdnd_predicate( Display*, XEvent* ev, XPointer )
++{
++ if( qt_xdnd_found )
++ return False;
++ if( ev->type == MotionNotify )
++ {
++ qt_xdnd_was_move = true;
++ qt_xdnd_found = true;
++ }
++ if( ev->type == ButtonPress || ev->type == ButtonRelease
++ || ev->type == XKeyPress || ev->type == XKeyRelease
++ || ev->type == ClientMessage )
++ {
++ qt_xdnd_was_move = false;
++ qt_xdnd_found = true;
++ }
++ return False;
++}
++
++static
++bool qt_xdnd_another_movement()
++{
++ qt_xdnd_was_move = false;
++ qt_xdnd_found = false;
++ XEvent dummy;
++ XCheckIfEvent( qt_xdisplay(), &dummy, qt_xdnd_predicate, NULL );
++ return qt_xdnd_was_move;
++}
++
+ bool QDragManager::eventFilter( QObject * o, QEvent * e)
+ {
+ if ( beingCancelled ) {
+@@ -881,8 +949,10 @@ bool QDragManager::eventFilter( QObject
+
+ if ( e->type() == QEvent::MouseMove ) {
+ QMouseEvent* me = (QMouseEvent *)e;
+- updateMode(me->stateAfter());
+- move( me->globalPos() );
++ if( !qt_xdnd_another_movement()) {
++ updateMode(me->stateAfter());
++ move( me->globalPos() );
++ }
+ return TRUE;
+ } else if ( e->type() == QEvent::MouseButtonRelease ) {
+ qApp->removeEventFilter( this );
+@@ -1106,7 +1176,7 @@ void QDragManager::move( const QPoint &
+ delete qt_xdnd_deco;
+ qt_xdnd_deco = new QShapedPixmapWidget( screen );
+ }
+- updatePixmap();
++ updatePixmap( globalPos );
+
+ if ( qt_xdnd_source_sameanswer.contains( globalPos ) &&
+ qt_xdnd_source_sameanswer.isValid() ) {
+@@ -1679,7 +1749,7 @@ bool QDragManager::drag( QDragObject * o
+ // qt_xdnd_source_object persists until we get an xdnd_finish message
+ }
+
+-void QDragManager::updatePixmap()
++void QDragManager::updatePixmap( const QPoint& cursorPos )
+ {
+ if ( qt_xdnd_deco ) {
+ QPixmap pm;
+@@ -1694,9 +1764,8 @@ void QDragManager::updatePixmap()
+ defaultPm = new QPixmap(default_pm);
+ pm = *defaultPm;
+ }
+- qt_xdnd_deco->setPixmap(pm);
+- qt_xdnd_deco->move(QCursor::pos()-pm_hot);
+- qt_xdnd_deco->repaint(FALSE);
++ qt_xdnd_deco->setPixmap(pm, pm_hot);
++ qt_xdnd_deco->move(cursorPos-pm_hot);
+ //if ( willDrop ) {
+ qt_xdnd_deco->show();
+ //} else {
+@@ -1705,4 +1774,9 @@ void QDragManager::updatePixmap()
+ }
+ }
+
++void QDragManager::updatePixmap()
++{
++ updatePixmap( QCursor::pos());
++}
++
+ #endif // QT_NO_DRAGANDDROP
+--- work/qt-x11-free-3.3.8/src/kernel/qdragobject.h.sav 2002-11-01 19:25:07.000000000 +0100
++++ work/qt-x11-free-3.3.8/src/kernel/qdragobject.h 2001-01-01 01:01:00.000000000 +0100
+@@ -245,6 +245,7 @@ private:
+ void move( const QPoint & );
+ void drop();
+ void updatePixmap();
++ void updatePixmap( const QPoint& cursorPos );
+
+ private:
+ QDragObject * object;
diff --git a/libs/qt-x11-free/files/0002-dnd_active_window_fix.patch b/libs/qt-x11-free/files/0002-dnd_active_window_fix.patch
new file mode 100644
index 0000000..f4b4cb8
--- /dev/null
+++ b/libs/qt-x11-free/files/0002-dnd_active_window_fix.patch
@@ -0,0 +1,189 @@
+qt-bugs@ issue : 25122
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+ Hello,
+
+ for example: Open Konqueror window, showing some files. Start dragging one
+ desktop icon. If you press/release Ctrl, there'll be a '+' attached to the
+ icon, showing the DND operation. Now, while still doing DND, make the
+ Konqueror window active (Alt+Tab with KDE-3.1.2+, hover over its taskbar
+ entry, Ctrl+Fn to switch to a different virtual desktop, etc.). As soon as
+ the app performing DND is not the active application, and the mouse is not
+ moving, pressing/releasing Ctrl doesn't do anything, the state only updates
+ when the mouse is moved.
+
+ This is caused by the fact that Qt has only pointer grab when doing DND, but
+ doesn't have keyboard grab. I actually consider this a good thing, because
+ the only keys important for DND are modifiers, and they come together with
+ pointer events, and not having keyboard grab allows using keyboard shortcuts
+ like Alt+Tab while DND. However, when the mouse is not moved, and only a
+ modifier key is pressed/released, the app won't get any mouse event, and
+ won't also get the keyboard event.
+
+ The attached patch changes Qt to explicitly check the modifiers state using
+ XQueryPointer() if there's wasn't recently any mouse/keyboard event, which
+ ensures the state is updated even in the situation described above.
+
+--- work/qt-x11-free-3.3.8/src/kernel/qapplication_x11.cpp.sav 2003-06-21 12:31:35.000000000 +0200
++++ work/qt-x11-free-3.3.8/src/kernel/qapplication_x11.cpp 2003-06-21 12:35:44.000000000 +0200
+@@ -4053,7 +4053,7 @@ void QApplication::closePopup( QWidget *
+ // Keyboard event translation
+ //
+
+-static int translateButtonState( int s )
++int qt_x11_translateButtonState( int s )
+ {
+ int bst = 0;
+ if ( s & Button1Mask )
+@@ -4119,7 +4119,7 @@ bool QETWidget::translateMouseEvent( con
+ pos.ry() = lastMotion.y;
+ globalPos.rx() = lastMotion.x_root;
+ globalPos.ry() = lastMotion.y_root;
+- state = translateButtonState( lastMotion.state );
++ state = qt_x11_translateButtonState( lastMotion.state );
+ if ( qt_button_down && (state & (LeftButton |
+ MidButton |
+ RightButton ) ) == 0 )
+@@ -4143,7 +4143,7 @@ bool QETWidget::translateMouseEvent( con
+ pos.ry() = xevent->xcrossing.y;
+ globalPos.rx() = xevent->xcrossing.x_root;
+ globalPos.ry() = xevent->xcrossing.y_root;
+- state = translateButtonState( xevent->xcrossing.state );
++ state = qt_x11_translateButtonState( xevent->xcrossing.state );
+ if ( qt_button_down && (state & (LeftButton |
+ MidButton |
+ RightButton ) ) == 0 )
+@@ -4155,7 +4155,7 @@ bool QETWidget::translateMouseEvent( con
+ pos.ry() = event->xbutton.y;
+ globalPos.rx() = event->xbutton.x_root;
+ globalPos.ry() = event->xbutton.y_root;
+- state = translateButtonState( event->xbutton.state );
++ state = qt_x11_translateButtonState( event->xbutton.state );
+ switch ( event->xbutton.button ) {
+ case Button1: button = LeftButton; break;
+ case Button2: button = MidButton; break;
+@@ -4950,7 +4950,7 @@ bool QETWidget::translateKeyEventInterna
+ XKeyEvent xkeyevent = event->xkey;
+
+ // save the modifier state, we will use the keystate uint later by passing
+- // it to translateButtonState
++ // it to qt_x11_translateButtonState
+ uint keystate = event->xkey.state;
+ // remove the modifiers where mode_switch exists... HPUX machines seem
+ // to have alt *AND* mode_switch both in Mod1Mask, which causes
+@@ -5064,7 +5064,7 @@ bool QETWidget::translateKeyEventInterna
+ }
+ #endif // !QT_NO_XIM
+
+- state = translateButtonState( keystate );
++ state = qt_x11_translateButtonState( keystate );
+
+ static int directionKeyEvent = 0;
+ if ( qt_use_rtl_extensions && type == QEvent::KeyRelease ) {
+--- work/qt-x11-free-3.3.8/src/kernel/qdnd_x11.cpp.sav 2003-06-30 15:26:42.000000000 +0200
++++ work/qt-x11-free-3.3.8/src/kernel/qdnd_x11.cpp 2003-06-30 15:32:23.000000000 +0200
+@@ -114,6 +114,8 @@ Atom qt_xdnd_finished;
+ Atom qt_xdnd_type_list;
+ const int qt_xdnd_version = 4;
+
++extern int qt_x11_translateButtonState( int s );
++
+ // Actions
+ //
+ // The Xdnd spec allows for user-defined actions. This could be implemented
+@@ -198,6 +200,8 @@ static Atom qt_xdnd_source_current_time;
+ static int qt_xdnd_current_screen = -1;
+ // state of dragging... true if dragging, false if not
+ bool qt_xdnd_dragging = FALSE;
++// need to check state of keyboard modifiers
++static bool need_modifiers_check = FALSE;
+
+ // dict of payload data, sorted by type atom
+ static QIntDict<QByteArray> * qt_xdnd_target_data = 0;
+@@ -879,8 +883,20 @@ void qt_handle_xdnd_finished( QWidget *,
+
+ void QDragManager::timerEvent( QTimerEvent* e )
+ {
+- if ( e->timerId() == heartbeat && qt_xdnd_source_sameanswer.isNull() )
+- move( QCursor::pos() );
++ if ( e->timerId() == heartbeat ) {
++ if( need_modifiers_check ) {
++ Window root, child;
++ int root_x, root_y, win_x, win_y;
++ unsigned int mask;
++ XQueryPointer( qt_xdisplay(), qt_xrootwin( qt_xdnd_current_screen ),
++ &root, &child, &root_x, &root_y, &win_x, &win_y, &mask );
++ if( updateMode( (ButtonState)qt_x11_translateButtonState( mask )))
++ qt_xdnd_source_sameanswer = QRect(); // force move
++ }
++ need_modifiers_check = TRUE;
++ if( qt_xdnd_source_sameanswer.isNull() )
++ move( QCursor::pos() );
++ }
+ }
+
+ static bool qt_xdnd_was_move = false;
+@@ -948,6 +964,7 @@ bool QDragManager::eventFilter( QObject
+ updateMode(me->stateAfter());
+ move( me->globalPos() );
+ }
++ need_modifiers_check = FALSE;
+ return TRUE;
+ } else if ( e->type() == QEvent::MouseButtonRelease ) {
+ qApp->removeEventFilter( this );
+@@ -986,9 +1003,11 @@ bool QDragManager::eventFilter( QObject
+ beingCancelled = FALSE;
+ qApp->exit_loop();
+ } else {
+- updateMode(ke->stateAfter());
+- qt_xdnd_source_sameanswer = QRect(); // force move
+- move( QCursor::pos() );
++ if( updateMode(ke->stateAfter())) {
++ qt_xdnd_source_sameanswer = QRect(); // force move
++ move( QCursor::pos() );
++ }
++ need_modifiers_check = FALSE;
+ }
+ return TRUE; // Eat all key events
+ }
+@@ -1014,10 +1033,10 @@ bool QDragManager::eventFilter( QObject
+
+
+ static Qt::ButtonState oldstate;
+-void QDragManager::updateMode( ButtonState newstate )
++bool QDragManager::updateMode( ButtonState newstate )
+ {
+ if ( newstate == oldstate )
+- return;
++ return false;
+ const int both = ShiftButton|ControlButton;
+ if ( (newstate & both) == both ) {
+ global_requested_action = QDropEvent::Link;
+@@ -1041,6 +1060,7 @@ void QDragManager::updateMode( ButtonSta
+ }
+ }
+ oldstate = newstate;
++ return true;
+ }
+
+
+@@ -1707,6 +1727,7 @@ bool QDragManager::drag( QDragObject * o
+ qt_xdnd_source_sameanswer = QRect();
+ move(QCursor::pos());
+ heartbeat = startTimer(200);
++ need_modifiers_check = FALSE;
+
+ #ifndef QT_NO_CURSOR
+ qApp->setOverrideCursor( arrowCursor );
+--- work/qt-x11-free-3.3.8/src/kernel/qdragobject.h.sav 2003-05-19 22:34:43.000000000 +0200
++++ work/qt-x11-free-3.3.8/src/kernel/qdragobject.h 2001-01-01 01:01:00.000000000 +0100
+@@ -248,7 +248,7 @@ private:
+
+ private:
+ QDragObject * object;
+- void updateMode( ButtonState newstate );
++ bool updateMode( ButtonState newstate );
+ void updateCursor();
+
+ QWidget * dragSource;
diff --git a/libs/qt-x11-free/files/0005-qpixmap_mitshm.patch b/libs/qt-x11-free/files/0005-qpixmap_mitshm.patch
new file mode 100644
index 0000000..4131fdd
--- /dev/null
+++ b/libs/qt-x11-free/files/0005-qpixmap_mitshm.patch
@@ -0,0 +1,569 @@
+qt-bugs@ issue : 11790 (part of)
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+NOTE: Needs #define QT_MITSHM in the matching qplatformdefs.h file. This
+ patch does so only for linux-g++ and linux-g++-distcc platforms.
+
+MITSHM extension support for QPixmap<->QImage conversions.
+
+Hello,
+
+ the review and apply the attached patches that improve performance of
+QImage->QPixmap conversions. They should be applied in order
+'mitshm','more_local' and 'fast', but they're independent from each other
+(well, besides merging problems).
+
+ Mitshm patch adds MITSHM extension support for both
+QPixmap::convertFromImage() and QPixmap::convertToImage(). I've noticed there
+was some MITSHM support already, turned off by default, but it was used only
+for QPixmap::xForm() , and it used shared pixmaps (and I'd bet nobody uses
+it). My patch adds shared ximages support for faster pixmap<->image
+conversions. Since I don't understand the xForm() code much, and I didn't
+want to do anything with it, I added three #define's:
+ - QT_MITSHM generally enabling MITSHM support, which should be set in
+qplatformsdefs.h (or wherever you setup platform specific stuff), it can be
+enabled at least on Linux
+ - QT_MITSHM_CONVERSIONS - this is for my new code
+ - QT_MITSHM_XFORM - this is for the xForm() code
+ There's one more #define, QT_MITSHM_RMID_IGNORES_REFCOUNT. Glibc
+documentation of shmctl( ... IPC_RMID ) quite clearly says that the memory
+segment is freed only after the refcount increased by shmat() and decreased
+by shmdt() is 0. However, at least according to
+http://bugs.kde.org/show_bug.cgi?id=27517 , this doesn't happen on other
+platforms for some strange reason. Such platforms should have this #define if
+you ever consider supporting MITSHM on them.
+
+ The lower limit for using MITSHM for the image is about 8KiB
+(width*height*depth > 100*100*32 ). Also, BestOptim in such case doesn't keep
+the ximage, as the shared ximage is always freed before the function returns
+(I don't know if it's worth copying it).
+
+ The second patch ('more_local'), in short, does nothing. Besides improving
+performance by about 10% by making variables more "local", making few of them
+const, and also making some of them unsigned (this help gcc for some reason).
+
+ The last one, 'fast', moves some if's out of the loops, and handles some most
+common case specially (15bpp, 16bpp and 32bpp ximage depths). 32bpp case, if
+the endianess matches, is simply uses memcpy(), for the 15/16bpp depth,
+variables are replaced directly by matching values, statements are a bit
+reordered and merged when suitable, and again, in case endianess matches,
+pixels are written simply as Q_INT16. Most probably it would also help to
+process two pixels at once and write them as Q_INT32, but I didn't want to
+complicate the code too much (later >;) ).
+
+ The last snippet of 'fast' handles case when xi->bytes_per_line is not equal
+to width for 8bpp ximage. I'm not actually sure if that can ever happen, but
+since I've already written it *shrug*.
+
+ The 'more_local' and 'fast' patches change only convertFromImage(), as I
+don't think convertToImage() is that performance critical (but it's as
+unoptimized as convertFromImage() was).
+
+ Maybe some numbers. The difference is of course mainly visible with larger
+pixmaps. The two optimizations alone reduce the time to 50% for 32bpp, to 70%
+for 16bpp. The MITSHM support, when other patches are already applied too,
+for 32bpp images saves about 33%. Together, the total time is reduced to
+about 40% for 32bpp. Imlib probably still beats that, but at least this
+obsoletes KPixmapIO.
+
+
+--- work/qt-x11-free-3.3.8/src/kernel/qpixmap_x11.cpp
++++ work/qt-x11-free-3.3.8/src/kernel/qpixmap_x11.cpp
+@@ -37,7 +37,19 @@
+
+ // NOT REVISED
+
++#include "qplatformdefs.h"
++
++#if defined(Q_OS_WIN32) && defined(QT_MITSHM)
++#undef QT_MITSHM
++#endif
++
++#ifdef QT_MITSHM
++
++// Use the MIT Shared Memory extension for pixmap<->image conversions
++#define QT_MITSHM_CONVERSIONS
++
+ // Uncomment the next line to enable the MIT Shared Memory extension
++// for QPixmap::xForm()
+ //
+ // WARNING: This has some problems:
+ //
+@@ -45,14 +57,13 @@
+ // 2. Qt does not handle the ShmCompletion message, so you will
+ // get strange effects if you xForm() repeatedly.
+ //
+-// #define QT_MITSHM
++// #define QT_MITSHM_XFORM
+
+-#if defined(Q_OS_WIN32) && defined(QT_MITSHM)
+-#undef QT_MITSHM
++#else
++#undef QT_MITSHM_CONVERSIONS
++#undef QT_MITSHM_XFORM
+ #endif
+
+-#include "qplatformdefs.h"
+-
+ #include "qbitmap.h"
+ #include "qpaintdevicemetrics.h"
+ #include "qimage.h"
+@@ -91,7 +102,7 @@ inline static void qSafeXDestroyImage( X
+ MIT Shared Memory Extension support: makes xForm noticeably (~20%) faster.
+ *****************************************************************************/
+
+-#if defined(QT_MITSHM)
++#if defined(QT_MITSHM_XFORM)
+
+ static bool xshminit = FALSE;
+ static XShmSegmentInfo xshminfo;
+@@ -173,8 +184,100 @@ static bool qt_create_mitshm_buffer( con
+ // return FALSE;
+ // }
+
+-#endif // QT_MITSHM
++#endif // QT_MITSHM_XFORM
++
++#ifdef QT_MITSHM_CONVERSIONS
++
++static bool qt_mitshm_error = false;
++static int qt_mitshm_errorhandler( Display*, XErrorEvent* )
++{
++ qt_mitshm_error = true;
++ return 0;
++}
++
++static XImage* qt_XShmCreateImage( Display* dpy, Visual* visual, unsigned int depth,
++ int format, int /*offset*/, char* /*data*/, unsigned int width, unsigned int height,
++ int /*bitmap_pad*/, int /*bytes_per_line*/, XShmSegmentInfo* shminfo )
++{
++ if( width * height * depth < 100*100*32 )
++ return NULL;
++ static int shm_inited = -1;
++ if( shm_inited == -1 ) {
++ if( XShmQueryExtension( dpy ))
++ shm_inited = 1;
++ else
++ shm_inited = 0;
++ }
++ if( shm_inited == 0 )
++ return NULL;
++ XImage* xi = XShmCreateImage( dpy, visual, depth, format, NULL, shminfo, width,
++ height );
++ if( xi == NULL )
++ return NULL;
++ shminfo->shmid = shmget( IPC_PRIVATE, xi->bytes_per_line * xi->height,
++ IPC_CREAT|0600);
++ if( shminfo->shmid < 0 ) {
++ XDestroyImage( xi );
++ return NULL;
++ }
++ shminfo->readOnly = False;
++ shminfo->shmaddr = (char*)shmat( shminfo->shmid, 0, 0 );
++ if( shminfo->shmaddr == (char*)-1 ) {
++ XDestroyImage( xi );
++ shmctl( shminfo->shmid, IPC_RMID, 0 );
++ return NULL;
++ }
++ xi->data = shminfo->shmaddr;
++#ifndef QT_MITSHM_RMID_IGNORES_REFCOUNT
++ // mark as deleted to automatically free the memory in case
++ // of a crash (but this doesn't work e.g. on Solaris)
++ shmctl( shminfo->shmid, IPC_RMID, 0 );
++#endif
++ if( shm_inited == 1 ) { // first time
++ XErrorHandler old_h = XSetErrorHandler( qt_mitshm_errorhandler );
++ XShmAttach( dpy, shminfo );
++ shm_inited = 2;
++ XSync( dpy, False );
++ XSetErrorHandler( old_h );
++ if( qt_mitshm_error ) { // oops ... perhaps we are remote?
++ shm_inited = 0;
++ XDestroyImage( xi );
++ shmdt( shminfo->shmaddr );
++#ifdef QT_MITSHM_RMID_IGNORES_REFCOUNT
++ shmctl( shminfo->shmid, IPC_RMID, 0 );
++#endif
++ return NULL;
++ }
++ } else
++ XShmAttach( dpy, shminfo );
++ return xi;
++}
++
++static void qt_XShmDestroyImage( XImage* xi, XShmSegmentInfo* shminfo )
++{
++ XShmDetach( QPaintDevice::x11AppDisplay(), shminfo );
++ XDestroyImage( xi );
++ shmdt( shminfo->shmaddr );
++#ifdef QT_MITSHM_RMID_IGNORES_REFCOUNT
++ shmctl( shminfo->shmid, IPC_RMID, 0 );
++#endif
++}
++
++static XImage* qt_XShmGetImage( const QPixmap* pix, int format,
++ XShmSegmentInfo* shminfo )
++{
++ XImage* xi = qt_XShmCreateImage( pix->x11Display(), (Visual*)pix->x11Visual(),
++ pix->depth(), format, 0, 0, pix->width(), pix->height(), 32, 0, shminfo );
++ if( xi == NULL )
++ return NULL;
++ if( XShmGetImage( pix->x11Display(), pix->handle(), xi, 0, 0, AllPlanes ) == False ) {
++ qt_XShmDestroyImage( xi, shminfo );
++ return NULL;
++ }
++ return xi;
++}
+
++#endif // QT_MITSHM_CONVERSIONS
+
+ /*****************************************************************************
+ Internal functions
+@@ -627,9 +730,20 @@ QImage QPixmap::convertToImage() const
+ d = 32; // > 8 ==> 32
+
+ XImage *xi = (XImage *)data->ximage; // any cached ximage?
+- if ( !xi ) // fetch data from X server
++#ifdef QT_MITSHM_CONVERSIONS
++ bool mitshm_ximage = false;
++ XShmSegmentInfo shminfo;
++#endif
++ if ( !xi ) { // fetch data from X server
++#ifdef QT_MITSHM_CONVERSIONS
++ xi = qt_XShmGetImage( this, mono ? XYPixmap : ZPixmap, &shminfo );
++ if( xi ) {
++ mitshm_ximage = true;
++ } else
++#endif
+ xi = XGetImage( x11Display(), hd, 0, 0, w, h, AllPlanes,
+ mono ? XYPixmap : ZPixmap );
++ }
+ Q_CHECK_PTR( xi );
+ if (!xi)
+ return image; // null image
+@@ -640,15 +754,31 @@ QImage QPixmap::convertToImage() const
+ QImage::LittleEndian : QImage::BigEndian;
+ }
+ image.create( w, h, d, 0, bitOrder );
+- if ( image.isNull() ) // could not create image
++ if ( image.isNull() ) { // could not create image
++#ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_ximage )
++ qt_XShmDestroyImage( xi, &shminfo );
++ else
++#endif
++ qSafeXDestroyImage( xi );
+ return image;
++ }
+
+ const QPixmap* msk = mask();
+ const QPixmap *alf = data->alphapm;
+
+ QImage alpha;
+ if (alf) {
+- XImage *axi = XGetImage(x11Display(), alf->hd, 0, 0, w, h, AllPlanes, ZPixmap);
++ XImage* axi;
++#ifdef QT_MITSHM_CONVERSIONS
++ bool mitshm_aximage = false;
++ XShmSegmentInfo ashminfo;
++ axi = qt_XShmGetImage( alf, ZPixmap, &ashminfo );
++ if( axi ) {
++ mitshm_aximage = true;
++ } else
++#endif
++ axi = XGetImage(x11Display(), alf->hd, 0, 0, w, h, AllPlanes, ZPixmap);
+
+ if (axi) {
+ image.setAlphaBuffer( TRUE );
+@@ -662,6 +792,11 @@ QImage QPixmap::convertToImage() const
+ src += axi->bytes_per_line;
+ }
+
++#ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_aximage )
++ qt_XShmDestroyImage( axi, &ashminfo );
++ else
++#endif
+ qSafeXDestroyImage( axi );
+ }
+ } else if (msk) {
+@@ -804,6 +939,12 @@ QImage QPixmap::convertToImage() const
+ xi->bits_per_pixel );
+ #endif
+ image.reset();
++#ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_ximage )
++ qt_XShmDestroyImage( xi, &shminfo );
++ else
++#endif
++ qSafeXDestroyImage( xi );
+ return image;
+ }
+
+@@ -909,10 +1050,22 @@ QImage QPixmap::convertToImage() const
+ delete [] carr;
+ }
+ if ( data->optim != BestOptim ) { // throw away image data
++#ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_ximage )
++ qt_XShmDestroyImage( xi, &shminfo );
++ else
++#endif
+ qSafeXDestroyImage( xi );
+ ((QPixmap*)this)->data->ximage = 0;
+- } else // keep ximage data
++ } else { // keep ximage data
++#ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_ximage ) { // copy the XImage?
++ qt_XShmDestroyImage( xi, &shminfo );
++ xi = 0;
++ }
++#endif
+ ((QPixmap*)this)->data->ximage = xi;
++ }
+
+ return image;
+ }
+@@ -1085,6 +1238,11 @@ bool QPixmap::convertFromImage( const QI
+ bool trucol = (visual->c_class == TrueColor || visual->c_class == DirectColor);
+ int nbytes = image.numBytes();
+ uchar *newbits= 0;
++ int newbits_size = 0;
++#ifdef QT_MITSHM_CONVERSIONS
++ bool mitshm_ximage = false;
++ XShmSegmentInfo shminfo;
++#endif
+
+ if ( trucol ) { // truecolor display
+ QRgb pix[256]; // pixel translation table
+@@ -1113,10 +1271,18 @@ bool QPixmap::convertFromImage( const QI
+ }
+ }
+
++#ifdef QT_MITSHM_CONVERSIONS
++ xi = qt_XShmCreateImage( dpy, visual, dd, ZPixmap, 0, 0, w, h, 32, 0, &shminfo );
++ if( xi != NULL ) {
++ mitshm_ximage = true;
++ newbits = (uchar*)xi->data;
++ }
++ else
++#endif
+ xi = XCreateImage( dpy, visual, dd, ZPixmap, 0, 0, w, h, 32, 0 );
+- Q_CHECK_PTR( xi );
+ if (!xi)
+ return false;
++ if( newbits == NULL )
+ newbits = (uchar *)malloc( xi->bytes_per_line*h );
+ Q_CHECK_PTR( newbits );
+ if ( !newbits ) // no memory
+@@ -1323,6 +1489,7 @@ bool QPixmap::convertFromImage( const QI
+ }
+
+ newbits = (uchar *)malloc( nbytes ); // copy image into newbits
++ newbits_size = nbytes;
+ Q_CHECK_PTR( newbits );
+ if ( !newbits ) // no memory
+ return FALSE;
+@@ -1440,11 +1607,18 @@ bool QPixmap::convertFromImage( const QI
+ }
+
+ if ( !xi ) { // X image not created
++#ifdef QT_MITSHM_CONVERSIONS
++ xi = qt_XShmCreateImage( dpy, visual, dd, ZPixmap, 0, 0, w, h, 32, 0, &shminfo );
++ if( xi != NULL )
++ mitshm_ximage = true;
++ else
++#endif
+ xi = XCreateImage( dpy, visual, dd, ZPixmap, 0, 0, w, h, 32, 0 );
+ if ( xi->bits_per_pixel == 16 ) { // convert 8 bpp ==> 16 bpp
+ ushort *p2;
+ int p2inc = xi->bytes_per_line/sizeof(ushort);
+ ushort *newerbits = (ushort *)malloc( xi->bytes_per_line * h );
++ newbits_size = xi->bytes_per_line * h;
+ Q_CHECK_PTR( newerbits );
+ if ( !newerbits ) // no memory
+ return FALSE;
+@@ -1462,6 +1636,14 @@ bool QPixmap::convertFromImage( const QI
+ "(bpp=%d)", xi->bits_per_pixel );
+ #endif
+ }
++#ifdef QT_MITSHM_CONVERSIONS
++ if( newbits_size > 0 && mitshm_ximage ) { // need to copy to shared memory
++ memcpy( xi->data, newbits, newbits_size );
++ free( newbits );
++ newbits = (uchar*)xi->data;
++ }
++ else
++#endif
+ xi->data = (char *)newbits;
+ }
+
+@@ -1495,19 +1677,24 @@ bool QPixmap::convertFromImage( const QI
+
+ }
+
++#ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_ximage )
++ XShmPutImage( dpy, hd, qt_xget_readonly_gc( x11Screen(), FALSE ),
++ xi, 0, 0, 0, 0, w, h, False );
++ else
++#endif
+ XPutImage( dpy, hd, qt_xget_readonly_gc( x11Screen(), FALSE ),
+ xi, 0, 0, 0, 0, w, h );
+
+- if ( data->optim != BestOptim ) { // throw away image
+- qSafeXDestroyImage( xi );
+- data->ximage = 0;
+- } else { // keep ximage that we created
+- data->ximage = xi;
+- }
+ data->w = w;
+ data->h = h;
+ data->d = dd;
+
++ XImage* axi = NULL;
++#ifdef QT_MITSHM_CONVERSIONS
++ bool mitshm_aximage = false;
++ XShmSegmentInfo ashminfo;
++#endif
+ if ( image.hasAlphaBuffer() ) {
+ QBitmap m;
+ m = image.createAlphaMask( conversion_flags );
+@@ -1543,13 +1730,22 @@ bool QPixmap::convertFromImage( const QI
+ data->alphapm->rendhd =
+ (HANDLE) XftDrawCreateAlpha( x11Display(), data->alphapm->hd, 8 );
+
+- XImage *axi = XCreateImage(x11Display(), (Visual *) x11Visual(),
++#ifdef QT_MITSHM_CONVERSIONS
++ axi = qt_XShmCreateImage( x11Display(), (Visual*)x11Visual(),
++ 8, ZPixmap, 0, 0, w, h, 8, 0, &ashminfo );
++ if( axi != NULL )
++ mitshm_aximage = true;
++ else
++#endif
++ axi = XCreateImage(x11Display(), (Visual *) x11Visual(),
+ 8, ZPixmap, 0, 0, w, h, 8, 0);
+
+ if (axi) {
++ if( axi->data==NULL ) {
+ // the data is deleted by qSafeXDestroyImage
+ axi->data = (char *) malloc(h * axi->bytes_per_line);
+ Q_CHECK_PTR( axi->data );
++ }
+ char *aptr = axi->data;
+
+ if (image.depth() == 32) {
+@@ -1567,14 +1763,48 @@ bool QPixmap::convertFromImage( const QI
+ }
+
+ GC gc = XCreateGC(x11Display(), data->alphapm->hd, 0, 0);
++ #ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_aximage )
++ XShmPutImage( dpy, data->alphapm->hd, gc, axi, 0, 0, 0, 0, w, h, False );
++ else
++#endif
+ XPutImage(dpy, data->alphapm->hd, gc, axi, 0, 0, 0, 0, w, h);
+ XFreeGC(x11Display(), gc);
+- qSafeXDestroyImage(axi);
+ }
+ }
+ #endif // QT_NO_XFTFREETYPE
+ }
+
++#ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_ximage || mitshm_aximage )
++ XSync( x11Display(), False ); // wait until processed
++#endif
++
++ if ( data->optim != BestOptim ) { // throw away image
++#ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_ximage )
++ qt_XShmDestroyImage( xi, &shminfo );
++ else
++#endif
++ qSafeXDestroyImage( xi );
++ data->ximage = 0;
++ } else { // keep ximage that we created
++#ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_ximage ) { // copy the XImage?
++ qt_XShmDestroyImage( xi, &shminfo );
++ xi = 0;
++ }
++#endif
++ data->ximage = xi;
++ }
++ if( axi ) {
++#ifdef QT_MITSHM_CONVERSIONS
++ if( mitshm_aximage )
++ qt_XShmDestroyImage( axi, &ashminfo );
++ else
++#endif
++ qSafeXDestroyImage(axi);
++ }
+ return TRUE;
+ }
+
+@@ -1737,7 +1967,7 @@ QPixmap QPixmap::xForm( const QWMatrix &
+ return pm;
+ }
+
+-#if defined(QT_MITSHM)
++#if defined(QT_MITSHM_XFORM)
+ static bool try_once = TRUE;
+ if (try_once) {
+ try_once = FALSE;
+@@ -1770,7 +2000,7 @@ QPixmap QPixmap::xForm( const QWMatrix &
+ dbpl = ((w*bpp+31)/32)*4;
+ dbytes = dbpl*h;
+
+-#if defined(QT_MITSHM)
++#if defined(QT_MITSHM_XFORM)
+ if ( use_mitshm ) {
+ dptr = (uchar *)xshmimg->data;
+ uchar fillbyte = bpp == 8 ? white.pixel() : 0xff;
+@@ -1786,7 +2016,7 @@ QPixmap QPixmap::xForm( const QWMatrix &
+ memset( dptr, Qt::white.pixel( x11Screen() ), dbytes );
+ else
+ memset( dptr, 0xff, dbytes );
+-#if defined(QT_MITSHM)
++#if defined(QT_MITSHM_XFORM)
+ }
+ #endif
+
+@@ -1817,7 +2047,7 @@ QPixmap QPixmap::xForm( const QWMatrix &
+ } else {
+ xbpl = (w*bpp)/8;
+ p_inc = dbpl - xbpl;
+-#if defined(QT_MITSHM)
++#if defined(QT_MITSHM_XFORM)
+ if ( use_mitshm )
+ p_inc = xshmimg->bytes_per_line - xbpl;
+ #endif
+@@ -1854,7 +2084,7 @@ QPixmap QPixmap::xForm( const QWMatrix &
+ QPixmap pm( w, h );
+ pm.data->uninit = FALSE;
+ pm.x11SetScreen( x11Screen() );
+-#if defined(QT_MITSHM)
++#if defined(QT_MITSHM_XFORM)
+ if ( use_mitshm ) {
+ XCopyArea( dpy, xshmpm, pm.handle(), gc, 0, 0, w, h, 0, 0 );
+ } else {
+@@ -1863,7 +2093,7 @@ QPixmap QPixmap::xForm( const QWMatrix &
+ ZPixmap, 0, (char *)dptr, w, h, 32, 0 );
+ XPutImage( dpy, pm.handle(), gc, xi, 0, 0, 0, 0, w, h);
+ qSafeXDestroyImage( xi );
+-#if defined(QT_MITSHM)
++#if defined(QT_MITSHM_XFORM)
+ }
+ #endif
+
+--- work/qt-x11-free-3.3.8/mkspecs/linux-g++/qplatformdefs.h
++++ work/qt-x11-free-3.3.8/mkspecs/linux-g++/qplatformdefs.h
+@@ -102,5 +102,6 @@
+ #define QT_VSNPRINTF ::vsnprintf
+ #endif
+
++#define QT_MITSHM
+
+ #endif // QPLATFORMDEFS_H
diff --git a/libs/qt-x11-free/files/0007-qpixmap_constants.patch b/libs/qt-x11-free/files/0007-qpixmap_constants.patch
new file mode 100644
index 0000000..276aa16
--- /dev/null
+++ b/libs/qt-x11-free/files/0007-qpixmap_constants.patch
@@ -0,0 +1,384 @@
+qt-bugs@ issue : 11790 (part of)
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+See 0005-qpixmap_mitshm.patch for details.
+
+
+--- work/qt-x11-free-3.3.8/src/kernel/qpixmap_x11.cpp
++++ work/qt-x11-free-3.3.8/src/kernel/qpixmap_x11.cpp
+@@ -1123,9 +1123,6 @@ bool QPixmap::convertFromImage( const QI
+ return FALSE;
+ int bppc = xi->bits_per_pixel;
+
+- if ( bppc > 8 && xi->byte_order == LSBFirst )
+- bppc++;
+-
+ bool contig_bits = n_bits(red_mask) == rbits &&
+ n_bits(green_mask) == gbits &&
+ n_bits(blue_mask) == bbits;
+@@ -1174,32 +1171,70 @@ bool QPixmap::convertFromImage( const QI
+ }
+ init=TRUE;
+ }
++
++ enum { BPP8,
++ BPP16_8_3_M3, BPP16_7_2_M3, BPP16_MSB, BPP16_LSB,
++ BPP24_MSB, BPP24_LSB,
++ BPP32_16_8_0, BPP32_MSB, BPP32_LSB
++ } mode = BPP8;
+
+- for ( uint y=0; y<h; y++ ) {
+- uchar* src = image.scanLine( y );
+- uchar* dst = newbits + xi->bytes_per_line*y;
+- QRgb* p = (QRgb *)src;
++ if ( bppc > 8 && xi->byte_order == LSBFirst )
++ bppc++;
+
+-#define GET_RGB \
+- int r = qRed ( *p ); \
+- int g = qGreen( *p ); \
+- int b = qBlue ( *p++ ); \
+- r = red_shift > 0 \
+- ? r << red_shift : r >> -red_shift; \
+- g = green_shift > 0 \
+- ? g << green_shift : g >> -green_shift; \
+- b = blue_shift > 0 \
+- ? b << blue_shift : b >> -blue_shift;
++ int wordsize;
++ bool bigendian;
++ qSysInfo( &wordsize, &bigendian );
++ bool same_msb_lsb = ( xi->byte_order == MSBFirst ) == ( bigendian );
++
++ if( bppc == 8 ) // 8 bit
++ mode = BPP8;
++ else if( bppc == 16 || bppc == 17 ) { // 16 bit MSB/LSB
++ if( red_shift == 8 && green_shift == 3 && blue_shift == -3
++ && !d8 && same_msb_lsb )
++ mode = BPP16_8_3_M3;
++ else if( red_shift == 7 && green_shift == 2 && blue_shift == -3
++ && !d8 && same_msb_lsb )
++ mode = BPP16_7_2_M3;
++ else
++ mode = bppc == 17 ? BPP16_LSB : BPP16_MSB;
++ } else if( bppc == 24 || bppc == 25 ) { // 24 bit MSB/LSB
++ mode = bppc == 25 ? BPP24_LSB : BPP24_MSB;
++ } else if( bppc == 32 || bppc == 33 ) { // 32 bit MSB/LSB
++ if( red_shift == 16 && green_shift == 8 && blue_shift == 0
++ && !d8 && same_msb_lsb )
++ mode = BPP32_16_8_0;
++ else
++ mode = bppc == 33 ? BPP32_LSB : BPP32_MSB;
++ } else
++ qFatal("Logic error 3");
+
+ #define GET_PIXEL \
+ int pixel; \
+ if ( d8 ) pixel = pix[*src++]; \
+ else { \
+- GET_RGB \
+- pixel = (b & blue_mask)|(g & green_mask) | (r & red_mask) \
++ int r = qRed ( *p ); \
++ int g = qGreen( *p ); \
++ int b = qBlue ( *p++ ); \
++ r = red_shift > 0 \
++ ? r << red_shift : r >> -red_shift; \
++ g = green_shift > 0 \
++ ? g << green_shift : g >> -green_shift; \
++ b = blue_shift > 0 \
++ ? b << blue_shift : b >> -blue_shift; \
++ pixel = (r & red_mask)|(g & green_mask) | (b & blue_mask) \
+ | ~(blue_mask | green_mask | red_mask); \
+ }
+
++// optimized case - no d8 case, shift only once instead of twice, mask only once instead of twice,
++// use direct values instead of variables, and use only one statement
++// (*p >> 16), (*p >> 8 ) and (*p) are qRed(),qGreen() and qBlue() without masking
++// shifts have to be passed including the shift operator (e.g. '>>3'), because of the direction
++#define GET_PIXEL_OPT(red_shift,green_shift,blue_shift,red_mask,green_mask,blue_mask) \
++ int pixel = ((( *p >> 16 ) red_shift ) & red_mask ) \
++ | ((( *p >> 8 ) green_shift ) & green_mask ) \
++ | ((( *p ) blue_shift ) & blue_mask ); \
++ ++p;
++
+ #define GET_PIXEL_DITHER_TC \
+ int r = qRed ( *p ); \
+ int g = qGreen( *p ); \
+@@ -1220,91 +1255,177 @@ bool QPixmap::convertFromImage( const QI
+ ? g << green_shift : g >> -green_shift; \
+ b = blue_shift > 0 \
+ ? b << blue_shift : b >> -blue_shift; \
+- int pixel = (b & blue_mask)|(g & green_mask) | (r & red_mask);
++ int pixel = (r & red_mask)|(g & green_mask) | (b & blue_mask);
+
+- if ( dither_tc ) {
+- uint x;
+- switch ( bppc ) {
+- case 16: // 16 bit MSB
+- for ( x=0; x<w; x++ ) {
+- GET_PIXEL_DITHER_TC
+- *dst++ = (pixel >> 8);
+- *dst++ = pixel;
+- }
++// again, optimized case
++// can't be optimized that much :(
++#define GET_PIXEL_DITHER_TC_OPT(red_shift,green_shift,blue_shift,red_mask,green_mask,blue_mask, \
++ rbits,gbits,bbits) \
++ const int thres = D[x%16][y%16]; \
++ int r = qRed ( *p ); \
++ if ( r <= (255-(1<<(8-rbits))) && ((r<<rbits) & 255) \
++ > thres) \
++ r += (1<<(8-rbits)); \
++ int g = qGreen( *p ); \
++ if ( g <= (255-(1<<(8-gbits))) && ((g<<gbits) & 255) \
++ > thres) \
++ g += (1<<(8-gbits)); \
++ int b = qBlue ( *p++ ); \
++ if ( b <= (255-(1<<(8-bbits))) && ((b<<bbits) & 255) \
++ > thres) \
++ b += (1<<(8-bbits)); \
++ int pixel = (( r red_shift ) & red_mask ) \
++ | (( g green_shift ) & green_mask ) \
++ | (( b blue_shift ) & blue_mask );
++
++#define CYCLE(body) \
++ for ( uint y=0; y<h; y++ ) { \
++ uchar* src = image.scanLine( y ); \
++ uchar* dst = newbits + xi->bytes_per_line*y; \
++ QRgb* p = (QRgb *)src; \
++ body \
++ }
++
++ if ( dither_tc ) {
++ switch ( mode ) {
++ case BPP16_8_3_M3:
++ CYCLE(
++ Q_INT16* dst16 = (Q_INT16*)dst;
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL_DITHER_TC_OPT(<<8,<<3,>>3,0xf800,0x7e0,0x1f,5,6,5)
++ *dst16++ = pixel;
++ }
++ )
+ break;
+- case 17: // 16 bit LSB
+- for ( x=0; x<w; x++ ) {
+- GET_PIXEL_DITHER_TC
+- *dst++ = pixel;
+- *dst++ = pixel >> 8;
+- }
++ case BPP16_7_2_M3:
++ CYCLE(
++ Q_INT16* dst16 = (Q_INT16*)dst;
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL_DITHER_TC_OPT(<<7,<<2,>>3,0x7c00,0x3e0,0x1f,5,5,5)
++ *dst16++ = pixel;
++ }
++ )
++ break;
++ case BPP16_MSB: // 16 bit MSB
++ CYCLE(
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL_DITHER_TC
++ *dst++ = (pixel >> 8);
++ *dst++ = pixel;
++ }
++ )
++ break;
++ case BPP16_LSB: // 16 bit LSB
++ CYCLE(
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL_DITHER_TC
++ *dst++ = pixel;
++ *dst++ = pixel >> 8;
++ }
++ )
+ break;
+ default:
+ qFatal("Logic error");
+ }
+- } else {
+- uint x;
+- switch ( bppc ) {
+- case 8: // 8 bit
+- for ( x=0; x<w; x++ ) {
+- int pixel = pix[*src++];
+- *dst++ = pixel;
+- }
++ } else {
++ switch ( mode ) {
++ case BPP8: // 8 bit
++ CYCLE(
++ Q_UNUSED(p);
++ for ( uint x=0; x<w; x++ ) {
++ int pixel = pix[*src++];
++ *dst++ = pixel;
++ }
++ )
+ break;
+- case 16: // 16 bit MSB
+- for ( x=0; x<w; x++ ) {
+- GET_PIXEL
+- *dst++ = (pixel >> 8);
+- *dst++ = pixel;
+- }
++ case BPP16_8_3_M3:
++ CYCLE(
++ Q_INT16* dst16 = (Q_INT16*)dst;
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL_OPT(<<8,<<3,>>3,0xf800,0x7e0,0x1f)
++ *dst16++ = pixel;
++ }
++ )
+ break;
+- case 17: // 16 bit LSB
+- for ( x=0; x<w; x++ ) {
+- GET_PIXEL
+- *dst++ = pixel;
+- *dst++ = pixel >> 8;
+- }
++ case BPP16_7_2_M3:
++ CYCLE(
++ Q_INT16* dst16 = (Q_INT16*)dst;
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL_OPT(<<7,<<2,>>3,0x7c00,0x3e0,0x1f)
++ *dst16++ = pixel;
++ }
++ )
+ break;
+- case 24: // 24 bit MSB
+- for ( x=0; x<w; x++ ) {
+- GET_PIXEL
+- *dst++ = pixel >> 16;
+- *dst++ = pixel >> 8;
+- *dst++ = pixel;
+- }
++ case BPP16_MSB: // 16 bit MSB
++ CYCLE(
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL
++ *dst++ = (pixel >> 8);
++ *dst++ = pixel;
++ }
++ )
+ break;
+- case 25: // 24 bit LSB
+- for ( x=0; x<w; x++ ) {
+- GET_PIXEL
+- *dst++ = pixel;
+- *dst++ = pixel >> 8;
+- *dst++ = pixel >> 16;
+- }
++ case BPP16_LSB: // 16 bit LSB
++ CYCLE(
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL
++ *dst++ = pixel;
++ *dst++ = pixel >> 8;
++ }
++ )
+ break;
+- case 32: // 32 bit MSB
+- for ( x=0; x<w; x++ ) {
+- GET_PIXEL
+- *dst++ = pixel >> 24;
+- *dst++ = pixel >> 16;
+- *dst++ = pixel >> 8;
+- *dst++ = pixel;
+- }
++ case BPP24_MSB: // 24 bit MSB
++ CYCLE(
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL
++ *dst++ = pixel >> 16;
++ *dst++ = pixel >> 8;
++ *dst++ = pixel;
++ }
++ )
+ break;
+- case 33: // 32 bit LSB
+- for ( x=0; x<w; x++ ) {
+- GET_PIXEL
+- *dst++ = pixel;
+- *dst++ = pixel >> 8;
+- *dst++ = pixel >> 16;
+- *dst++ = pixel >> 24;
+- }
++ case BPP24_LSB: // 24 bit LSB
++ CYCLE(
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL
++ *dst++ = pixel;
++ *dst++ = pixel >> 8;
++ *dst++ = pixel >> 16;
++ }
++ )
+ break;
+- default:
+- qFatal("Logic error 2");
+- }
+- }
+- }
+- xi->data = (char *)newbits;
++ case BPP32_16_8_0:
++ CYCLE(
++ memcpy( dst, p, w * 4 );
++ )
++ break;
++ case BPP32_MSB: // 32 bit MSB
++ CYCLE(
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL
++ *dst++ = pixel >> 24;
++ *dst++ = pixel >> 16;
++ *dst++ = pixel >> 8;
++ *dst++ = pixel;
++ }
++ )
++ break;
++ case BPP32_LSB: // 32 bit LSB
++ CYCLE(
++ for ( uint x=0; x<w; x++ ) {
++ GET_PIXEL
++ *dst++ = pixel;
++ *dst++ = pixel >> 8;
++ *dst++ = pixel >> 16;
++ *dst++ = pixel >> 24;
++ }
++ )
++ break;
++ default:
++ qFatal("Logic error 2");
++ }
++ }
++ xi->data = (char *)newbits;
+ }
+
+ if ( d == 8 && !trucol ) { // 8 bit pixmap
+@@ -1554,15 +1675,24 @@ bool QPixmap::convertFromImage( const QI
+
+ if (image.depth() == 32) {
+ const int *iptr = (const int *) image.bits();
+- int max = w * h;
+- while (max--)
+- *aptr++ = *iptr++ >> 24; // squirt
++ if( axi->bytes_per_line == (int)w ) {
++ int max = w * h;
++ while (max--)
++ *aptr++ = *iptr++ >> 24; // squirt
++ } else {
++ for (uint i = 0; i < h; ++i ) {
++ for (uint j = 0; j < w; ++j )
++ *aptr++ = *iptr++ >> 24; // squirt
++ aptr += ( axi->bytes_per_line - w );
++ }
++ }
+ } else if (image.depth() == 8) {
+ const QRgb * const rgb = image.colorTable();
+ for (uint y = 0; y < h; ++y) {
+ const uchar *iptr = image.scanLine(y);
+ for (uint x = 0; x < w; ++x)
+ *aptr++ = qAlpha(rgb[*iptr++]);
++ aptr += ( axi->bytes_per_line - w );
+ }
+ }
+
diff --git a/libs/qt-x11-free/files/0015-qiconview-finditem.patch b/libs/qt-x11-free/files/0015-qiconview-finditem.patch
new file mode 100644
index 0000000..a7f56dc
--- /dev/null
+++ b/libs/qt-x11-free/files/0015-qiconview-finditem.patch
@@ -0,0 +1,43 @@
+qt-bugs@ issue : 18886
+applied: no
+author: Pascal Létourneau <pletourn@globetrotter.net>
+
+QIconView::findItem() should always search all ItemContainer to find the best
+match.
+
+Example:
+
+----- -----
+| | | | ItemContainer
+--------------------------------------
+| | | | boundary
+| | ----- | |
+| | | | | |
+----- ----- -----
+item1 item2 item3
+
+Right now, the focus goes from item1 to item3 when you press Key_Right.
+
+[ Since the mail was sent, I added the diff 'contains -> intersects' ]
+
+Index: src/iconview/qiconview.cpp
+===================================================================
+RCS file: /home/kde/qt-copy/src/iconview/qiconview.cpp,v
+retrieving revision 1.47
+diff -u -3 -p -r1.47 qiconview.cpp
+--- work/qt-x11-free-3.3.8/src/iconview/qiconview.cpp 16 May 2003 13:02:38 -0000 1.47
++++ work/qt-x11-free-3.3.8/src/iconview/qiconview.cpp 30 May 2003 20:32:34 -0000
+@@ -5200,11 +5201,11 @@ QIconViewItem* QIconView::findItem( Dire
+ d->findContainers( dir, relativeTo, searchRect);
+
+ cList->first();
+- while ( cList->current() && !centerMatch ) {
++ while ( cList->current() ) {
+ QPtrList<QIconViewItem> &list = (cList->current())->items;
+ for ( item = list.first(); item; item = list.next() ) {
+ if ( neighbourItem( dir, relativeTo, item ) &&
+- searchRect.contains( item->rect().center() ) &&
++ searchRect.intersects( item->rect() ) &&
+ item != currentItem() ) {
+ int ml = (relativeTo - item->rect().center()).manhattanLength();
+ if ( centerMatch ) {
diff --git a/libs/qt-x11-free/files/0016-qiconview-rebuildcontainer.patch b/libs/qt-x11-free/files/0016-qiconview-rebuildcontainer.patch
new file mode 100644
index 0000000..ee7b6b5
--- /dev/null
+++ b/libs/qt-x11-free/files/0016-qiconview-rebuildcontainer.patch
@@ -0,0 +1,34 @@
+qt-bugs@ issue : 18598
+applied: no
+author: Pascal Létourneau <pletourn@globetrotter.net>
+
+Sometimes QIconView doesn't paint the top of an icon.
+It's because this part of QIconView::rebuildContainers() is never reached.
+
+...
+if ( d->arrangement == LeftToRight ) {
+ if ( item->y() < c->rect.y() && c->p ) {
+ c = c->p; <<<<<<<<<<<<<<<<<
+ continue;
+...
+
+
+Index: src/iconview/qiconview.cpp
+===================================================================
+RCS file: /home/kde/qt-copy/src/iconview/qiconview.cpp,v
+retrieving revision 1.47
+diff -u -3 -p -r1.47 qiconview.cpp
+--- work/qt-x11-free-3.3.8/src/iconview/qiconview.cpp 16 May 2003 13:02:38 -0000 1.47
++++ work/qt-x11-free-3.3.8/src/iconview/qiconview.cpp 30 May 2003 20:32:34 -0000
+@@ -6122,7 +6123,9 @@ void QIconView::rebuildContainers()
+ item->d->container2 = 0;
+ c->items.append( item );
+ item = item->next;
+- } else if ( c->rect.intersects( item->rect() ) ) {
++ } else if ( c->rect.intersects( item->rect() ) && (
++ ( d->arrangement == LeftToRight && item->y() >= c->rect.y() ) ||
++ ( d->arrangement == TopToBottom && item->x() >= c->rect.x() ) ) ) {
+ item->d->container1 = c;
+ c->items.append( item );
+ c = c->n;
+
diff --git a/libs/qt-x11-free/files/0017-qiconview-ctrl_rubber.patch b/libs/qt-x11-free/files/0017-qiconview-ctrl_rubber.patch
new file mode 100644
index 0000000..ae65097
--- /dev/null
+++ b/libs/qt-x11-free/files/0017-qiconview-ctrl_rubber.patch
@@ -0,0 +1,90 @@
+qt-bugs@ issue : 23919
+applied: no
+author: Pascal Létourneau <pletourn@globetrotter.net>
+
+This patch modifies the behavior of the rubber selection.
+Now Shift-rubber behaves like the old Ctrl-rubber.
+And now Ctrl-rubber toggles the state of the icons.
+This is more consistant with other iconview (Nautilus, Win Explorer, ...)
+and with Qt itself (Ctrl-click toggle the state of an icon).
+
+Index: src/iconview/qiconview.cpp
+===================================================================
+RCS file: /home/kde/qt-copy/src/iconview/qiconview.cpp,v
+retrieving revision 1.48
+diff -u -3 -p -r1.48 qiconview.cpp
+--- work/qt-x11-free-3.3.8/src/iconview/qiconview.cpp 23 Jun 2003 11:48:21 -0000 1.48
++++ work/qt-x11-free-3.3.8/src/iconview/qiconview.cpp 1 Jul 2003 16:36:17 -0000
+@@ -257,7 +257,8 @@ public:
+ uint dragging :1;
+ uint drawActiveSelection :1;
+ uint inMenuMode :1;
+-
++ uint controlPressed :1;
++
+ QIconViewToolTip *toolTip;
+ QPixmapCache maskCache;
+ QPtrDict<QIconViewItem> selectedItems;
+@@ -2726,6 +2727,7 @@ QIconView::QIconView( QWidget *parent, c
+ d->lastItem = 0;
+ d->count = 0;
+ d->mousePressed = FALSE;
++ d->controlPressed = FALSE;
+ d->selectionMode = Single;
+ d->currentItem = 0;
+ d->highlightedItem = 0;
+@@ -3288,9 +3290,18 @@ void QIconView::doAutoScroll()
+ alreadyIntersected = TRUE;
+ QIconViewItem *item = c->items.first();
+ for ( ; item; item = c->items.next() ) {
+- if ( d->selectedItems.find( item ) )
+- continue;
+- if ( !item->intersects( nr ) ) {
++ if ( d->selectedItems.find( item ) ) {
++ if ( item->intersects( nr ) && item->isSelected() && d->controlPressed ) {
++ item->setSelected( FALSE );
++ changed = TRUE;
++ rr = rr.unite( item->rect() );
++ } else if ( !item->intersects( nr ) && !item->isSelected() && d->controlPressed ) {
++ item->setSelected( TRUE, TRUE );
++ changed = TRUE;
++ rr = rr.unite( item->rect() );
++ } else
++ continue;
++ } else if ( !item->intersects( nr ) ) {
+ if ( item->isSelected() ) {
+ item->setSelected( FALSE );
+ changed = TRUE;
+@@ -4480,7 +4491,7 @@ void QIconView::contentsMousePressEventE
+ }
+ }
+ } else if ( ( d->selectionMode != Single || e->button() == RightButton )
+- && !( e->state() & ControlButton ) )
++ && !( e->state() & ControlButton ) && !( e->state() & ShiftButton ) )
+ selectAll( FALSE );
+
+ setCurrentItem( item );
+@@ -4491,12 +4502,11 @@ void QIconView::contentsMousePressEventE
+ d->tmpCurrentItem = d->currentItem;
+ d->currentItem = 0;
+ repaintItem( d->tmpCurrentItem );
+- if ( d->rubber )
+- delete d->rubber;
+- d->rubber = 0;
++ delete d->rubber;
+ d->rubber = new QRect( e->x(), e->y(), 0, 0 );
+ d->selectedItems.clear();
+- if ( ( e->state() & ControlButton ) == ControlButton ) {
++ if ( ( e->state() & ControlButton ) == ControlButton ||
++ ( e->state() & ShiftButton ) == ShiftButton ) {
+ for ( QIconViewItem *i = firstItem(); i; i = i->nextItem() )
+ if ( i->isSelected() )
+ d->selectedItems.insert( i, i );
+@@ -4504,6 +4514,7 @@ void QIconView::contentsMousePressEventE
+ }
+
+ d->mousePressed = TRUE;
++ d->controlPressed = ( ( e->state() & ControlButton ) == ControlButton );
+ }
+
+ emit_signals:
diff --git a/libs/qt-x11-free/files/0020-designer-deletetabs.patch b/libs/qt-x11-free/files/0020-designer-deletetabs.patch
new file mode 100644
index 0000000..96e9299
--- /dev/null
+++ b/libs/qt-x11-free/files/0020-designer-deletetabs.patch
@@ -0,0 +1,76 @@
+qt-bugs@ issue : N26525
+applied: no
+author: Thomas Zander <zander@kde.org>
+
+it is possible to remove all tabs from a QTabWidget in the 'object explorer'.
+
+After inserting a new tabWidget I normally get 2 tabs. Using
+the popup menu on the widget itself a delete is not present when there
+is just one tab left. In other words; I can't delete all tabs.
+
+The popup menu presented on the 'object explorer' toolbar does not do any
+checking on the amount of tabs present; it is possible to delete all tabs
+from there.
+
+To reproduce;
+ - Open new document.
+ - Insert QTabWidget.
+ - Press with RMB on the just inserted tabWidget and press 'delete page'
+ - Open the same popup again; notice the missing 'delete page' entry.
+
+ - go to the 'object explorer' toolbar and make sure it is on the
+ 'objects' tab.
+ - Press with the RMB on the QTabWidget name.
+ - Press 'delete page' and the last page is deleted.
+
+Solution; on every show of the popup check if delete is possible and enable
+correctly.
+
+Index: tools/designer/designer/hierarchyview.cpp
+===================================================================
+RCS file: /home/kde/qt-copy/tools/tools/designer/designer/hierarchyview.cpp,v
+retrieving revision 1.20
+diff -u -3 -p -b -r1.20 hierarchyview.cpp
+--- work/qt-x11-free-3.3.8/tools/designer/designer/hierarchyview.cpp 23 Jun 2003 11:49:05 -0000 1.20
++++ work/qt-x11-free-3.3.8/tools/designer/designer/hierarchyview.cpp 12 Jul 2003 17:09:29 -0000
+@@ -599,6 +599,7 @@ void HierarchyList::showRMBMenu( QListVi
+ formWindow->mainWindow()->setupTabWidgetHierarchyMenu(
+ this, SLOT( addTabPage() ),
+ SLOT( removeTabPage() ) );
++ tabWidgetMenu->setItemEnabled(MainWindow::POPUP_REMOVE_PAGE_ID, ((QDesignerTabWidget*)w )->count() > 1);
+ tabWidgetMenu->popup( p );
+ }
+ }
+Index: tools/designer/designer/mainwindow.cpp
+===================================================================
+RCS file: /home/kde/qt-copy/tools/tools/designer/designer/mainwindow.cpp,v
+retrieving revision 1.33
+diff -u -3 -p -b -r1.33 mainwindow.cpp
+--- work/qt-x11-free-3.3.8/tools/designer/designer/mainwindow.cpp 23 Jun 2003 11:49:06 -0000 1.33
++++ work/qt-x11-free-3.3.8/tools/designer/designer/mainwindow.cpp 12 Jul 2003 17:09:31 -0000
+@@ -2419,8 +2419,8 @@ QPopupMenu *MainWindow::setupTabWidgetHi
+ {
+ QPopupMenu *menu = new QPopupMenu( parent );
+
+- menu->insertItem( tr( "Add Page" ), parent, addSlot );
+- menu->insertItem( tr( "Delete Page" ), parent, removeSlot );
++ menu->insertItem( tr( "Add Page" ), parent, addSlot, 0, POPUP_REMOVE_PAGE_ID+1 );
++ menu->insertItem( tr( "Delete Page" ), parent, removeSlot, 0, POPUP_REMOVE_PAGE_ID );
+ menu->insertSeparator();
+ actionEditCut->addTo( menu );
+ actionEditCopy->addTo( menu );
+Index: tools/designer/designer/mainwindow.h
+===================================================================
+RCS file: /home/kde/qt-copy/tools/tools/designer/designer/mainwindow.h,v
+retrieving revision 1.15
+diff -u -3 -p -b -r1.15 mainwindow.h
+--- work/qt-x11-free-3.3.8/tools/designer/designer/mainwindow.h 16 May 2003 13:03:27 -0000 1.15
++++ work/qt-x11-free-3.3.8/tools/designer/designer/mainwindow.h 12 Jul 2003 17:09:31 -0000
+@@ -107,6 +107,7 @@ public:
+
+ QPopupMenu *setupNormalHierarchyMenu( QWidget *parent );
+ QPopupMenu *setupTabWidgetHierarchyMenu( QWidget *parent, const char *addSlot, const char *removeSlot );
++ static const int POPUP_REMOVE_PAGE_ID = 1;
+
+ FormWindow *openFormWindow( const QString &fn, bool validFileName = TRUE, FormFile *ff = 0 );
+ bool isCustomWidgetUsed( MetaDataBase::CustomWidget *w );
diff --git a/libs/qt-x11-free/files/0032-fix_rotated_randr.diff b/libs/qt-x11-free/files/0032-fix_rotated_randr.diff
new file mode 100644
index 0000000..aaff71e
--- /dev/null
+++ b/libs/qt-x11-free/files/0032-fix_rotated_randr.diff
@@ -0,0 +1,21 @@
+qt-bugs@ issue : N34454
+bugs.kde.org number : 67101, 101516
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+This patch replaces the old #0032 patch.
+The real problem is https://bugs.freedesktop.org/show_bug.cgi?id=2965 ,
+so this patch is actually just a workaround.
+
+--- tmp/qt-x11-free-3.3.8/src/kernel/qapplication_x11.cpp.sav 2005-04-08 16:52:58.000000000 +0200
++++ work/qt-x11-free-3.3.8/src/kernel/qapplication_x11.cpp 2005-04-11 13:09:46.000000000 +0200
+@@ -3399,7 +3399,8 @@ int QApplication::x11ProcessEvent( XEven
+ #endif
+
+ #ifndef QT_NO_XRANDR
+- if (event->type == xrandr_eventbase + RRScreenChangeNotify) {
++ if (event->type == xrandr_eventbase + RRScreenChangeNotify
++ || ( event->type == ConfigureNotify && event->xconfigure.window == QPaintDevice::x11AppRootWindow())) {
+ // update Xlib internals with the latest screen configuration
+ XRRUpdateConfiguration(event);
+
diff --git a/libs/qt-x11-free/files/0035-qvaluelist-streaming-operator.patch b/libs/qt-x11-free/files/0035-qvaluelist-streaming-operator.patch
new file mode 100644
index 0000000..f968289
--- /dev/null
+++ b/libs/qt-x11-free/files/0035-qvaluelist-streaming-operator.patch
@@ -0,0 +1,27 @@
+qt-bugs@ issue: 40192
+applied: no
+author: Frerich Raabe <raabe@kde.org>
+
+This patch should fix QValueList's streaming operator>> for cases where
+the stream operates on a byte array smaller than a Q_UINT32 (for instance,
+QByteArray objects which are 0-3 bytes in size). It used to read one bogus
+item because the loop would get executed once even if reading the 'c'
+variable failed.
+
+--- work/qt-x11-free-3.3.8/src/tools/qvaluelist.h.orig 2004-01-27 21:10:52.000000000 +0000
++++ work/qt-x11-free-3.3.8/src/tools/qvaluelist.h 2004-01-27 21:11:35.000000000 +0000
+@@ -636,13 +636,11 @@
+ l.clear();
+ Q_UINT32 c;
+ s >> c;
+- for( Q_UINT32 i = 0; i < c; ++i )
++ for( Q_UINT32 i = 0; i < c && !s.atEnd(); ++i )
+ {
+ T t;
+ s >> t;
+ l.append( t );
+- if ( s.atEnd() )
+- break;
+ }
+ return s;
+ }
diff --git a/libs/qt-x11-free/files/0036-qprogressbar-optimization.patch b/libs/qt-x11-free/files/0036-qprogressbar-optimization.patch
new file mode 100644
index 0000000..28172b4
--- /dev/null
+++ b/libs/qt-x11-free/files/0036-qprogressbar-optimization.patch
@@ -0,0 +1,126 @@
+qt-bugs@ issue: 40356
+applied: no
+author: Frerich Raabe <raabe@kde.org>
+
+This optimization makes QProgressBar::setProgress() only repaint itself if
+stepping to the new progress would cause a graphical change. This means
+that for a width W and a total number of steps S, it will repaint itself
+'W' times (every 'S/W' steps) instead of 'S' times (every step) as it is right
+now.
+
+--- work/qt-x11-free-3.3.8/src/widgets/qprogressbar.h.orig 2004-01-30 11:10:24.000000000 +0000
++++ work/qt-x11-free-3.3.8/src/widgets/qprogressbar.h 2004-01-29 22:24:06.000000000 +0000
+@@ -61,6 +61,7 @@
+ public:
+ QProgressBar( QWidget* parent=0, const char* name=0, WFlags f=0 );
+ QProgressBar( int totalSteps, QWidget* parent=0, const char* name=0, WFlags f=0 );
++ virtual ~QProgressBar();
+
+ int totalSteps() const;
+ int progress() const;
+@@ -91,6 +92,7 @@
+ virtual bool setIndicator( QString & progress_str, int progress,
+ int totalSteps );
+ void styleChange( QStyle& );
++ bool requireRepaint( int newProgress ) const;
+
+ private:
+ int total_steps;
+--- work/qt-x11-free-3.3.8/src/widgets/qprogressbar.cpp.orig 2004-01-30 11:10:24.000000000 +0000
++++ work/qt-x11-free-3.3.8/src/widgets/qprogressbar.cpp 2004-01-30 11:13:03.000000000 +0000
+@@ -47,6 +47,14 @@
+ #endif
+ #include <limits.h>
+
++class QProgressBarPrivate
++{
++ public:
++ QProgressBarPrivate() : last_painted_progress( 0 ) { }
++
++ int last_painted_progress;
++};
++
+ /*!
+ \class QProgressBar qprogressbar.h
+ \brief The QProgressBar widget provides a horizontal progress bar.
+@@ -99,7 +107,7 @@
+ center_indicator( TRUE ),
+ auto_indicator( TRUE ),
+ percentage_visible( TRUE ),
+- d( 0 )
++ d( new QProgressBarPrivate )
+ {
+ setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+ initFrame();
+@@ -130,12 +138,20 @@
+ center_indicator( TRUE ),
+ auto_indicator( TRUE ),
+ percentage_visible( TRUE ),
+- d( 0 )
++ d( new QProgressBarPrivate )
+ {
+ setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+ initFrame();
+ }
+
++/*!
++ Destroys the object and frees any allocated ressources.
++*/
++
++QProgressBar::~QProgressBar()
++{
++ delete d;
++}
+
+ /*!
+ Reset the progress bar. The progress bar "rewinds" and shows no
+@@ -188,11 +204,16 @@
+ progress < 0 || ( ( progress > total_steps ) && total_steps ) )
+ return;
+
++ const bool needRepaint = isVisible() && requireRepaint( progress );
++
+ progress_val = progress;
+
+ setIndicator( progress_str, progress_val, total_steps );
+
+- repaint( FALSE );
++ if ( needRepaint ) {
++ repaint( FALSE );
++ d->last_painted_progress = progress;
++ }
+
+ #if defined(QT_ACCESSIBILITY_SUPPORT)
+ QAccessible::updateAccessibility( this, 0, QAccessible::ValueChanged );
+@@ -318,6 +339,31 @@
+ QFrame::styleChange( old );
+ }
+
++/*!
++ This method returns whether changing the progress to the \a newValue
++ would require a repaint of the progress bar. This allows efficient
++ repainting.
++*/
++bool QProgressBar::requireRepaint( int newProgress ) const
++{
++ if ( newProgress == progress_val ||
++ newProgress == d->last_painted_progress ) {
++ return false;
++ }
++
++ const int width = contentsRect().width();
++ if ( width == 0 ) {
++ return false;
++ }
++
++ float progressPerPixel = 1.0;
++ if ( total_steps > width ) {
++ progressPerPixel = float( total_steps ) / float( width );
++ }
++
++ const int delta = d->last_painted_progress - newProgress;
++ return QABS( delta ) >= progressPerPixel;
++}
+
+ /*!
+ This method is called to generate the text displayed in the center
diff --git a/libs/qt-x11-free/files/0038-dragobject-dont-prefer-unknown.patch b/libs/qt-x11-free/files/0038-dragobject-dont-prefer-unknown.patch
new file mode 100644
index 0000000..156a581
--- /dev/null
+++ b/libs/qt-x11-free/files/0038-dragobject-dont-prefer-unknown.patch
@@ -0,0 +1,57 @@
+qt-bugs@ issue : 38642
+bugs.kde.org number : 71084
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+Hello,
+
+ start Mozilla, go e.g. to http://kde.org, start KWrite (or basically any Qt
+app that accepts text drops), select 'Conquer your Desktop!', and try to
+drag&drop it onto KWrite. The only text pasted should be 'm'.
+
+ I don't know much the related mimetype and encoding stuff, so I'm unsure
+whose fault this actually is. The text drag is provided as a lot of
+text/something targets, to list some text/_moz_htmlinfo, text/x-moz-url,
+text/unicode and similar. The problem is, Kate uses QTextDrag::decode() with
+no subtype specified, probably with the intention that as Kate is a text
+editor, it can accept any text pasted. And since the first target provided by
+mozilla is text/x-moz-url, (which moreover seems to be encoded as 16bit
+unicode), the text dropped is completely wrong. You can easily see all
+targets provided by Mozilla with see_mime.patch applied.
+
+ Solution #1: Say that Kate (any pretty much everybody else expecting text)
+should say "plain" as the subtype. In such case, I suggest you drop the
+QTextDrag::decode() variant with no subtype specified, and stress more the
+fact that not specifying a subtype can result in a lot of rubbish. It's
+simply too tempting to leave the subtype empty and try to accept anything.
+
+ Solution #2: When trying to accept anything, try to get useful data. Which
+means either sorting the subtypes available somehow, checking only the ones
+Qt knows.
+
+ To me, #1 seems to be a better choice, or possibly at least something like
+the attached QTextDrag patch, which simply always tries first "plain" subtype
+if none is specified. With this patch, Mozilla even works (that's irony, of
+course, Mozilla still pastes the text/plain text as HTML, but at least now it
+pastes something where it's easy to point at the offender).
+
+
+--- work/qt-x11-free-3.3.8/src/kernel/qdragobject.cpp.sav 2004-01-06 19:24:35.000000000 +0100
++++ work/qt-x11-free-3.3.8/src/kernel/qdragobject.cpp 2004-01-06 19:47:01.000000000 +0100
+@@ -844,6 +844,16 @@ bool QTextDrag::decode( const QMimeSourc
+ {
+ if(!e)
+ return FALSE;
++
++ // when subtype is not specified, try text/plain first, otherwise this may read
++ // things like text/x-moz-url even though better targets are available
++ if( subtype.isNull()) {
++ QCString subtmp = "plain";
++ if( decode( e, str, subtmp )) {
++ subtype = subtmp;
++ return true;
++ }
++ }
+
+ if ( e->cacheType == QMimeSource::Text ) {
+ str = *e->cache.txt.str;
diff --git a/libs/qt-x11-free/files/0044-qscrollview-windowactivate-fix.diff b/libs/qt-x11-free/files/0044-qscrollview-windowactivate-fix.diff
new file mode 100644
index 0000000..6cce25c
--- /dev/null
+++ b/libs/qt-x11-free/files/0044-qscrollview-windowactivate-fix.diff
@@ -0,0 +1,38 @@
+qt-bugs@ issue : N45716
+applied: no
+author: Enrico Ros <eros.kde@email.it>
+
+QScrollView unwanted repaint fix.
+
+This fixes the 'flashing' konqueror window on activation / deactivation by
+saving 1 unwanted repaint (when konqueror window has background).
+I tracked down to the problem to the internal QViewportWidget of the
+QScrollView class.
+
+When a window is activated the activation event is recursively propagated
+to all childs triggering the windowActivationChange() functions in the
+widget it passes by.
+What happens when the event gets to the Viewport?
+At this point the event has already been handled by windowActivationChange()
+of the parent widget (a QIconView for example) and has then been propagated
+to the Viewport that will handle it with the default
+QWidget::windowActivationChange implementation, maybe raising an unwanted
+update(); so here we stop the event.
+As an addition: if the parent reimplements the windowActivationChange()
+function, mainly to block the update, it won't be happy if the child will
+trigger the update. If the parent do not reimplement the function il will
+inherits the default implementation and there is no need for the viewport's
+one.
+
+--- work/qt-x11-free-3.3.8/src/widgets/qscrollview.cpp.orig 2004-03-29 10:17:04.000000000 +0000
++++ work/qt-x11-free-3.3.8/src/widgets/qscrollview.cpp 2004-03-30 16:40:07.599978320 +0000
+@@ -1551,6 +1551,9 @@
+ case QEvent::LayoutHint:
+ d->autoResizeHint(this);
+ break;
++ case QEvent::WindowActivate:
++ case QEvent::WindowDeactivate:
++ return TRUE;
+ default:
+ break;
+ }
diff --git a/libs/qt-x11-free/files/0046-qiconview-no-useless-scrollbar.diff b/libs/qt-x11-free/files/0046-qiconview-no-useless-scrollbar.diff
new file mode 100644
index 0000000..461ab5b
--- /dev/null
+++ b/libs/qt-x11-free/files/0046-qiconview-no-useless-scrollbar.diff
@@ -0,0 +1,150 @@
+qt-bugs@ issue: N46490
+bugs.kde.org number: 69589
+applied: no
+author: Benoit Walter <b.walter@free.fr>
+
+Remove unnecessary scrollbar that may appear.
+
+Test case (using konqueror icon view):
+- The first icons are being shown (no scrollbar yet)
+- When there is no space left, a vertical scrollbar is needed
+- The vertical scrollbar may cover the right edge of the icons
+(in the last column) => an horizontal scrollbar is needed :-(
+
+Solution:
+When using ScrollBarMode::Auto, prevent Qt from drawing icons on the
+scrollbar area (before the scrollbar is shown).
+
+Related to KDE bug #69589
+
+Index: qiconview.cpp
+===================================================================
+RCS file: /home/kde/qt-copy/src/iconview/qiconview.cpp,v
+retrieving revision 1.54
+diff -u -3 -p -r1.54 qiconview.cpp
+--- work/qt-x11-free-3.3.8/src/iconview/qiconview.cpp 2 Mar 2004 12:50:31 -0000 1.54
++++ work/qt-x11-free-3.3.8/src/iconview/qiconview.cpp 12 Apr 2004 10:07:28 -0000
+@@ -1060,7 +1060,7 @@ void QIconViewItem::setText( const QStri
+
+ if ( view ) {
+ if ( QRect( view->contentsX(), view->contentsY(),
+- view->visibleWidth(), view->visibleHeight() ).
++ view->visibleWidthSB(), view->visibleHeightSB() ).
+ intersects( oR ) )
+ view->repaintContents( oR.x() - 1, oR.y() - 1,
+ oR.width() + 2, oR.height() + 2, FALSE );
+@@ -1104,7 +1104,7 @@ void QIconViewItem::setPixmap( const QPi
+
+ if ( view ) {
+ if ( QRect( view->contentsX(), view->contentsY(),
+- view->visibleWidth(), view->visibleHeight() ).
++ view->visibleWidthSB(), view->visibleHeightSB() ).
+ intersects( oR ) )
+ view->repaintContents( oR.x() - 1, oR.y() - 1,
+ oR.width() + 2, oR.height() + 2, FALSE );
+@@ -1140,7 +1140,7 @@ void QIconViewItem::setPicture( const QP
+
+ if ( view ) {
+ if ( QRect( view->contentsX(), view->contentsY(),
+- view->visibleWidth(), view->visibleHeight() ).
++ view->visibleWidthSB(), view->visibleHeightSB() ).
+ intersects( oR ) )
+ view->repaintContents( oR.x() - 1, oR.y() - 1,
+ oR.width() + 2, oR.height() + 2, FALSE );
+@@ -1200,7 +1200,7 @@ void QIconViewItem::setPixmap( const QPi
+
+ if ( view ) {
+ if ( QRect( view->contentsX(), view->contentsY(),
+- view->visibleWidth(), view->visibleHeight() ).
++ view->visibleWidthSB(), view->visibleHeightSB() ).
+ intersects( oR ) )
+ view->repaintContents( oR.x() - 1, oR.y() - 1,
+ oR.width() + 2, oR.height() + 2, FALSE );
+@@ -5448,8 +5448,8 @@ void QIconView::insertInGrid( QIconViewI
+ }
+ item->dirty = FALSE;
+ } else {
+- QRegion r( QRect( 0, 0, QMAX( contentsWidth(), visibleWidth() ),
+- QMAX( contentsHeight(), visibleHeight() ) ) );
++ QRegion r( QRect( 0, 0, QMAX( contentsWidth(), visibleWidthSB() ),
++ QMAX( contentsHeight(), visibleHeightSB() ) ) );
+
+ QIconViewItem *i = d->firstItem;
+ int y = -1;
+@@ -5707,7 +5707,7 @@ QIconViewItem *QIconView::makeRowLayout(
+ QIconViewItem *item = begin;
+ for (;;) {
+ x += d->spacing + item->width();
+- if ( x > visibleWidth() && item != begin ) {
++ if ( x > visibleWidthSB() && item != begin ) {
+ item = item->prev;
+ break;
+ }
+@@ -5732,7 +5732,7 @@ QIconViewItem *QIconView::makeRowLayout(
+ int x;
+ if ( item == begin ) {
+ if ( reverse )
+- x = visibleWidth() - d->spacing - item->width();
++ x = visibleWidthSB() - d->spacing - item->width();
+ else
+ x = d->spacing;
+ } else {
+@@ -5768,7 +5768,7 @@ QIconViewItem *QIconView::makeRowLayout(
+ i += r;
+ x = i * d->rastX + sp * d->spacing;
+ }
+- if ( x > visibleWidth() && item != begin ) {
++ if ( x > visibleWidthSB() && item != begin ) {
+ item = item->prev;
+ break;
+ }
+@@ -5831,7 +5831,7 @@ QIconViewItem *QIconView::makeRowLayout(
+ QIconViewItem *item = begin;
+ for (;;) {
+ y += d->spacing + item->height();
+- if ( y > visibleHeight() && item != begin ) {
++ if ( y > visibleHeightSB() && item != begin ) {
+ item = item->prev;
+ break;
+ }
+@@ -6378,4 +6378,24 @@ bool QIconView::isRenaming() const
+ #endif
+ }
+
++int QIconView::visibleWidthSB() const
++{
++ if ( vScrollBarMode() != Auto )
++ return visibleWidth();
++
++ int offset = verticalScrollBar()->isVisible() ? 0
++ : style().pixelMetric( QStyle::PM_ScrollBarExtent, verticalScrollBar() );
++ return QMAX( 0, visibleWidth() - offset );
++}
++
++int QIconView::visibleHeightSB() const
++{
++ if ( hScrollBarMode() != Auto )
++ return visibleHeight();
++
++ int offset = horizontalScrollBar()->isVisible() ? 0
++ : style().pixelMetric( QStyle::PM_ScrollBarExtent, horizontalScrollBar() );
++ return QMAX( 0, visibleHeight() - offset );
++}
++
+ #endif // QT_NO_ICONVIEW
+Index: qiconview.h
+===================================================================
+RCS file: /home/kde/qt-copy/src/iconview/qiconview.h,v
+retrieving revision 1.35
+diff -u -3 -p -r1.35 qiconview.h
+--- work/qt-x11-free-3.3.8/src/iconview/qiconview.h 16 May 2003 13:02:38 -0000 1.35
++++ work/qt-x11-free-3.3.8/src/iconview/qiconview.h 12 Apr 2004 10:07:58 -0000
+@@ -496,6 +496,8 @@ private:
+ const QPoint &relativeTo,
+ const QIconViewItem *item ) const;
+ QBitmap mask( QPixmap *pix ) const;
++ int visibleWidthSB() const;
++ int visibleHeightSB() const;
+
+ QIconViewPrivate *d;
+
diff --git a/libs/qt-x11-free/files/0047-fix-kmenu-width.diff b/libs/qt-x11-free/files/0047-fix-kmenu-width.diff
new file mode 100644
index 0000000..e85a9c9
--- /dev/null
+++ b/libs/qt-x11-free/files/0047-fix-kmenu-width.diff
@@ -0,0 +1,28 @@
+qt-bugs@ issue: N46882
+bugs.kde.org number: 77545
+applied: no
+author: Stephan Binner <binner@kde.org>
+
+Fix wrong K menu width for the case of enabled side pixmap and a menu title
+(like "Recently Used Applications") being longer than every other entry.
+
+Solution: Respect PanelKMenu::setMaximumSize() as up to Qt 3.2.3
+
+Status: The first part of this patch is in Qt 3.3.3 snapshots, a better
+ solution for the second is under examination by Trolltech.
+
+Index: src/widgets/qpopupmenu.cpp
+===================================================================
+RCS file: /home/kde/qt-copy/src/widgets/qpopupmenu.cpp,v
+retrieving revision 1.60
+diff -u -3 -p -b -r1.60 qpopupmenu.cpp
+--- work/qt-x11-free-3.3.8/src/widgets/qpopupmenu.cpp 29 Apr 2004 22:31:28 -0000 1.60
++++ work/qt-x11-free-3.3.8/src/widgets/qpopupmenu.cpp 30 Apr 2004 01:11:59 -0000
+@@ -2531,7 +2531,7 @@ QSize QPopupMenu::sizeHint() const
+
+ QPopupMenu* that = (QPopupMenu*) this;
+ //We do not need a resize here, just the sizeHint..
+- return that->updateSize(FALSE, FALSE).expandedTo( QApplication::globalStrut() );
++ return that->updateSize(FALSE).expandedTo( QApplication::globalStrut() );
+ }
+
diff --git a/libs/qt-x11-free/files/0048-qclipboard_hack_80072.patch b/libs/qt-x11-free/files/0048-qclipboard_hack_80072.patch
new file mode 100644
index 0000000..5660240
--- /dev/null
+++ b/libs/qt-x11-free/files/0048-qclipboard_hack_80072.patch
@@ -0,0 +1,48 @@
+qt-bugs@ issue : none, probably even won't be
+bugs.kde.org number : 80072
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+A crude hack for KDE #80072. No good idea how to fix it properly yet :(.
+
+--- work/qt-x11-free-3.3.8/src/kernel/qclipboard_x11.cpp.sav 2004-04-30 12:00:06.000000000 +0200
++++ work/qt-x11-free-3.3.8/src/kernel/qclipboard_x11.cpp 2004-05-09 21:18:10.269264304 +0200
+@@ -109,6 +109,7 @@ static int pending_timer_id = 0;
+ static bool pending_clipboard_changed = FALSE;
+ static bool pending_selection_changed = FALSE;
+
++Q_EXPORT bool qt_qclipboard_bailout_hack = false;
+
+ // event capture mechanism for qt_xclb_wait_for_event
+ static bool waiting_for_data = FALSE;
+@@ -453,6 +454,15 @@ static int qt_xclb_event_filter(XEvent *
+ return 0;
+ }
+
++static bool selection_request_pending = false;
++
++static Bool check_selection_request_pending( Display*, XEvent* e, XPointer )
++ {
++ if( e->type == SelectionRequest && e->xselectionrequest.owner == owner->winId())
++ selection_request_pending = true;
++ return False;
++ }
++
+ bool qt_xclb_wait_for_event( Display *dpy, Window win, int type, XEvent *event,
+ int timeout )
+ {
+@@ -504,6 +514,14 @@ bool qt_xclb_wait_for_event( Display *dp
+ do {
+ if ( XCheckTypedWindowEvent(dpy,win,type,event) )
+ return TRUE;
++ if( qt_qclipboard_bailout_hack ) {
++ XEvent dummy;
++ selection_request_pending = false;
++ if ( owner != NULL )
++ XCheckIfEvent(dpy,&dummy,check_selection_request_pending,NULL);
++ if( selection_request_pending )
++ return TRUE;
++ }
+
+ now = QTime::currentTime();
+ if ( started > now ) // crossed midnight
diff --git a/libs/qt-x11-free/files/0049-qiconview-rubber_on_move.diff b/libs/qt-x11-free/files/0049-qiconview-rubber_on_move.diff
new file mode 100644
index 0000000..a1367af
--- /dev/null
+++ b/libs/qt-x11-free/files/0049-qiconview-rubber_on_move.diff
@@ -0,0 +1,114 @@
+qt-bugs@ issue : none
+applied: no
+author: Enrico Ros <eros.kde@email.it>
+
+Unwanted toggling QIconViewItem focus on click.
+
+This fixes the 'flashing' icon when clicking repeatedly on a QIconView or
+derivates (ie KIconView, KonqIconViewWidget, the KDesktop and so on..).
+The current behavior considers that if not over an icon, the user is
+clicking down to perform icons selection (with the rubberband).
+This is not always true, since a click might be used to give focus to a
+window or unselect some icons.
+
+How this is fixed: when clicking down the mouse a flag is set. If the pointer
+is moved on the iconview with the button held down, then (and only at that
+moment) the rubber is created. Now a selection operation (the one done with
+the rubber) begins when moving the mouse and not only when clicking on the
+empty space.
+
+--- work/qt-x11-free-3.3.8/src.orig/iconview/qiconview.cpp 2004-05-05 18:55:55.471057880 +0000
++++ work/qt-x11-free-3.3.8/src/iconview/qiconview.cpp 2004-05-30 18:24:16.311014024 +0000
+@@ -236,6 +236,7 @@
+ QPoint dragStartPos;
+ QFontMetrics *fm;
+ int minLeftBearing, minRightBearing;
++ int rubberStartX, rubberStartY;
+
+ uint mousePressed :1;
+ uint cleared :1;
+@@ -255,6 +256,7 @@
+ uint firstSizeHint : 1;
+ uint showTips :1;
+ uint pressedSelected :1;
++ uint canStartRubber :1;
+ uint dragging :1;
+ uint drawActiveSelection :1;
+ uint inMenuMode :1;
+@@ -2733,6 +2735,7 @@
+ d->currentItem = 0;
+ d->highlightedItem = 0;
+ d->rubber = 0;
++ d->canStartRubber = FALSE;
+ d->scrollTimer = 0;
+ d->startDragItem = 0;
+ d->tmpCurrentItem = 0;
+@@ -4501,29 +4504,20 @@
+
+ setCurrentItem( item );
+
++ d->canStartRubber = FALSE;
+ if ( e->button() == LeftButton ) {
+- if ( !item && ( d->selectionMode == Multi ||
+- d->selectionMode == Extended ) ) {
+- d->tmpCurrentItem = d->currentItem;
+- d->currentItem = 0;
+- repaintItem( d->tmpCurrentItem );
+- delete d->rubber;
+- d->rubber = new QRect( e->x(), e->y(), 0, 0 );
+- d->selectedItems.clear();
+- if ( ( e->state() & ControlButton ) == ControlButton ||
+- ( e->state() & ShiftButton ) == ShiftButton ) {
+- for ( QIconViewItem *i = firstItem(); i; i = i->nextItem() )
+- if ( i->isSelected() )
+- d->selectedItems.insert( i, i );
+- }
++ if ( !item && ( d->selectionMode == Multi || d->selectionMode == Extended ) )
++ {
++ d->canStartRubber = TRUE;
++ d->rubberStartX = e->x();
++ d->rubberStartY = e->y();
+ }
+-
+ d->mousePressed = TRUE;
+ d->controlPressed = ( ( e->state() & ControlButton ) == ControlButton );
+ }
+
+ emit_signals:
+- if ( !d->rubber ) {
++ if ( !d->canStartRubber ) {
+ emit mouseButtonPressed( e->button(), item, e->globalPos() );
+ emit pressed( item );
+ emit pressed( item, e->globalPos() );
+@@ -4567,6 +4561,7 @@
+ d->mousePressed = FALSE;
+ d->startDragItem = 0;
+
++ d->canStartRubber = FALSE;
+ if ( d->rubber ) {
+ QPainter p;
+ p.begin( viewport() );
+@@ -4656,7 +4651,22 @@
+ if ( d->tmpCurrentItem )
+ repaintItem( d->tmpCurrentItem );
+ }
+- } else if ( d->mousePressed && !d->currentItem && d->rubber ) {
++ } else if ( d->mousePressed && ((!d->currentItem && d->rubber) || d->canStartRubber) ) {
++ if ( d->canStartRubber ) {
++ d->canStartRubber = FALSE;
++ d->tmpCurrentItem = d->currentItem;
++ d->currentItem = 0;
++ repaintItem( d->tmpCurrentItem );
++ delete d->rubber;
++ d->rubber = new QRect( d->rubberStartX, d->rubberStartY, 0, 0 );
++ d->selectedItems.clear();
++ if ( ( e->state() & ControlButton ) == ControlButton ||
++ ( e->state() & ShiftButton ) == ShiftButton ) {
++ for ( QIconViewItem *i = firstItem(); i; i = i->nextItem() )
++ if ( i->isSelected() )
++ d->selectedItems.insert( i, i );
++ }
++ }
+ doAutoScroll();
+ }
+ }
diff --git a/libs/qt-x11-free/files/0056-khotkeys_input_84434.patch b/libs/qt-x11-free/files/0056-khotkeys_input_84434.patch
new file mode 100644
index 0000000..68420a6
--- /dev/null
+++ b/libs/qt-x11-free/files/0056-khotkeys_input_84434.patch
@@ -0,0 +1,21 @@
+qt-bugs@ issue : 58251
+bugs.kde.org number : 84434
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+Fixes keyboard input action in KHotKeys (see bug #84434).
+
+--- work/qt-x11-free-3.3.8/src/kernel/qapplication_x11.cpp.sav 2004-10-07 15:38:05.000000000 +0200
++++ work/qt-x11-free-3.3.8/src/kernel/qapplication_x11.cpp 2004-10-12 11:46:32.513137808 +0200
+@@ -5294,8 +5294,10 @@ static Bool qt_keypress_scanner(Display
+ qt_auto_repeat_data *d = (qt_auto_repeat_data *) arg;
+ if (d->error ||
+ event->xkey.window != d->window ||
+- event->xkey.keycode != d->keycode)
++ event->xkey.keycode != d->keycode) {
++ d->error = TRUE;
+ return FALSE;
++ }
+
+ if (event->type == XKeyPress) {
+ d->error = (! d->release || event->xkey.time - d->timestamp > 10);
diff --git a/libs/qt-x11-free/files/0059-qpopup_has_mouse.patch b/libs/qt-x11-free/files/0059-qpopup_has_mouse.patch
new file mode 100644
index 0000000..d61f1f9
--- /dev/null
+++ b/libs/qt-x11-free/files/0059-qpopup_has_mouse.patch
@@ -0,0 +1,68 @@
+qt-bugs@ issue : 49417
+bugs.kde.org number : 58719
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+Hello,
+
+ please consider applying the two attached QPopupMenu patches fixing KDE bugs
+ #58719 and #74778 (http://bugs.kde.org/show_bug.cgi?id=58719,
+ http://bugs.kde.org/show_bug.cgi?id=74778), which complain about keyboard
+ navigation in popup menus being very uncomfortable because of being affected
+ by mouse position despite mouse not being used at all.
+
+ - hasmouse.patch - (#58719) - use keyboard to open and navigate in any popup
+ menu and "accidentally" hit your mouse. Depending on the mouse cursor
+ position either no popup entry is selected or the random popup entry
+ happening to be at the cursor position becomes highlighted. The patch
+ basically copies the 'hasmouse' code from QMenuBar which prevents the mouse
+ having any effect on the popup if it's outside the popup geometry.
+
+ [ ... #74778 ... ]
+
+--- work/qt-x11-free-3.3.8/src/widgets/qpopupmenu.cpp.sav 2004-05-25 21:58:23.000000000 +0200
++++ work/qt-x11-free-3.3.8/src/widgets/qpopupmenu.cpp 2004-05-25 22:02:19.520297888 +0200
+@@ -253,6 +253,7 @@ public:
+ } scroll;
+ QSize calcSize;
+ QRegion mouseMoveBuffer;
++ uint hasmouse : 1;
+ };
+
+ static QPopupMenu* active_popup_menu = 0;
+@@ -272,6 +273,7 @@ QPopupMenu::QPopupMenu( QWidget *parent,
+ d->scroll.scrollableSize = d->scroll.topScrollableIndex = 0;
+ d->scroll.scrollable = QPopupMenuPrivate::Scroll::ScrollNone;
+ d->scroll.scrolltimer = 0;
++ d->hasmouse = 0;
+ isPopupMenu = TRUE;
+ #ifndef QT_NO_ACCEL
+ autoaccel = 0;
+@@ -1740,6 +1742,11 @@ void QPopupMenu::mouseMoveEvent( QMouseE
+
+ int item = itemAtPos( e->pos() );
+ if ( item == -1 ) { // no valid item
++ if( !d->hasmouse ) {
++ tryMenuBar( e );
++ return;
++ }
++ d->hasmouse = 0;
+ int lastActItem = actItem;
+ actItem = -1;
+ if ( lastActItem >= 0 )
+@@ -1751,6 +1758,7 @@ void QPopupMenu::mouseMoveEvent( QMouseE
+ }
+ } else { // mouse on valid item
+ // but did not register mouse press
++ d->hasmouse = 1;
+ if ( (e->state() & Qt::MouseButtonMask) && !mouseBtDn )
+ mouseBtDn = TRUE; // so mouseReleaseEvent will pop down
+
+@@ -2159,6 +2167,7 @@ void QPopupMenu::timerEvent( QTimerEvent
+ */
+ void QPopupMenu::leaveEvent( QEvent * )
+ {
++ d->hasmouse = 0;
+ if ( testWFlags( WStyle_Tool ) && style().styleHint(QStyle::SH_PopupMenu_MouseTracking, this) ) {
+ int lastActItem = actItem;
+ actItem = -1;
diff --git a/libs/qt-x11-free/files/0060-qpopup_ignore_mousepos.patch b/libs/qt-x11-free/files/0060-qpopup_ignore_mousepos.patch
new file mode 100644
index 0000000..5a6b368
--- /dev/null
+++ b/libs/qt-x11-free/files/0060-qpopup_ignore_mousepos.patch
@@ -0,0 +1,59 @@
+qt-bugs@ issue : 49417
+bugs.kde.org number : 74778
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+ Hello,
+
+ please consider applying the two attached QPopupMenu patches fixing KDE bugs
+ #58719 and #74778 (http://bugs.kde.org/show_bug.cgi?id=58719,
+ http://bugs.kde.org/show_bug.cgi?id=74778), which complain about keyboard
+ navigation in popup menus being very uncomfortable because of being affected
+ by mouse position despite mouse not being used at all.
+
+ [... #58719 ... ]
+
+ - ignoremousepos.patch - (#74778) - use keyboard to open some popup which
+ doesn't show up at mouse position (e.g. Alt+F3 with KWin or the context menu
+ key with some file selected in Konqueror). If the mouse is positioned in the
+ area where the popup shows, the random entry happening to be at the cursor
+ position becomes highlighted.
+ The patch fixes this by ignoring mouse events that happen at mouse position
+ which was current when the popup was shown, i.e. all mouse move events that
+ actually aren't triggered by mouse move are ignored. I first wanted to ignore
+ only the very first mouse move event (which should be caused by EnterNotify
+ for the popup) but I realized that Qt's event handling causes the popup to
+ possibly get more than just one initial move event, caused by LeaveNotify
+ events for normal widgets being transformed to mouse move events for the
+ popup, so I have no better idea how to solve this problem.
+
+--- work/qt-x11-free-3.3.8/src/widgets/qpopupmenu.cpp.sav 2004-05-25 17:48:21.000000000 +0200
++++ work/qt-x11-free-3.3.8/src/widgets/qpopupmenu.cpp 2004-05-25 17:57:28.981809096 +0200
+@@ -254,6 +254,7 @@ public:
+ QSize calcSize;
+ QRegion mouseMoveBuffer;
+ uint hasmouse : 1;
++ QPoint ignoremousepos;
+ };
+
+ static QPopupMenu* active_popup_menu = 0;
+@@ -1354,6 +1355,7 @@ void QPopupMenu::show()
+ popupActive = -1;
+ if(style().styleHint(QStyle::SH_PopupMenu_SubMenuPopupDelay, this))
+ d->mouseMoveBuffer = QRegion();
++ d->ignoremousepos = QCursor::pos();
+ }
+
+ /*!
+@@ -1701,6 +1703,11 @@ void QPopupMenu::mouseReleaseEvent( QMou
+
+ void QPopupMenu::mouseMoveEvent( QMouseEvent *e )
+ {
++ if( e->globalPos() == d->ignoremousepos ) {
++ return;
++ }
++ d->ignoremousepos = QPoint();
++
+ motion++;
+
+ if ( parentMenu && parentMenu->isPopupMenu ) {
diff --git a/libs/qt-x11-free/files/0061-qscrollview-propagate-horizontal-wheelevent.patch b/libs/qt-x11-free/files/0061-qscrollview-propagate-horizontal-wheelevent.patch
new file mode 100644
index 0000000..3c37383
--- /dev/null
+++ b/libs/qt-x11-free/files/0061-qscrollview-propagate-horizontal-wheelevent.patch
@@ -0,0 +1,23 @@
+qt-bugs@ issue : N64978
+applied: no
+author: Germain Garand <germain@ebooksfrance.org>
+
+In QScrollView, wheel events are forwarded to (viewport|contents)WheelEvent, but
+the horizontal/vertical status of the wheel event is not.
+
+Index: src/widgets/qscrollview.cpp
+===================================================================
+RCS file: /home/kde/qt-copy/src/widgets/qscrollview.cpp,v
+retrieving revision 1.65
+diff -u -3 -p -r1.65 qscrollview.cpp
+--- work/qt-x11-free-3.3.8/src/widgets/qscrollview.cpp 29 Apr 2004 22:31:28 -0000 1.65
++++ work/qt-x11-free-3.3.8/src/widgets/qscrollview.cpp 25 Jan 2005 12:07:04 -0000
+@@ -1863,7 +1863,7 @@ void QScrollView::viewportWheelEvent( QW
+ the event itself.
+ */
+ QWheelEvent ce( viewportToContents(e->pos()),
+- e->globalPos(), e->delta(), e->state());
++ e->globalPos(), e->delta(), e->state(), e->orientation());
+ contentsWheelEvent(&ce);
+ if ( ce.isAccepted() )
+ e->accept();
diff --git a/libs/qt-x11-free/files/0073-xinerama-aware-qpopup.patch b/libs/qt-x11-free/files/0073-xinerama-aware-qpopup.patch
new file mode 100644
index 0000000..5f47d6f
--- /dev/null
+++ b/libs/qt-x11-free/files/0073-xinerama-aware-qpopup.patch
@@ -0,0 +1,113 @@
+qt-bugs@ issue : none
+bugs.kde.org number : none
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+Makes QPopupMenu aware of Xinerama (see e.g. https://bugzilla.novell.com/show_bug.cgi?id=216235).
+
+
+--- work/qt-x11-free-3.3.8/src/widgets/qpopupmenu.cpp
++++ work/qt-x11-free-3.3.8/src/widgets/qpopupmenu.cpp
+@@ -454,6 +454,15 @@ void QPopupMenu::frameChanged()
+ menuContentsChanged();
+ }
+
++QRect QPopupMenu::screenRect( const QPoint& pos )
++{
++ int screen_num = QApplication::desktop()->screenNumber( pos );
++#ifdef Q_WS_MAC
++ return QApplication::desktop()->availableGeometry( screen_num );
++#else
++ return QApplication::desktop()->screenGeometry( screen_num );
++#endif
++}
+ /*!
+ Displays the popup menu so that the item number \a indexAtPoint
+ will be at the specified \e global position \a pos. To translate a
+@@ -498,6 +507,15 @@ void QPopupMenu::popup( const QPoint &po
+ // point.
+ #endif
+
++ QRect screen = screenRect( geometry().center());
++ QRect screen2 = screenRect( QApplication::reverseLayout()
++ ? pos+QPoint(width(),0) : pos );
++ // if the widget is not in the screen given by the position, move it
++ // there, so that updateSize() uses the right size of the screen
++ if( screen != screen2 ) {
++ screen = screen2;
++ move( screen.x(), screen.y());
++ }
+ if(d->scroll.scrollable) {
+ d->scroll.scrollable = QPopupMenuPrivate::Scroll::ScrollNone;
+ d->scroll.topScrollableIndex = d->scroll.scrollableSize = 0;
+@@ -517,18 +535,6 @@ void QPopupMenu::popup( const QPoint &po
+ updateSize(TRUE);
+ }
+
+- int screen_num;
+- if (QApplication::desktop()->isVirtualDesktop())
+- screen_num =
+- QApplication::desktop()->screenNumber( QApplication::reverseLayout() ?
+- pos+QPoint(width(),0) : pos );
+- else
+- screen_num = QApplication::desktop()->screenNumber( this );
+-#ifdef Q_WS_MAC
+- QRect screen = QApplication::desktop()->availableGeometry( screen_num );
+-#else
+- QRect screen = QApplication::desktop()->screenGeometry( screen_num );
+-#endif
+ int sw = screen.width(); // screen width
+ int sh = screen.height(); // screen height
+ int sx = screen.x(); // screen pos
+@@ -1056,7 +1062,7 @@ QSize QPopupMenu::updateSize(bool force_
+ mi->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width() + 4 );
+ }
+
+- int dh = QApplication::desktop()->height();
++ int dh = screenRect( geometry().center()).height();
+ ncols = 1;
+
+ for ( QMenuItemListIt it2( *mitems ); it2.current(); ++it2 ) {
+@@ -2297,9 +2303,9 @@ void QPopupMenu::subMenuTimer() {
+ bool right = FALSE;
+ if ( ( parentMenu && parentMenu->isPopupMenu &&
+ ((QPopupMenu*)parentMenu)->geometry().x() < geometry().x() ) ||
+- p.x() < 0 )
++ p.x() < screenRect( p ).left())
+ right = TRUE;
+- if ( right && (ps.width() > QApplication::desktop()->width() - mapToGlobal( r.topRight() ).x() ) )
++ if ( right && (ps.width() > screenRect( p ).right() - mapToGlobal( r.topRight() ).x() ) )
+ right = FALSE;
+ if ( right )
+ p.setX( mapToGlobal( r.topRight() ).x() );
+@@ -2310,7 +2316,7 @@ void QPopupMenu::subMenuTimer() {
+ bool left = FALSE;
+ if ( ( parentMenu && parentMenu->isPopupMenu &&
+ ((QPopupMenu*)parentMenu)->geometry().x() > geometry().x() ) ||
+- p.x() + ps.width() > QApplication::desktop()->width() )
++ p.x() + ps.width() > screenRect( p ).right() )
+ left = TRUE;
+ if ( left && (ps.width() > mapToGlobal( r.topLeft() ).x() ) )
+ left = FALSE;
+@@ -2318,8 +2324,8 @@ void QPopupMenu::subMenuTimer() {
+ p.setX( mapToGlobal( r.topLeft() ).x() - ps.width() );
+ }
+ QRect pr = popup->itemGeometry(popup->count() - 1);
+- if (p.y() + ps.height() > QApplication::desktop()->height() &&
+- p.y() - ps.height() + (QCOORD) pr.height() >= 0)
++ if (p.y() + ps.height() > screenRect( p ).bottom() &&
++ p.y() - ps.height() + (QCOORD) pr.height() >= screenRect( p ).top())
+ p.setY( p.y() - ps.height() + (QCOORD) pr.height());
+
+ if ( style().styleHint(QStyle::SH_PopupMenu_SloppySubMenus, this )) {
+Index: src/widgets/qpopupmenu.h
+===================================================================
+--- work/qt-x11-free-3.3.8/src/widgets/qpopupmenu.h (revision 636368)
++++ work/qt-x11-free-3.3.8/src/widgets/qpopupmenu.h (working copy)
+@@ -152,6 +152,7 @@ private:
+
+ QSize updateSize(bool force_recalc=FALSE, bool do_resize=TRUE);
+ void updateRow( int row );
++ QRect screenRect(const QPoint& pos);
+ #ifndef QT_NO_ACCEL
+ void updateAccel( QWidget * );
+ void enableAccel( bool );
diff --git a/libs/qt-x11-free/files/0076-fix-qprocess.diff b/libs/qt-x11-free/files/0076-fix-qprocess.diff
new file mode 100644
index 0000000..3b5c132
--- /dev/null
+++ b/libs/qt-x11-free/files/0076-fix-qprocess.diff
@@ -0,0 +1,19 @@
+qt-bugs@ issue : none
+bugs.kde.org number : none
+applied: no
+author: from trolltech
+
+Fixes a regression in QProgress::writeToStdin()
+
+
+--- work/qt-x11-free-3.3.8/src/kernel/qprocess.cpp
++++ work/qt-x11-free-3.3.8/src/kernel/qprocess.cpp
+@@ -727,7 +727,7 @@ void QProcess::closeStdinLaunch()
+ void QProcess::writeToStdin( const QString& buf )
+ {
+ QByteArray tmp = buf.local8Bit();
+- tmp.resize( tmp.size() - 1 ); // drop the implicit \0
++ tmp.resize( qstrlen( tmp.data() ) );
+ writeToStdin( tmp );
+ }
+
diff --git a/libs/qt-x11-free/files/0077-utf8-decoder-fixes.diff b/libs/qt-x11-free/files/0077-utf8-decoder-fixes.diff
new file mode 100644
index 0000000..25a5aed
--- /dev/null
+++ b/libs/qt-x11-free/files/0077-utf8-decoder-fixes.diff
@@ -0,0 +1,109 @@
+qt-bugs@ issue : N154454
+bugs.kde.org number : none
+applied: no
+author: Dirk Mueller <mueller@kde.org>
+
+This patch makes the utf8 decoders in Qt reject overlong
+sequences, like required.
+
+--- work/qt-x11-free-3.3.8/src/codecs/qutfcodec.cpp
++++ work/qt-x11-free-3.3.8/src/codecs/qutfcodec.cpp
+@@ -154,6 +154,7 @@
+
+ class QUtf8Decoder : public QTextDecoder {
+ uint uc;
++ uint min_uc;
+ int need;
+ bool headerDone;
+ public:
+@@ -167,8 +168,9 @@
+ result.setLength( len ); // worst case
+ QChar *qch = (QChar *)result.unicode();
+ uchar ch;
++ int error = -1;
+ for (int i=0; i<len; i++) {
+- ch = *chars++;
++ ch = chars[i];
+ if (need) {
+ if ( (ch&0xc0) == 0x80 ) {
+ uc = (uc << 6) | (ch & 0x3f);
+@@ -182,6 +184,8 @@
+ *qch++ = QChar(high);
+ *qch++ = QChar(low);
+ headerDone = TRUE;
++ } else if ((uc < min_uc) || (uc >= 0xd800 && uc <= 0xdfff) || (uc >= 0xfffe)) {
++ *qch++ = QChar::replacement;
+ } else {
+ if (headerDone || QChar(uc) != QChar::byteOrderMark)
+ *qch++ = uc;
+@@ -190,6 +194,7 @@
+ }
+ } else {
+ // error
++ i = error;
+ *qch++ = QChar::replacement;
+ need = 0;
+ }
+@@ -200,12 +205,21 @@
+ } else if ((ch & 0xe0) == 0xc0) {
+ uc = ch & 0x1f;
+ need = 1;
++ error = i;
++ min_uc = 0x80;
+ } else if ((ch & 0xf0) == 0xe0) {
+ uc = ch & 0x0f;
+ need = 2;
++ error = i;
++ min_uc = 0x800;
+ } else if ((ch&0xf8) == 0xf0) {
+ uc = ch & 0x07;
+ need = 3;
++ error = i;
++ min_uc = 0x10000;
++ } else {
++ // error
++ *qch++ = QChar::replacement;
+ }
+ }
+ }
+--- work/qt-x11-free-3.3.8/src/tools/qstring.cpp
++++ work/qt-x11-free-3.3.8/src/tools/qstring.cpp
+@@ -5805,6 +5805,7 @@
+ result.setLength( len ); // worst case
+ QChar *qch = (QChar *)result.unicode();
+ uint uc = 0;
++ uint min_uc = 0;
+ int need = 0;
+ int error = -1;
+ uchar ch;
+@@ -5822,6 +5823,12 @@
+ unsigned short low = uc%0x400 + 0xdc00;
+ *qch++ = QChar(high);
+ *qch++ = QChar(low);
++ } else if (uc < min_uc || (uc >= 0xd800 && uc <= 0xdfff) || (uc >= 0xfffe)) {
++ // overlong seqence, UTF16 surrogate or BOM
++ i = error;
++ qch = addOne(qch, result);
++ *qch++ = QChar(0xdbff);
++ *qch++ = QChar(0xde00+((uchar)utf8[i]));
+ } else {
+ *qch++ = uc;
+ }
+@@ -5844,14 +5851,17 @@
+ uc = ch & 0x1f;
+ need = 1;
+ error = i;
++ min_uc = 0x80;
+ } else if ((ch & 0xf0) == 0xe0) {
+ uc = ch & 0x0f;
+ need = 2;
+ error = i;
++ min_uc = 0x800;
+ } else if ((ch&0xf8) == 0xf0) {
+ uc = ch & 0x07;
+ need = 3;
+ error = i;
++ min_uc = 0x10000;
+ } else {
+ // Error
+ qch = addOne(qch, result);
diff --git a/libs/qt-x11-free/files/auto-license.diff b/libs/qt-x11-free/files/auto-license.diff
new file mode 100644
index 0000000..e983ab2
--- /dev/null
+++ b/libs/qt-x11-free/files/auto-license.diff
@@ -0,0 +1,11 @@
+--- work/qt-x11-free-3.3.8/configure 2003-08-18 15:23:53.000000000 +0200
++++ tmp/qt-x11-free-3.3.8/configure 2003-08-28 10:48:11.000000000 +0200
+@@ -2177,7 +2177,7 @@
+ else
+ echo "Do you accept the terms of $affix license? \c"
+ fi
+- read acceptance
++ acceptance="yes"
+ echo
+ if [ "$acceptance" = "yes" ]; then
+ break
diff --git a/libs/qt-x11-free/files/dont-use-includehints.diff b/libs/qt-x11-free/files/dont-use-includehints.diff
new file mode 100644
index 0000000..91d12a1
--- /dev/null
+++ b/libs/qt-x11-free/files/dont-use-includehints.diff
@@ -0,0 +1,22 @@
+Index: form.cpp
+===================================================================
+--- tmp/qt-x11-free-3.3.8/tools/designer/uic/form.cpp (revision 459878)
++++ work/qt-x11-free-3.3.8/tools/designer/uic/form.cpp (revision 439328)
+@@ -726,16 +726,7 @@
+ }
+ n2 = n2.nextSibling().toElement();
+ }
+- } else if ( n.tagName() == "includehints" ) {
+- QDomElement n2 = n.firstChild().toElement();
+- while ( !n2.isNull() ) {
+- if ( n2.tagName() == "includehint" ) {
+- QString file = n2.firstChild().toText().data();
+- localIncludes += file;
+- }
+- n2 = n2.nextSibling().toElement();
+- }
+- }
++ }
+ }
+
+ // additional includes (local or global) and forward declaractions
diff --git a/libs/qt-x11-free/files/q_export-visibility.diff b/libs/qt-x11-free/files/q_export-visibility.diff
new file mode 100644
index 0000000..a9830dd
--- /dev/null
+++ b/libs/qt-x11-free/files/q_export-visibility.diff
@@ -0,0 +1,65 @@
+Index: src/kernel/qgplugin.h
+===================================================================
+--- tmp/qt-x11-free-3.3.8/src/kernel/qgplugin.h (revision 423270)
++++ work/qt-x11-free-3.3.8/src/kernel/qgplugin.h (working copy)
+@@ -90,35 +90,19 @@
+ return i->iface(); \
+ }
+
+-# ifdef Q_WS_WIN
+-# ifdef Q_CC_BOR
+-# define Q_EXPORT_PLUGIN(PLUGIN) \
+- Q_PLUGIN_VERIFICATION_DATA \
+- Q_EXTERN_C __declspec(dllexport) \
+- const char * __stdcall qt_ucm_query_verification_data() \
+- { return qt_ucm_verification_data; } \
+- Q_EXTERN_C __declspec(dllexport) QUnknownInterface* \
+- __stdcall ucm_instantiate() \
+- Q_PLUGIN_INSTANTIATE( PLUGIN )
+-# else
+-# define Q_EXPORT_PLUGIN(PLUGIN) \
+- Q_PLUGIN_VERIFICATION_DATA \
+- Q_EXTERN_C __declspec(dllexport) \
+- const char *qt_ucm_query_verification_data() \
+- { return qt_ucm_verification_data; } \
+- Q_EXTERN_C __declspec(dllexport) QUnknownInterface* ucm_instantiate() \
+- Q_PLUGIN_INSTANTIATE( PLUGIN )
+-# endif
+-# else
+-# define Q_EXPORT_PLUGIN(PLUGIN) \
++#if defined(Q_WS_WIN) && defined(Q_CC_BOR)
++# define Q_STDCALL __stdcall
++#else
++# define Q_STDCALL
++#endif
++
++#define Q_EXPORT_PLUGIN(PLUGIN) \
+ Q_PLUGIN_VERIFICATION_DATA \
+- Q_EXTERN_C \
+- const char *qt_ucm_query_verification_data() \
++ Q_EXTERN_C Q_EXPORT \
++ const char * Q_STDCALL qt_ucm_query_verification_data() \
+ { return qt_ucm_verification_data; } \
+- Q_EXTERN_C QUnknownInterface* ucm_instantiate() \
++ Q_EXTERN_C Q_EXPORT QUnknownInterface* Q_STDCALL ucm_instantiate() \
+ Q_PLUGIN_INSTANTIATE( PLUGIN )
+-# endif
+-
+ #endif
+
+ struct QUnknownInterface;
+Index: src/tools/qglobal.h
+===================================================================
+--- tmp/qt-x11-free-3.3.8/src/tools/qglobal.h (revision 423270)
++++ work/qt-x11-free-3.3.8/src/tools/qglobal.h (working copy)
+@@ -865,6 +865,10 @@
+ # define Q_TEMPLATE_EXTERN
+ # undef Q_DISABLE_COPY /* avoid unresolved externals */
+ # endif
++#elif defined(Q_CC_GNU) && __GNUC__ - 0 >= 4
++# define Q_EXPORT __attribute__((visibility("default")))
++# undef QT_MAKEDLL /* ignore these for other platforms */
++# undef QT_DLL
+ #else
+ # undef QT_MAKEDLL /* ignore these for other platforms */
+ # undef QT_DLL
diff --git a/libs/taglib/Makefile b/libs/taglib/Makefile
new file mode 100644
index 0000000..e2d36cf
--- /dev/null
+++ b/libs/taglib/Makefile
@@ -0,0 +1,16 @@
+GARNAME = taglib
+GARVERSION = 1.4
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://developer.kde.org/~wheeler/files/src/
+
+DESCRIPTION = TagLib
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/taglib/checksums b/libs/taglib/checksums
new file mode 100644
index 0000000..6aee7f3
--- /dev/null
+++ b/libs/taglib/checksums
@@ -0,0 +1 @@
+dcd50ddb2544faeae77f194804559404 download/taglib-1.4.tar.gz
diff --git a/libs/tse3/Makefile b/libs/tse3/Makefile
new file mode 100644
index 0000000..6e2fc67
--- /dev/null
+++ b/libs/tse3/Makefile
@@ -0,0 +1,19 @@
+GARNAME = tse3
+GARVERSION = 0.3.1
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+PATCHFILES = fix-compile.diff
+
+LIBDEPS = libs/arts
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/sourceforge/tse3/ http://belnet.dl.sourceforge.net/sourceforge/sourceforge/tse3/
+
+DESCRIPTION = Sequencer Engine
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/tse3/checksums b/libs/tse3/checksums
new file mode 100644
index 0000000..8342f26
--- /dev/null
+++ b/libs/tse3/checksums
@@ -0,0 +1,2 @@
+3b7e35505160e2d761e5b43abb636f3c download/tse3-0.3.1.tar.gz
+cfac8cb83be434d9442668c355b678e8 download/fix-compile.diff
diff --git a/libs/tse3/files/fix-compile.diff b/libs/tse3/files/fix-compile.diff
new file mode 100644
index 0000000..b5552d6
--- /dev/null
+++ b/libs/tse3/files/fix-compile.diff
@@ -0,0 +1,10 @@
+--- tmp/tse3-0.3.1/src/tse3/cmd/Phrase.h 2005-07-25 13:22:38.000000000 +0200
++++ work/tse3-0.3.1/src/tse3/cmd/Phrase.h 2005-11-01 21:53:44.000000000 +0100
+@@ -29,6 +29,7 @@
+ class Phrase;
+ class Song;
+ class Part;
++ class PhraseEdit;
+
+ namespace Cmd
+ {
diff --git a/libs/wv2/Makefile b/libs/wv2/Makefile
new file mode 100644
index 0000000..60196c0
--- /dev/null
+++ b/libs/wv2/Makefile
@@ -0,0 +1,18 @@
+GARNAME = wv2
+GARVERSION = 0.2.3
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/wvware/ http://belnet.dl.sourceforge.net/sourceforge/wvware/
+
+LIBDEPS = libs/libgsf
+
+DESCRIPTION = Library for converting Word documents
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --disable-debug
+
+include ../category.mk
diff --git a/libs/wv2/checksums b/libs/wv2/checksums
new file mode 100644
index 0000000..8762e0d
--- /dev/null
+++ b/libs/wv2/checksums
@@ -0,0 +1 @@
+ea7e3331fbe597185070c0784411a3f7 download/wv2-0.2.3.tar.bz2
diff --git a/libs/xine-lib/Makefile b/libs/xine-lib/Makefile
new file mode 100644
index 0000000..e28711d
--- /dev/null
+++ b/libs/xine-lib/Makefile
@@ -0,0 +1,18 @@
+GARNAME = xine-lib
+GARVERSION = 1.1.6
+CATEGORIES = libs
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+LIBDEPS = misc/pkgconfig libs/arts
+
+MASTER_SITES = http://switch.dl.sourceforge.net/sourceforge/xine/ http://belnet.dl.sourceforge.net/sourceforge/xine/
+
+DESCRIPTION = Xine library
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/libs/xine-lib/checksums b/libs/xine-lib/checksums
new file mode 100644
index 0000000..46762d6
--- /dev/null
+++ b/libs/xine-lib/checksums
@@ -0,0 +1 @@
+0795db067d191595a5ead8d638c4dfb2 download/xine-lib-1.1.6.tar.gz
diff --git a/meta/Makefile b/meta/Makefile
new file mode 100644
index 0000000..84ff360
--- /dev/null
+++ b/meta/Makefile
@@ -0,0 +1 @@
+include ../category.mk
diff --git a/meta/everything/Makefile b/meta/everything/Makefile
new file mode 100644
index 0000000..fb78694
--- /dev/null
+++ b/meta/everything/Makefile
@@ -0,0 +1,13 @@
+GARNAME = everything
+GARVERSION = 1
+CATEGORIES = meta
+
+LIBDEPS = kde/kdebase kde/kdenetwork kde/kdepim kde/kdeaccessibility misc/ttf-bitstream-vera kde/kdeartwork kde/kdegraphics kde/kdemultimedia kde/kdeaddons kde/kdeutils kde/kdeedu kde/kdegames kde/kdesdk kde/kdewebdev kde/kdetoys kde/kdeadmin apps/office/koffice apps/development/kdevelop apps/multimedia/k3b apps/multimedia/amarok apps/graphics/digikam-plugins apps/utilities/filelight apps/multimedia/kaffeine apps/internet/kbear apps/internet/kbiff apps/system/kcpuload apps/development/kdbg apps/development/kdiff3 apps/utilities/kdirstat apps/office/kile apps/graphics/kphotoalbum apps/multimedia/kmplayer apps/system/knemo apps/system/knetload apps/games/knights apps/internet/konversation apps/utilities/krusader apps/internet/kvirc apps/office/lyx apps/multimedia/noteedit apps/office/scribus libs/gpgme libs/dirmngr libs/pinentry apps/multimedia/kdetv apps/utilities/kst apps/system/smb4k apps/system/kiosktool apps/system/kio-locate apps/office/kmymoney2 apps/graphics/gwenview apps/graphics/showimg apps/system/kconfigeditor apps/multimedia/kplayer apps/utilities/basket apps/utilities/krename apps/internet/ktorrent apps/system/ksystemlog apps/office/tellico
+
+DESCRIPTION = Everything except of i18n/, kdebindings and other stuff listed in the README
+
+include ../../gar.mk
+
+install-%/Makefile:
+ @mkdir -p $(COOKIEDIR)/install-$*
+ $(MAKECOOKIE)
diff --git a/meta/kde/Makefile b/meta/kde/Makefile
new file mode 100644
index 0000000..5379e29
--- /dev/null
+++ b/meta/kde/Makefile
@@ -0,0 +1,13 @@
+GARNAME = kde
+GARVERSION = 1
+CATEGORIES = meta
+
+LIBDEPS = kde/kdebase kde/kdepim kde/kdenetwork kde/kdeartwork kde/kdeaccessibility kde/kdegraphics kde/kdemultimedia kde/kdegames kde/kdeaddons kde/kdeutils kde/kdeedu kde/kdetoys kde/kdesdk kde/kdewebdev kde/kdeadmin
+
+DESCRIPTION = kde
+
+include ../../gar.mk
+
+install-%/Makefile:
+ @mkdir -p $(COOKIEDIR)/install-$*
+ $(MAKECOOKIE)
diff --git a/meta/kdepim-crypto/Makefile b/meta/kdepim-crypto/Makefile
new file mode 100644
index 0000000..0106509
--- /dev/null
+++ b/meta/kdepim-crypto/Makefile
@@ -0,0 +1,17 @@
+GARNAME = kdepim-crypto
+GARVERSION = 1
+CATEGORIES = meta
+
+LIBDEPS = kde/kdebase kde/kdepim libs/gpgme libs/dirmngr libs/pinentry
+
+DESCRIPTION = kdepim plus crypto support
+
+include ../../gar.mk
+
+install-%/Makefile:
+ @mkdir -p $(COOKIEDIR)/install-$*
+ $(MAKECOOKIE)
+
+post-install:
+ @echo Installation successful. Read http://kmail.kde.org/kmail-pgpmime-howto.html
+ @echo how to manually configure GnuPG, gpg-agent and KMail for each user now.
diff --git a/misc/Makefile b/misc/Makefile
new file mode 100644
index 0000000..84ff360
--- /dev/null
+++ b/misc/Makefile
@@ -0,0 +1 @@
+include ../category.mk
diff --git a/misc/category.mk b/misc/category.mk
new file mode 100644
index 0000000..39b89ea
--- /dev/null
+++ b/misc/category.mk
@@ -0,0 +1 @@
+include ../../gar.mk
diff --git a/misc/detektive/Makefile b/misc/detektive/Makefile
new file mode 100644
index 0000000..6666f8d
--- /dev/null
+++ b/misc/detektive/Makefile
@@ -0,0 +1,15 @@
+GARNAME = detektive
+GARVERSION = 0.1
+CATEGORIES = misc
+DISTFILES = detektive.sh mandrake-91.lst mandrake-92.lst mandrake-101.lst suse-81.lst suse-82.lst suse-90.lst suse-91.lst suse-92.lst
+
+DESCRIPTION = Detektive investigates the system for missing binary packages
+
+BUILD_SCRIPTS = none
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
+
+build-none:
+ @cd work;sh ./detektive.sh
diff --git a/misc/detektive/checksums b/misc/detektive/checksums
new file mode 100644
index 0000000..42e88e6
--- /dev/null
+++ b/misc/detektive/checksums
@@ -0,0 +1,9 @@
+8f0183dbf64eaa7aa6d3db15ee905c8c download/mandrake-92.lst
+91729f5121253a82ecfc6b8017a266df download/suse-81.lst
+e19cc3529110b88ccdb332a533639b87 download/suse-82.lst
+c13709eb0a42bd46c1b8711ba8002240 download/suse-90.lst
+bf6e17e9c284f303a92bc98f213ce591 download/suse-91.lst
+bb85926456dffafa6956b41f4c013758 download/mandrake-91.lst
+6a69f51f12ec8cc067a1b9007a6039c3 download/detektive.sh
+9131ecb81d9732e84582f3a0687d8b3e download/mandrake-101.lst
+d81ec46d00c1eb9f270c0eb23da20e6e download/suse-92.lst
diff --git a/misc/detektive/files/detektive.sh b/misc/detektive/files/detektive.sh
new file mode 100755
index 0000000..297f9ed
--- /dev/null
+++ b/misc/detektive/files/detektive.sh
@@ -0,0 +1,75 @@
+#!/bin/sh
+
+echo "\"Detektive\" investigates your system and tries to list missing packages."
+echo
+
+mandrake()
+{
+ file="/etc/mandrake-release"
+ if [ ! "`grep 9.1 $file`" = "" ]; then
+ echo "Detected Mandrake 9.1 as distribution."
+ rpm_list="mandrake-91.lst"
+ elif [ ! "`grep 9.2 $file`" = "" ]; then
+ echo "Detected Mandrake 9.2 as distribution."
+ rpm_list="mandrake-92.lst"
+ elif [ ! "`grep 10.1 $file`" = "" ]; then
+ echo "Detected Mandrake 10.1 as distribution."
+ rpm_list="mandrake-101.lst"
+ else
+ echo "Detected unsupported Mandrake distribution."
+ exit
+ fi
+}
+
+suse()
+{
+ file="/etc/SuSE-release"
+ if [ ! "`grep 8.1 $file`" = "" ]; then
+ echo "Detected SuSE 8.1 as distribution."
+ rpm_list="suse-81.lst"
+ elif [ ! "`grep 8.2 $file`" = "" ]; then
+ echo "Detected SuSE 8.2 as distribution."
+ rpm_list="suse-82.lst"
+ elif [ ! "`grep 9.0 $file`" = "" ]; then
+ echo "Detected SuSE 9.0 as distribution."
+ rpm_list="suse-90.lst"
+ elif [ ! "`grep 9.1 $file`" = "" ]; then
+ echo "Detected SuSE 9.1 as distribution."
+ rpm_list="suse-91.lst"
+ elif [ ! "`grep 9.2 $file`" = "" ]; then
+ echo "Detected SuSE 9.2 as distribution."
+ rpm_list="suse-92.lst"
+ else
+ echo "Detected unsupported SuSE distribution."
+ fi
+}
+
+if [ -f /etc/mandrake-release ]; then
+ mandrake
+elif [ -f /etc/SuSE-release ]; then
+ suse
+elif [ -f /etc/redhat-release ]; then
+ echo "Detected unsupported RedHat distribution."
+ exit
+fi
+
+if [ -z $rpm_list ]; then
+ echo "No supported distribution detected."
+else
+ echo
+ echo "Checking for known uninstalled rpm packages which may be missing:"
+
+ cat $rpm_list | \
+ while read package_file necessity comment;
+ do rpm -q -i $package_file 2>/dev/null >/dev/null;
+ if [ $? = "1" ]; then
+ echo " Package: $package_file ($necessity)";
+ if [ -n "$comment" ]; then
+ echo " $comment";
+ fi;
+ fi;
+ done;
+
+ echo
+ echo "If you have installed these from source you may ignore this list."
+fi
diff --git a/misc/detektive/files/mandrake-101.lst b/misc/detektive/files/mandrake-101.lst
new file mode 100644
index 0000000..0781c33
--- /dev/null
+++ b/misc/detektive/files/mandrake-101.lst
@@ -0,0 +1,23 @@
+libxorg-x11-devel REQUIRED
+gcc-c++ REQUIRED
+patch REQUIRED
+wget REQUIRED
+flex REQUIRED
+byacc REQUIRED
+zip REQUIRED
+libjpeg62-devel REQUIRED
+libxpm4 REQUIRED
+libxpm4-devel REQUIRED
+libungif4-devel REQUIRED
+libncurses5-devel REQUIRED
+libpng3-devel REQUIRED
+libopenssl0.9.7 REQUIRED
+libbzip2_1-devel REQUIRED
+libtiff3-devel REQUIRED
+libpcre0-devel REQUIRED
+libdb4.2-devel REQUIRED
+cups RECOMMENDED
+libsmbclient0 RECOMMENDED
+libsmbclient0-devel RECOMMENDED
+libldap2 RECOMMENDED "LDAP functionality of KAddressBook"
+xpdf OPTIONAL "Required by PDF kfile-Plugin"
diff --git a/misc/detektive/files/mandrake-91.lst b/misc/detektive/files/mandrake-91.lst
new file mode 100644
index 0000000..d600865
--- /dev/null
+++ b/misc/detektive/files/mandrake-91.lst
@@ -0,0 +1,17 @@
+XFree86-devel REQUIRED
+gcc-c++ REQUIRED
+patch REQUIRED
+wget REQUIRED
+flex REQUIRED
+zip REQUIRED
+libjpeg62-devel-6b-26mdk REQUIRED
+libxpm4-3.4k-23mdk REQUIRED
+libungif4-devel-4.1.0-19mdk REQUIRED
+libncurses5-devel-5.3-1.20030215.1mdk REQUIRED
+libpng3-devel-1.2.5-2mdk REQUIRED
+libopenssl0.9.7-devel-0.9.7a-1mdk REQUIRED
+libbzip2_1-devel-1.0.2-13mdk REQUIRED
+libtiff3-devel-3.5.7-6mdk REQUIRED
+cups RECOMMENDED
+libldap2 RECOMMENDED "LDAP functionality of KAddressBook"
+xpdf OPTIONAL "Required by PDF kfile-Plugin"
diff --git a/misc/detektive/files/mandrake-92.lst b/misc/detektive/files/mandrake-92.lst
new file mode 100644
index 0000000..bf6f48d
--- /dev/null
+++ b/misc/detektive/files/mandrake-92.lst
@@ -0,0 +1,22 @@
+XFree86-devel REQUIRED
+gcc-c++ REQUIRED
+patch REQUIRED
+wget REQUIRED
+flex REQUIRED
+yac REQUIRED
+zip REQUIRED
+libjpeg-devel REQUIRED
+libxpm-devel REQUIRED
+libungif-devel REQUIRED
+libncurses-devel REQUIRED
+libpng-devel REQUIRED
+libopenssl REQUIRED
+libbzip2-devel REQUIRED
+libtiff-devel REQUIRED
+libpcre-devel REQUIRED
+libdb4.1-devel REQUIRED
+cups RECOMMENDED
+libsmbclient0 RECOMMENDED
+libsmbclient0-devel RECOMMENDED
+libldap2 RECOMMENDED "LDAP functionality of KAddressBook"
+xpdf OPTIONAL "Required by PDF kfile-Plugin"
diff --git a/misc/detektive/files/suse-81.lst b/misc/detektive/files/suse-81.lst
new file mode 100644
index 0000000..f7ebd0f
--- /dev/null
+++ b/misc/detektive/files/suse-81.lst
@@ -0,0 +1,89 @@
+audiofile REQUIRED "For playing .WAV audio files"
+binutils REQUIRED
+bison REQUIRED
+db REQUIRED
+db-devel REQUIRED
+fileutils REQUIRED
+flex REQUIRED
+freetype REQUIRED "Required by Karbon14"
+freetype2 REQUIRED
+freetype2-devel REQUIRED
+gcc REQUIRED
+gdbm REQUIRED
+gdbm-devel REQUIRED
+gettext REQUIRED
+glibc REQUIRED
+glibc-devel REQUIRED
+gzip REQUIRED
+bzip2 REQUIRED
+libjpeg REQUIRED
+libpng REQUIRED
+libpng-devel REQUIRED
+make REQUIRED
+openmotif REQUIRED
+openmotif-devel REQUIRED
+openssl REQUIRED
+openssl-devel REQUIRED
+patch REQUIRED
+pcre REQUIRED
+slang-devel REQUIRED "Used by kdeaddons/noatun-plugins/noatunmadness"
+textutils REQUIRED
+wget REQUIRED
+xdevel REQUIRED
+xf86 REQUIRED
+xshared REQUIRED
+zlib REQUIRED
+zlib-devel REQUIRED
+alsa RECOMMENDED
+alsa-devel RECOMMENDED "For more advanced audio support"
+cdparanoia RECOMMENDED
+cups-libs RECOMMENDED
+cups-devel RECOMMENDED
+cvs RECOMMENDED "For Cervisia and KDevelop"
+des RECOMMENDED "Required if compiled with LDAP support"
+enscript RECOMMENDED
+fam RECOMMENDED "For efficient file/directory change notification"
+gdb RECOMMENDED "For creating backtraces when a program crashes"
+ghostscript-library RECOMMENDED "For PostScript/PDF support"
+gpg RECOMMENDED
+heimdal-devel RECOMMENDED "Required if compiled with LDAP support"
+htdig RECOMMENDED "Indexing and searching of KDevelop documentation"
+imlib RECOMMENDED
+imlib-devel RECOMMENDED "Required by kuickshow"
+java2-jre RECOMMENDED
+libgphoto2 RECOMMENDED "For accessing images on digital cameras"
+libogg RECOMMENDED
+libogg-devel RECOMMENDED
+libtiff RECOMMENDED
+libvorbis RECOMMENDED
+libvorbis-devel RECOMMENDED
+mesa RECOMMENDED
+mesa-devel RECOMMENDED
+mesaglu RECOMMENDED
+mesaglu-devel RECOMMENDED
+mesaglut RECOMMENDED
+mesaglut-devel RECOMMENDED
+mtools RECOMMENDED "For floppy:/ kio-slave"
+openldap2-client RECOMMENDED
+openldap2-devel RECOMMENDED "LDAP functionality of KAddressBook"
+pam RECOMMENDED
+pam-devel RECOMMENDED
+ppp RECOMMENDED "For dialup networking"
+sane RECOMMENDED "For scanner support"
+SDL RECOMMENDED
+SDL-devel RECOMMENDED "For some Noatun plugins"
+xanim RECOMMENDED "For aKtion!'s video engine"
+xf86_glx RECOMMENDED
+a2ps OPTIONAL "For KDevelop"
+autoconf OPTIONAL "For KDevelop"
+automake OPTIONAL "For KDevelop"
+doxygen OPTIONAL "For KDevelop documentation generation"
+gocr OPTIONAL
+perl OPTIONAL "Scripting in KSirc"
+python OPTIONAL
+python-devel OPTIONAL "Scripting in some KOffice components"
+rpm OPTIONAL
+rpm-devel OPTIONAL
+tetex OPTIONAL
+xpdf OPTIONAL "Required by PDF kfile-Plugin"
+xscreensaver OPTIONAL
diff --git a/misc/detektive/files/suse-82.lst b/misc/detektive/files/suse-82.lst
new file mode 100644
index 0000000..fa99f15
--- /dev/null
+++ b/misc/detektive/files/suse-82.lst
@@ -0,0 +1,88 @@
+audiofile REQUIRED "For playing .WAV audio files"
+binutils REQUIRED
+bison REQUIRED
+db REQUIRED
+db-devel REQUIRED
+coreutils REQUIRED
+flex REQUIRED
+freetype REQUIRED "Required by Karbon14"
+freetype2 REQUIRED
+freetype2-devel REQUIRED
+gcc REQUIRED
+gdbm REQUIRED
+gdbm-devel REQUIRED
+gettext REQUIRED
+glibc REQUIRED
+glibc-devel REQUIRED
+gzip REQUIRED
+bzip2 REQUIRED
+libjpeg REQUIRED
+libpng REQUIRED
+libpng-devel REQUIRED
+make REQUIRED
+openmotif REQUIRED
+openmotif-devel REQUIRED
+openssl REQUIRED
+openssl-devel REQUIRED
+patch REQUIRED
+pcre REQUIRED
+slang-devel REQUIRED "Used by kdeaddons/noatun-plugins/noatunmadness"
+wget REQUIRED
+XFree86-devel REQUIRED
+XFree86 REQUIRED
+XFree86-libs REQUIRED
+zlib REQUIRED
+zlib-devel REQUIRED
+alsa RECOMMENDED
+alsa-devel RECOMMENDED "For more advanced audio support"
+cdparanoia RECOMMENDED
+cups-libs RECOMMENDED
+cups-devel RECOMMENDED
+cvs RECOMMENDED "For Cervisia and KDevelop"
+des RECOMMENDED "Required if compiled with LDAP support"
+enscript RECOMMENDED
+fam RECOMMENDED "For efficient file/directory change notification"
+gdb RECOMMENDED "For creating backtraces when a program crashes"
+ghostscript-library RECOMMENDED "For PostScript/PDF support"
+gpg RECOMMENDED
+heimdal-devel RECOMMENDED "Required if compiled with LDAP support"
+htdig RECOMMENDED "Indexing and searching of KDevelop documentation"
+imlib RECOMMENDED
+imlib-devel RECOMMENDED "Required by kuickshow"
+java2-jre RECOMMENDED
+libgphoto2 RECOMMENDED "For accessing images on digital cameras"
+libogg RECOMMENDED
+libogg-devel RECOMMENDED
+libtiff RECOMMENDED
+libvorbis RECOMMENDED
+libvorbis-devel RECOMMENDED
+mesa RECOMMENDED
+mesa-devel RECOMMENDED
+mesaglu RECOMMENDED
+mesaglu-devel RECOMMENDED
+mesaglut RECOMMENDED
+mesaglut-devel RECOMMENDED
+mtools RECOMMENDED "For floppy:/ kio-slave"
+openldap2-client RECOMMENDED
+openldap2-devel RECOMMENDED "LDAP functionality of KAddressBook"
+pam RECOMMENDED
+pam-devel RECOMMENDED
+ppp RECOMMENDED "For dialup networking"
+sane RECOMMENDED "For scanner support"
+SDL RECOMMENDED
+SDL-devel RECOMMENDED "For some Noatun plugins"
+xanim RECOMMENDED "For aKtion!'s video engine"
+XFree86-GLX RECOMMENDED
+a2ps OPTIONAL "For KDevelop"
+autoconf OPTIONAL "For KDevelop"
+automake OPTIONAL "For KDevelop"
+doxygen OPTIONAL "For KDevelop documentation generation"
+gocr OPTIONAL
+perl OPTIONAL "Scripting in KSirc"
+python OPTIONAL
+python-devel OPTIONAL "Scripting in some KOffice components"
+rpm OPTIONAL
+rpm-devel OPTIONAL
+tetex OPTIONAL
+xpdf OPTIONAL "Required by PDF kfile-Plugin"
+xscreensaver OPTIONAL
diff --git a/misc/detektive/files/suse-90.lst b/misc/detektive/files/suse-90.lst
new file mode 100644
index 0000000..3ae3030
--- /dev/null
+++ b/misc/detektive/files/suse-90.lst
@@ -0,0 +1,84 @@
+audiofile REQUIRED "For playing .WAV audio files"
+binutils REQUIRED
+bison REQUIRED
+db REQUIRED
+db-devel REQUIRED
+coreutils REQUIRED
+flex REQUIRED
+freetype REQUIRED "Required by Karbon14"
+freetype2 REQUIRED
+freetype2-devel REQUIRED
+gcc REQUIRED
+gdbm REQUIRED
+gdbm-devel RECOMMENDED
+gettext REQUIRED
+glibc REQUIRED
+glibc-devel REQUIRED
+gzip REQUIRED
+bzip2 REQUIRED
+libjpeg REQUIRED
+libpng REQUIRED
+libpng-devel REQUIRED
+make REQUIRED
+openmotif REQUIRED
+openmotif-devel REQUIRED
+openssl REQUIRED
+openssl-devel REQUIRED
+patch REQUIRED
+pcre REQUIRED
+slang-devel REQUIRED "Used by kdeaddons/noatun-plugins/noatunmadness"
+wget REQUIRED
+XFree86-devel REQUIRED
+XFree86 REQUIRED
+XFree86-libs REQUIRED
+zlib REQUIRED
+zlib-devel REQUIRED
+alsa RECOMMENDED
+alsa-devel RECOMMENDED "For more advanced audio support"
+cdparanoia RECOMMENDED
+cups-libs RECOMMENDED
+cups-devel RECOMMENDED
+cvs RECOMMENDED "For Cervisia and KDevelop"
+des RECOMMENDED "Required if compiled with LDAP support"
+enscript RECOMMENDED
+fam RECOMMENDED "For efficient file/directory change notification"
+gdb RECOMMENDED "For creating backtraces when a program crashes"
+ghostscript-library RECOMMENDED "For PostScript/PDF support"
+gpg RECOMMENDED
+heimdal-devel RECOMMENDED "Required if compiled with LDAP support"
+htdig RECOMMENDED "Indexing and searching of KDevelop documentation"
+imlib RECOMMENDED
+imlib-devel RECOMMENDED "Required by kuickshow"
+java2-jre RECOMMENDED
+libgphoto2 RECOMMENDED "For accessing images on digital cameras"
+libogg RECOMMENDED
+libogg-devel RECOMMENDED
+libtiff RECOMMENDED
+libvorbis RECOMMENDED
+libvorbis-devel RECOMMENDED
+mesa RECOMMENDED
+mesaglut RECOMMENDED
+mesaglut-devel RECOMMENDED
+mtools RECOMMENDED "For floppy:/ kio-slave"
+openldap2-client RECOMMENDED
+openldap2-devel RECOMMENDED "LDAP functionality of KAddressBook"
+pam RECOMMENDED
+pam-devel RECOMMENDED
+ppp RECOMMENDED "For dialup networking"
+sane RECOMMENDED "For scanner support"
+SDL RECOMMENDED
+SDL-devel RECOMMENDED "For some Noatun plugins"
+xanim RECOMMENDED "For aKtion!'s video engine"
+a2ps OPTIONAL "For KDevelop"
+autoconf OPTIONAL "For KDevelop"
+automake OPTIONAL "For KDevelop"
+doxygen OPTIONAL "For KDevelop documentation generation"
+gocr OPTIONAL
+perl OPTIONAL "Scripting in KSirc"
+python OPTIONAL
+python-devel OPTIONAL "Scripting in some KOffice components"
+rpm OPTIONAL
+rpm-devel OPTIONAL
+tetex OPTIONAL
+xpdf OPTIONAL "Required by PDF kfile-Plugin"
+xscreensaver OPTIONAL
diff --git a/misc/detektive/files/suse-91.lst b/misc/detektive/files/suse-91.lst
new file mode 100644
index 0000000..2a7d403
--- /dev/null
+++ b/misc/detektive/files/suse-91.lst
@@ -0,0 +1,85 @@
+audiofile REQUIRED "For playing .WAV audio files"
+binutils REQUIRED
+bison REQUIRED
+db REQUIRED
+db-devel REQUIRED
+coreutils REQUIRED
+flex REQUIRED
+freetype REQUIRED "Required by Karbon14"
+freetype2 REQUIRED
+freetype2-devel REQUIRED
+gcc REQUIRED
+gdbm REQUIRED
+gdbm-devel RECOMMENDED
+gettext REQUIRED
+glibc REQUIRED
+glibc-devel REQUIRED
+gzip REQUIRED
+bzip2 REQUIRED
+libjpeg REQUIRED
+libpng REQUIRED
+libpng-devel REQUIRED
+make REQUIRED
+openmotif REQUIRED
+openmotif-devel REQUIRED
+openssl REQUIRED
+openssl-devel REQUIRED
+patch REQUIRED
+pcre REQUIRED
+slang-devel REQUIRED "Used by kdeaddons/noatun-plugins/noatunmadness"
+wget REQUIRED
+XFree86-devel REQUIRED
+XFree86 REQUIRED
+XFree86-libs REQUIRED
+zlib REQUIRED
+zlib-devel REQUIRED
+alsa RECOMMENDED
+alsa-devel RECOMMENDED "For more advanced audio support"
+cdparanoia RECOMMENDED
+cups-libs RECOMMENDED
+cups-devel RECOMMENDED
+cvs RECOMMENDED "For Cervisia and KDevelop"
+des RECOMMENDED "Required if compiled with LDAP support"
+enscript RECOMMENDED
+fam RECOMMENDED "For efficient file/directory change notification"
+gdb RECOMMENDED "For creating backtraces when a program crashes"
+ghostscript-library RECOMMENDED "For PostScript/PDF support"
+gpg RECOMMENDED
+heimdal-devel RECOMMENDED "Required if compiled with LDAP support"
+htdig RECOMMENDED "Indexing and searching of KDevelop documentation"
+imlib RECOMMENDED
+imlib-devel RECOMMENDED "Required by kuickshow"
+java2-jre RECOMMENDED
+libgphoto2 RECOMMENDED "For accessing images on digital cameras"
+libogg RECOMMENDED
+libogg-devel RECOMMENDED
+libtiff RECOMMENDED
+libvorbis RECOMMENDED
+libvorbis-devel RECOMMENDED
+freeglut RECOMMENDED
+freeglut-devel RECOMMENDED
+mtools RECOMMENDED "For floppy:/ kio-slave"
+openldap2-client RECOMMENDED
+openldap2-devel RECOMMENDED "LDAP functionality of KAddressBook"
+pam RECOMMENDED
+pam-devel RECOMMENDED
+ppp RECOMMENDED "For dialup networking"
+sane RECOMMENDED "For scanner support"
+SDL RECOMMENDED
+SDL-devel RECOMMENDED "For some Noatun plugins"
+xanim RECOMMENDED "For aKtion!'s video engine"
+opensc RECOMMENDED
+opensc-devel RECOMMENDED
+a2ps OPTIONAL "For KDevelop"
+autoconf OPTIONAL "For KDevelop"
+automake OPTIONAL "For KDevelop"
+doxygen OPTIONAL "For KDevelop documentation generation"
+gocr OPTIONAL
+perl OPTIONAL "Scripting in KSirc"
+python OPTIONAL
+python-devel OPTIONAL "Scripting in some KOffice components"
+rpm OPTIONAL
+rpm-devel OPTIONAL
+tetex OPTIONAL
+xpdf OPTIONAL "Required by PDF kfile-Plugin"
+xscreensaver OPTIONAL
diff --git a/misc/detektive/files/suse-92.lst b/misc/detektive/files/suse-92.lst
new file mode 100644
index 0000000..3c12a3d
--- /dev/null
+++ b/misc/detektive/files/suse-92.lst
@@ -0,0 +1,88 @@
+audiofile REQUIRED "For playing .WAV audio files"
+binutils REQUIRED
+bison REQUIRED
+db REQUIRED
+db-devel REQUIRED
+coreutils REQUIRED
+flex REQUIRED
+freetype REQUIRED "Required by Karbon14"
+freetype2 REQUIRED
+freetype2-devel REQUIRED
+gcc REQUIRED
+gdbm REQUIRED
+gdbm-devel RECOMMENDED
+gettext REQUIRED
+glibc REQUIRED
+glibc-devel REQUIRED
+gzip REQUIRED
+bzip2 REQUIRED
+libjpeg REQUIRED
+libjpeg-devel REQUIRED
+libpng REQUIRED
+libpng-devel REQUIRED
+make REQUIRED
+openmotif REQUIRED
+openmotif-devel REQUIRED
+openssl REQUIRED
+openssl-devel REQUIRED
+patch REQUIRED
+pcre REQUIRED
+pcre-devel REQUIRED
+slang-devel REQUIRED "Used by kdeaddons/noatun-plugins/noatunmadness"
+wget REQUIRED
+xorg-x11-devel REQUIRED
+xorg-x11 REQUIRED
+xorg-x11-libs REQUIRED
+zlib REQUIRED
+zlib-devel REQUIRED
+libstdc++-devel REQUIRED
+alsa RECOMMENDED
+alsa-devel RECOMMENDED "For more advanced audio support"
+cdparanoia RECOMMENDED
+cups-libs RECOMMENDED
+cups-devel RECOMMENDED
+cvs RECOMMENDED "For Cervisia and KDevelop"
+des RECOMMENDED "Required if compiled with LDAP support"
+enscript RECOMMENDED
+fam RECOMMENDED "For efficient file/directory change notification"
+gdb RECOMMENDED "For creating backtraces when a program crashes"
+ghostscript-library RECOMMENDED "For PostScript/PDF support"
+gpg RECOMMENDED
+heimdal-devel RECOMMENDED "Required if compiled with LDAP support"
+htdig RECOMMENDED "Indexing and searching of KDevelop documentation"
+imlib RECOMMENDED
+imlib-devel RECOMMENDED "Required by kuickshow"
+libgphoto2 RECOMMENDED "For accessing images on digital cameras"
+libogg RECOMMENDED
+libogg-devel RECOMMENDED
+libtiff RECOMMENDED
+libtiff-devel RECOMMENDED
+libvorbis RECOMMENDED
+libvorbis-devel RECOMMENDED
+freeglut RECOMMENDED
+freeglut-devel RECOMMENDED
+mtools RECOMMENDED "For floppy:/ kio-slave"
+openldap2-client RECOMMENDED
+openldap2-devel RECOMMENDED "LDAP functionality of KAddressBook"
+pam RECOMMENDED
+pam-devel RECOMMENDED
+ppp RECOMMENDED "For dialup networking"
+sane RECOMMENDED "For scanner support"
+SDL RECOMMENDED
+SDL-devel RECOMMENDED "For some Noatun plugins"
+xanim RECOMMENDED "For aKtion!'s video engine"
+opensc RECOMMENDED
+opensc-devel RECOMMENDED
+a2ps OPTIONAL "For KDevelop"
+autoconf OPTIONAL "For KDevelop"
+automake OPTIONAL "For KDevelop"
+doxygen OPTIONAL "For KDevelop documentation generation"
+gocr OPTIONAL
+perl OPTIONAL "Scripting in KSirc"
+python OPTIONAL
+python-devel OPTIONAL "Scripting in some KOffice components"
+rpm OPTIONAL
+rpm-devel OPTIONAL
+tetex OPTIONAL
+xpdf OPTIONAL "Required by PDF kfile-Plugin"
+xscreensaver OPTIONAL
diff --git a/misc/gnupg/Makefile b/misc/gnupg/Makefile
new file mode 100644
index 0000000..7afa6d7
--- /dev/null
+++ b/misc/gnupg/Makefile
@@ -0,0 +1,18 @@
+GARNAME = gnupg
+GARVERSION = 2.0.3
+CATEGORIES = misc
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+LIBDEPS = libs/pth libs/libgcrypt libs/libassuan libs/libksba
+
+MASTER_SITES = ftp://ftp.mirror.ac.uk/sites/ftp.gnupg.org/gnupg/ ftp://gd.tuwien.ac.at/privacy/gnupg/gnupg/
+
+DESCRIPTION = GNU Privacy Guard
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --enable-agent-only
+
+include ../category.mk
diff --git a/misc/gnupg/checksums b/misc/gnupg/checksums
new file mode 100644
index 0000000..ab99430
--- /dev/null
+++ b/misc/gnupg/checksums
@@ -0,0 +1 @@
+4e33a5d35583da439f1bd26aa7e7042a download/gnupg-2.0.3.tar.bz2
diff --git a/misc/graphicsmagick/Makefile b/misc/graphicsmagick/Makefile
new file mode 100644
index 0000000..fd048aa
--- /dev/null
+++ b/misc/graphicsmagick/Makefile
@@ -0,0 +1,18 @@
+GARNAME = GraphicsMagick
+GARVERSION = 1.1.7
+CATEGORIES = misc
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://belnet.dl.sourceforge.net/sourceforge/graphicsmagick/ http://switch.dl.sourceforge.net/sourceforge/graphicsmagick/
+
+LIBDEPS = libs/libexif
+
+DESCRIPTION = graphicsmagick
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --without-perl
+
+include ../category.mk
diff --git a/misc/graphicsmagick/checksums b/misc/graphicsmagick/checksums
new file mode 100644
index 0000000..1675693
--- /dev/null
+++ b/misc/graphicsmagick/checksums
@@ -0,0 +1 @@
+f75d830ca623bf10385b3ad62c48437a download/GraphicsMagick-1.1.7.tar.bz2
diff --git a/misc/graphviz/Makefile b/misc/graphviz/Makefile
new file mode 100644
index 0000000..99314fc
--- /dev/null
+++ b/misc/graphviz/Makefile
@@ -0,0 +1,16 @@
+GARNAME = graphviz
+GARVERSION = 2.12
+CATEGORIES = misc
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://www.graphviz.org/pub/graphviz/ARCHIVE/
+
+DESCRIPTION = graphviz
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --disable-lua
+
+include ../category.mk
diff --git a/misc/graphviz/checksums b/misc/graphviz/checksums
new file mode 100644
index 0000000..1f7cfdd
--- /dev/null
+++ b/misc/graphviz/checksums
@@ -0,0 +1 @@
+e5547bc0ec47943c72f5c3e2b5dff58f download/graphviz-2.12.tar.gz
diff --git a/misc/imagemagick/Makefile b/misc/imagemagick/Makefile
new file mode 100644
index 0000000..ca180e2
--- /dev/null
+++ b/misc/imagemagick/Makefile
@@ -0,0 +1,20 @@
+GARNAME = ImageMagick
+GARVERSION = 6.3.3-9
+CATEGORIES = misc
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = http://belnet.dl.sourceforge.net/sourceforge/imagemagick/ http://switch.dl.sourceforge.net/sourceforge/imagemagick/
+
+LIBDEPS = libs/libexif
+
+DESCRIPTION = imagemagick
+
+WORKSRC = $(WORKDIR)/$(GARNAME)-6.3.3
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS) --without-perl
+
+include ../category.mk
diff --git a/misc/imagemagick/checksums b/misc/imagemagick/checksums
new file mode 100644
index 0000000..adb9daa
--- /dev/null
+++ b/misc/imagemagick/checksums
@@ -0,0 +1 @@
+7f4dc5b2c500e47479e26f50759a7d03 download/ImageMagick-6.3.3-9.tar.bz2
diff --git a/misc/pkgconfig/Makefile b/misc/pkgconfig/Makefile
new file mode 100644
index 0000000..67bb7f0
--- /dev/null
+++ b/misc/pkgconfig/Makefile
@@ -0,0 +1,16 @@
+GARNAME = pkg-config
+GARVERSION = 0.21
+CATEGORIES = misc
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+MASTER_SITES = http://pkgconfig.freedesktop.org/releases/
+
+DESCRIPTION = Returns metainformation about installed libraries
+
+CONFIGURE_SCRIPTS = $(WORKSRC)/configure
+BUILD_SCRIPTS = $(WORKSRC)/Makefile
+INSTALL_SCRIPTS = $(WORKSRC)/Makefile
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include ../category.mk
diff --git a/misc/pkgconfig/checksums b/misc/pkgconfig/checksums
new file mode 100644
index 0000000..44fc56b
--- /dev/null
+++ b/misc/pkgconfig/checksums
@@ -0,0 +1 @@
+476f45fab1504aac6697aa7785f0ab91 download/pkg-config-0.21.tar.gz
diff --git a/misc/ttf-bitstream-vera/Makefile b/misc/ttf-bitstream-vera/Makefile
new file mode 100644
index 0000000..5e20f08
--- /dev/null
+++ b/misc/ttf-bitstream-vera/Makefile
@@ -0,0 +1,19 @@
+GARNAME = ttf-bitstream-vera
+GARVERSION = 1.10
+CATEGORIES = bootstrap
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2
+
+MASTER_SITES = ftp://ftp.gnome.org/pub/gnome/sources/ttf-bitstream-vera/1.10/ http://ftp.linux.org.uk/mirrors/ftp.gnome.org/sources/ttf-bitstream-vera/1.10/
+
+DESCRIPTION = Free font
+
+INSTALL_SCRIPTS = custom
+
+FONTSDIR = $(datadir)/fonts/truetype
+
+include ../category.mk
+
+install-custom:
+ @install -d $(FONTSDIR)
+ @install -m 644 $(WORKSRC)/*.ttf $(FONTSDIR)
+ @$(MAKECOOKIE)
diff --git a/misc/ttf-bitstream-vera/checksums b/misc/ttf-bitstream-vera/checksums
new file mode 100644
index 0000000..e578f2b
--- /dev/null
+++ b/misc/ttf-bitstream-vera/checksums
@@ -0,0 +1 @@
+bb22bd5b4675f5dbe17c6963d8c00ed6 download/ttf-bitstream-vera-1.10.tar.bz2