freebsd-ports/x11-themes/slim-themes/Makefile
Martin Wilke 93dfc64849 - Fix patching issue with parallel dimensions
PR:		146136
Submitted by:	Eygene Ryabinkin <rea-fbsd@codelabs.ru> (maintainer)
2010-05-02 11:15:53 +00:00

109 lines
3.8 KiB
Makefile

# New ports collection makefile for: slim-themes
# Date Created: 22 May 2009
# Whom: Eygene Ryabinkin <rea-fbsd@codelabs.ru>
#
# $FreeBSD$
#
PORTNAME= slim-themes
PORTVERSION= 1.0.0
PORTREVISION= 1
CATEGORIES= x11-themes
MASTER_SITES= ${MASTER_SITE_BERLIOS}
MASTER_SITE_SUBDIR= slim
DISTFILES=
MAINTAINER= rea-fbsd@codelabs.ru
COMMENT= Theme pack for SLiM login app
# But that's not all, see below.
OPTIONS= ALL_THEMES "Include all themes" on
NO_BUILD= yes
NO_WRKSUBDIR= yes
SHAREMODE= 644
THEMEDIR_REL= share/slim/themes
THEMEDIR= ${PREFIX}/${THEMEDIR_REL}
PLIST_SUB+= THEMEDIR=${THEMEDIR_REL}
# Format is 'variable name%description%archive name%unpacked dir%dest dir'
# I am substituting ' ' -> '+' because make in 6.x isn't able to properly
# catch quoted strings with spaces. 7.x and 8.x are fine with this, so
# once 6.x will be deorbited, we could switch just to spaces.
THEMELIST= GENTOO_SIMPLE%"Gentoo+simple+theme"%slim-gentoo-simple.tar.bz2%slim-gentoo-simple%gentoo-simple \
ARCHLINUX_SIMPLE%"ArchLinux+simple+theme"%slim-archlinux-simple.tar.gz%slim-archlinux-simple%archlinux-simple \
DEBIAN_MOREBLUE%"Debian+moreblue+theme"%slim-debian-moreblue.tar.bz2%debian-moreblue%debian-moreblue \
FINGERPRINT%"Fingerprint+theme"%slim-fingerprint.tar.gz%fingerprint%fingerprint \
FLAT%"Flat+theme"%slim-flat.tar.gz%flat%flat \
LAKE%"Lake+theme"%slim-lake.tar.gz%lake%lake \
RAINBOW%"Rainbow+theme"%slim-rainbow.tar.gz%rainbow%rainbow \
REAR_WINDOW%"Rear+Window+theme"%slim-rear-window.tar.gz%rear-window%rear-window \
SCOTLAND_ROAD%"Scotland+Road+theme"%slim-scotland-road.tar.gz%scotland-road%scotland-road \
SUBWAY%"Subway+theme"%slim-subway.tar.gz%subway%subway \
WAVE%"Wave+theme"%slim-wave.tar.gz%wave%wave \
LUNAR_LINUX%"Lunar+Linux+theme"%slim-lunar-0.4.tar.bz2%slim-lunar-0.4%lunar \
ZENWALK%"Zenwalk+theme"%slim-zenwalk.tar.gz%Zenwalk%zenwalk \
PARALLEL_DIMS%"Parallel+Dimensions+theme"%slim-parallel-dimensions.tar.gz%parallel-dimensions%parallel-dimensions \
CAPERNOITED%"Capernoited+theme"%slim-capernoited.tar.gz%capernoited%capernoited \
MINDLOCK%"Mindlock+theme"%slim-mindlock.tar.gz%mindlock%mindlock \
FLOWER2%"Flower2+theme"%slim-flower2.tar.gz%flower2%flower2
# Pollute OPTIONS and DISTFILES. Cool magic ;))
# We're using immediate assignment and two variables, because there is
# no addition (+=) operator with immediate assignment.
.for t in ${THEMELIST}
n= ${t:C/^([^%]*)%.*$/\\1/1}
d= ${t:C/^[^%]*%[^%]*%([^%]*)%.*$/\\1/1}
desc= ${t:C/^[^%]*%([^%]*)%.*$/\\1/1:C/\+/ /g}
sdir= ${t:C/^[^%]*%[^%]*%[^%]*%([^%]*)%.*$/\\1/1}
ddir= ${t:C/^[^%]*%[^%]*%[^%]*%[^%]*%([^%]*)$/\\1/1}
${n}_NAME:= ${n}
${n}_DIST:= ${d}
${n}_SDIR:= ${sdir}
${n}_DDIR:= ${ddir}
NEWOPTS:= ${OPTIONS} ${n} ${desc} off
OPTIONS:= ${NEWOPTS}
NEWTHEMES:= ${ALLTHEMES} ${n}
ALLTHEMES:= ${NEWTHEMES}
.endfor # t in ${THEMELIST}
.include <bsd.port.pre.mk>
.for n in ${ALLTHEMES}
.if defined(WITH_ALL_THEMES) || defined(WITH_${n})
WITH_${n}= yes
NEWDISTFILES:= ${DISTFILES} ${${n}_DIST}
DISTFILES:= ${NEWDISTFILES}
SEEN_THEMES= yes
NEW_PLIST_SUB:= ${PLIST_SUB} ${n}=""
PLIST_SUB:= ${NEW_PLIST_SUB}
.else
NEW_PLIST_SUB:= ${PLIST_SUB} ${n}="@comment "
PLIST_SUB:= ${NEW_PLIST_SUB}
.endif # defined(WITH_ALL_THEMES) || defined(WITH_${n})
.endfor # n in ${THEMELIST}
.if !defined(SEEN_THEMES)
IGNORE= at least one theme must be selected
.endif
.if defined(WITH_PARALLEL_DIMS)
EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-parallel-dimensions-slim.theme
post-patch:
@${RM} ${WRKSRC}/parallel-dimensions/slim.theme.orig
.endif # defined(WITH_PARALLEL_DIMS)
# Install selected themes. Another regexp voodoo, yay! \o/
do-install:
${MKDIR} ${THEMEDIR}
.for n in ${ALLTHEMES}
.if defined(WITH_${n})
${MKDIR} ${THEMEDIR}/${${n}_DDIR}
cd "${WRKSRC}/${${n}_SDIR}" && \
${COPYTREE_SHARE} . ${THEMEDIR}/${${n}_DDIR}
.endif # defined(WITH_${n})
.endfor # t in ${THEMELIST}
.include <bsd.port.post.mk>