1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-29 05:38:00 +00:00

x11-themes/slim-themes: Simplify

This commit is contained in:
Tobias Kortkamp 2021-06-27 07:08:45 +02:00
parent eddbea3915
commit 59b13a1837
No known key found for this signature in database
GPG Key ID: A4F09FB73CC51F61

View File

@ -7,13 +7,13 @@ CATEGORIES= x11-themes
MASTER_SITES= http://dist.codelabs.ru/fbsd/ports/slim-themes/:new_themes \
http://dist.codelabs.ru/fbsd/ports/slim-themes/:old_themes \
SF/slim.berlios/:old_themes
DISTFILES=
MAINTAINER= d.oriented@gmail.com
COMMENT= Theme pack for SLiM login app
RUN_DEPENDS= slim>=0:x11/slim
NO_ARCH= yes
NO_BUILD= yes
NO_WRKSUBDIR= yes
SHAREMODE= 644
@ -21,16 +21,12 @@ THEMEDIR_REL= share/slim/themes
THEMEDIR= ${PREFIX}/${THEMEDIR_REL}
PLIST_SUB+= THEMEDIR=${THEMEDIR_REL}
OPTIONS_DEFINE= # empty
OPTIONS_MULTI= THEME # enforces at least one choice
OPTIONS_MULTI= THEME
OPTIONS_SUB= yes
THEME_DESC= Available SLiM Themes
# Format is 'variable name%description%archive name%unpacked dir%dest
# dir%master site tag'
# 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%old_themes \
ARCHLINUX_SIMPLE%ArchLinux+simple+theme%slim-archlinux-simple.tar.gz%slim-archlinux-simple%archlinux-simple%old_themes \
DEBIAN_MOREBLUE%Debian+moreblue+theme%slim-debian-moreblue.tar.bz2%debian-moreblue%debian-moreblue%old_themes \
@ -51,42 +47,18 @@ THEMELIST= GENTOO_SIMPLE%Gentoo+simple+theme%slim-gentoo-simple.tar.bz2%slim-gen
FREEBSD%FreeBSD+theme%fbsd-slim-theme.tar.bz2%fbsd%fbsd%new_themes \
GNEWSENSE%gNewSense+theme%slim-gnewsense-1.1.tar.bz2%slim-gnewsense-1.1%gnewsense%new_themes
# 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}
mtag= ${t:C/^[^%]*%[^%]*%[^%]*%[^%]*%[^%]*%([^%]*)$/\\1/1}
.if ${mtag} == ""
${n}_DIST:= ${d}
.else
${n}_DIST:= ${d}:${mtag}
.endif
${n}_SDIR:= ${sdir}
${n}_DDIR:= ${ddir}
OPTIONS_MULTI_THEME:= ${OPTIONS_MULTI_THEME} ${n}
A+= ${n}
${n}_DESC:= ${desc}
NEWTHEMES:= ${ALLTHEMES} ${n}
ALLTHEMES:= ${NEWTHEMES}
.endfor # t in ${THEMELIST}
.for n desc d sdir ddir mtag in ${THEMELIST:S/%/ /g}
${n}_DISTFILES= ${d}:${mtag}
${n}_SDIR= ${sdir}
${n}_DDIR= ${ddir}
OPTIONS_MULTI_THEME+= ${n}
${n}_DESC= ${desc:S/+/ /g}
.endfor
OPTIONS_DEFAULT= ${OPTIONS_MULTI_THEME}
.include <bsd.port.options.mk>
.for n in ${ALLTHEMES}
. if ${PORT_OPTIONS:M${n}}
NEWDISTFILES:= ${DISTFILES} ${${n}_DIST}
DISTFILES:= ${NEWDISTFILES}
. endif
.endfor
.if ${PORT_OPTIONS:MPARALLEL_DIMS}
EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-parallel-dimensions-slim.theme
@ -94,15 +66,14 @@ post-patch:
@${RM} ${WRKSRC}/parallel-dimensions/slim.theme.orig
.endif # ${PORT_OPTIONS:MPARALLEL_DIMS}
# Install selected themes. Another regexp voodoo, yay! \o/
do-install:
${MKDIR} ${STAGEDIR}${THEMEDIR}
.for n in ${ALLTHEMES}
.for n in ${OPTIONS_MULTI_THEME}
.if ${PORT_OPTIONS:M${n}}
${MKDIR} ${STAGEDIR}${THEMEDIR}/${${n}_DDIR}
cd "${WRKSRC}/${${n}_SDIR}" && \
${COPYTREE_SHARE} . ${STAGEDIR}${THEMEDIR}/${${n}_DDIR}
.endif # ${PORT_OPTIONS:M${n}}
.endfor # t in ${THEMELIST}
.endfor
.include <bsd.port.mk>