From 69b3b985f08b64b73a5f6b039bd35582ba79ebc9 Mon Sep 17 00:00:00 2001 From: bentley Date: Thu, 11 Jul 2024 12:54:41 +0000 Subject: [PATCH] Rework font install target to accept filenames instead of file extensions. This means instead of setting MODFONT_TYPES to an extension like "otf", font ports now specify filenames to install (wildcards allowed) like MODFONT_FONTFILES=*.otf. ok sthen@ --- fonts/alkalami/Makefile | 2 +- fonts/atkinson-hyperlegible/Makefile | 2 +- fonts/blockzone/Makefile | 6 +----- fonts/cascadia-code/Makefile | 8 ++++---- fonts/ecoliercourt-fonts/Makefile | 4 ++-- fonts/font-awesome/Makefile | 13 ++++--------- fonts/hermit-font/Makefile | 2 +- fonts/ibm-plex/Makefile | 18 +++++++----------- fonts/inconsolata-font/Makefile | 6 +++--- fonts/intel-one-mono/Makefile | 14 +++++--------- fonts/mada/Makefile | 10 +++------- fonts/migmix/Makefile | 7 +++---- fonts/migu/Makefile | 5 ++--- fonts/nerd-fonts/Makefile.inc | 2 +- fonts/nerd-fonts/codenewroman/Makefile | 2 +- fonts/recursive/Makefile | 14 ++++++-------- fonts/sunscreen/Makefile | 2 +- fonts/vollkorn/Makefile | 13 ++++--------- fonts/zh-wqy-zenhei-ttf/Makefile | 4 ++-- infrastructure/mk/font.port.mk | 16 ++++++++-------- 20 files changed, 60 insertions(+), 90 deletions(-) diff --git a/fonts/alkalami/Makefile b/fonts/alkalami/Makefile index b92aeb00052..f7c4b37ad6d 100644 --- a/fonts/alkalami/Makefile +++ b/fonts/alkalami/Makefile @@ -19,7 +19,7 @@ MODULES = font NO_BUILD = Yes NO_TEST = Yes -MODFONT_TYPES = ttf +MODFONT_FONTFILES = *.ttf MODFONT_DOCFILES = FONTLOG.txt README.txt .include diff --git a/fonts/atkinson-hyperlegible/Makefile b/fonts/atkinson-hyperlegible/Makefile index d07e24ddaa3..b878100cd68 100644 --- a/fonts/atkinson-hyperlegible/Makefile +++ b/fonts/atkinson-hyperlegible/Makefile @@ -13,7 +13,7 @@ HOMEPAGE = https://brailleinstitute.org/freefont PERMIT_PACKAGE = Yes MODULES = font -MODFONT_TYPES = otf +MODFONT_FONTFILES = *.otf SITES = https://brailleinstitute.org/wp-content/uploads/atkinson-hyperlegible-font/ SITES.doc = https://brailleinstitute.org/wp-content/uploads/2020/11/ diff --git a/fonts/blockzone/Makefile b/fonts/blockzone/Makefile index 47d93f2eda3..dbafc87e56f 100644 --- a/fonts/blockzone/Makefile +++ b/fonts/blockzone/Makefile @@ -20,10 +20,6 @@ MODULES = font NO_BUILD = Yes NO_TEST = Yes -DOCDIR = ${PREFIX}/share/doc/blockzone - -post-install: - ${INSTALL_DATA_DIR} ${DOCDIR} - ${INSTALL_DATA} ${WRKSRC}/LICENSE ${DOCDIR} +MODFONT_DOCFILES = LICENSE .include diff --git a/fonts/cascadia-code/Makefile b/fonts/cascadia-code/Makefile index c54c8963dc9..87e8a3f33d5 100644 --- a/fonts/cascadia-code/Makefile +++ b/fonts/cascadia-code/Makefile @@ -5,6 +5,8 @@ PKGNAME = cascadia-code-${V} EXTRACT_SUFX = .zip CATEGORIES = fonts x11 +MODFONT_FAMILY = cascadia-code + # SIL OFL 1.1 PERMIT_PACKAGE = Yes @@ -16,9 +18,7 @@ MODULES = font NO_BUILD = Yes NO_TEST = Yes -do-install: - ${INSTALL_DATA_DIR} ${PREFIX}/share/fonts/cascadia - ${INSTALL_DATA} ${WRKDIR}/ttf/*.ttf ${PREFIX}/share/fonts/cascadia - ${INSTALL_DATA} ${WRKDIR}/otf/static/*.otf ${PREFIX}/share/fonts/cascadia +MODFONT_FONTDIR = ${PREFIX}/share/fonts/cascadia +MODFONT_FONTFILES = ttf/*.ttf otf/static/*.otf .include diff --git a/fonts/ecoliercourt-fonts/Makefile b/fonts/ecoliercourt-fonts/Makefile index c7ff60bbf1b..0b04a4c532c 100644 --- a/fonts/ecoliercourt-fonts/Makefile +++ b/fonts/ecoliercourt-fonts/Makefile @@ -21,7 +21,7 @@ EXTRACT_ONLY= NO_BUILD= Yes NO_TEST= Yes -pre-install: - cp ${FULLDISTDIR}/*.ttf ${WRKSRC} +WRKDIST = ${FULLDISTDIR} +MODFONT_FONTFILES = *.ttf .include diff --git a/fonts/font-awesome/Makefile b/fonts/font-awesome/Makefile index ce9183879f5..6138890546f 100644 --- a/fonts/font-awesome/Makefile +++ b/fonts/font-awesome/Makefile @@ -4,6 +4,8 @@ V = 6.5.2 PKGNAME = font-awesome-${V} DISTNAME = fontawesome-free-${V}-desktop +MODFONT_FAMILY = font-awesome + CATEGORIES= fonts HOMEPAGE = https://fontawesome.com @@ -17,18 +19,11 @@ EXTRACT_SUFX = .zip PERMIT_PACKAGE= Yes MODULES = font -MODFONT_TYPES = otf NO_BUILD = Yes NO_TEST = Yes -FONTS_DIR= ${PREFIX}/share/fonts/font-awesome -DOCDIR = ${PREFIX}/share/doc/font-awesome - -do-install: - ${INSTALL_DATA_DIR} ${FONTS_DIR} - ${INSTALL_DATA} ${WRKSRC}/otfs/*.otf ${FONTS_DIR} - ${INSTALL_DATA_DIR} ${DOCDIR} - ${INSTALL_DATA} ${WRKDIST}/*.txt ${DOCDIR} +MODFONT_FONTFILES = otfs/*.otf +MODFONT_DOCFILES = *.txt .include diff --git a/fonts/hermit-font/Makefile b/fonts/hermit-font/Makefile index 702f7c7ce59..55516b2e558 100644 --- a/fonts/hermit-font/Makefile +++ b/fonts/hermit-font/Makefile @@ -19,7 +19,7 @@ MODULES= font NO_BUILD= Yes NO_TEST= Yes -MODFONT_TYPES= otf +MODFONT_FONTFILES= *.otf WRKDIST= ${WRKDIR} .include diff --git a/fonts/ibm-plex/Makefile b/fonts/ibm-plex/Makefile index b0fdff6ecfb..19cba573c80 100644 --- a/fonts/ibm-plex/Makefile +++ b/fonts/ibm-plex/Makefile @@ -23,17 +23,13 @@ MODULES = font NO_BUILD = Yes NO_TEST = Yes +# currently JP fonts only have hinted/unhinted directory, +# this package use hinted font following Noto fonts. +MODFONT_FONTFILES = OpenType/*/*.otf \ + TrueType/*/*.ttf \ + OpenType/IBM-Plex-Sans-JP/hinted/*.otf \ + TrueType/IBM-Plex-Sans-JP/hinted/*.ttf +MODFONT_DOCFILES = OpenType/IBM-Plex-Sans/license.txt FONTDIR = ${PREFIX}/share/fonts/ibm-plex -do-install: - ${INSTALL_DATA_DIR} ${FONTDIR} - ${INSTALL_DATA} ${WRKDIST}/OpenType/*/*.otf ${FONTDIR} - ${INSTALL_DATA} ${WRKDIST}/TrueType/*/*.ttf ${FONTDIR} - # currently JP fonts only have hinted/unhinted directory, - # this package use hinted font following Noto fonts. - ${INSTALL_DATA} ${WRKDIST}/OpenType/IBM-Plex-Sans-JP/hinted/*.otf ${FONTDIR} - ${INSTALL_DATA} ${WRKDIST}/TrueType/IBM-Plex-Sans-JP/hinted/*.ttf ${FONTDIR} - ${INSTALL_DATA_DIR} ${MODFONT_DOCDIR} - ${INSTALL_DATA} ${WRKDIST}/OpenType/IBM-Plex-Sans/license.txt ${MODFONT_DOCDIR} - .include diff --git a/fonts/inconsolata-font/Makefile b/fonts/inconsolata-font/Makefile index c7208e31892..211ee33366b 100644 --- a/fonts/inconsolata-font/Makefile +++ b/fonts/inconsolata-font/Makefile @@ -16,12 +16,12 @@ EXTRACT_ONLY= PERMIT_PACKAGE= Yes MODULES= font -MODFONT_TYPES= otf +MODFONT_FONTFILES= *.otf NO_BUILD= Yes NO_TEST= Yes -pre-install: - cp ${FULLDISTDIR}/${DISTFILES} ${WRKSRC} +WRKDIST = ${FULLDISTDIR} +MODFONT_FONTFILES = ${DISTFILES} .include diff --git a/fonts/intel-one-mono/Makefile b/fonts/intel-one-mono/Makefile index dc2bfc93210..b18c91802a2 100644 --- a/fonts/intel-one-mono/Makefile +++ b/fonts/intel-one-mono/Makefile @@ -1,8 +1,8 @@ COMMENT = expressive monospaced font family CATEGORIES = fonts -V = 1.3.0 -PKGNAME = intel-one-mono-$V +MODFONT_VERSION = 1.3.0 +MODFONT_FAMILY = intel-one-mono # SIL OFL 1.1 PERMIT_PACKAGE = Yes @@ -12,7 +12,7 @@ SITES = https://github.com/intel/intel-one-mono/releases/download/V$V/ DISTFILES = otf.zip \ ttf.zip -DIST_SUBDIR = intel-one-mono-$V +DIST_SUBDIR = intel-one-mono-${MODFONT_VERSION} HOMEPAGE = https://github.com/intel/intel-one-mono @@ -21,11 +21,7 @@ MODULES = font NO_BUILD = Yes NO_TEST = Yes -FONTDIR = ${PREFIX}/share/fonts/intel-one-mono - -do-install: - ${INSTALL_DATA_DIR} ${FONTDIR} - ${INSTALL_DATA} ${WRKDIST}/otf/*.otf ${FONTDIR} - ${INSTALL_DATA} ${WRKDIST}/ttf/*.ttf ${FONTDIR} +MODFONT_FONTFILES = otf/*.otf \ + ttf/*.ttf .include diff --git a/fonts/mada/Makefile b/fonts/mada/Makefile index a3b493ce70e..d365de7a0c3 100644 --- a/fonts/mada/Makefile +++ b/fonts/mada/Makefile @@ -3,7 +3,7 @@ COMMENT = modernist Arabic typeface V = 1.3 DISTNAME = mada-${V} -CATEGORIES = fonts +MODFONT_FAMILY = mada MAINTAINER = George Rosamond @@ -17,13 +17,9 @@ MODULES = font NO_BUILD = Yes NO_TEST = Yes -FONTDIR = ${PREFIX}/share/fonts/mada -DOCDIR = ${PREFIX}/share/doc/mada WRKDIST = ${WRKDIR}/Mada-${V} -do-install: - ${INSTALL_DATA_DIR} ${FONTDIR} ${DOCDIR} - ${INSTALL_DATA} ${WRKDIST}/*.otf ${FONTDIR} - ${INSTALL_DATA} ${WRKDIST}/README.txt ${DOCDIR} +MODFONT_FONTFILES = *.otf +MODFONT_DOCFILES = README.txt .include diff --git a/fonts/migmix/Makefile b/fonts/migmix/Makefile index 905c6bba099..f00ca96252a 100644 --- a/fonts/migmix/Makefile +++ b/fonts/migmix/Makefile @@ -2,6 +2,7 @@ COMMENT = mixture of M+ and IPA Gothic fonts, focused on kanji V = 20200307 PKGNAME = migmix-$V +MODFONT_FAMILY = migmix CATEGORIES = fonts @@ -21,11 +22,9 @@ DISTFILES = migmix-1m-$V.zip \ MODULES = font +MODFONT_FONTFILES = */*.ttf + NO_BUILD = Yes NO_TEST = Yes -do-install: - ${INSTALL_DATA_DIR} ${PREFIX}/share/fonts/migmix - ${INSTALL_DATA} ${WRKDIR}/*/*.ttf ${PREFIX}/share/fonts/migmix - .include diff --git a/fonts/migu/Makefile b/fonts/migu/Makefile index 72779c9f898..da7da30f648 100644 --- a/fonts/migu/Makefile +++ b/fonts/migu/Makefile @@ -2,6 +2,7 @@ COMMENT = mixture of M+ and IPA Gothic fonts, focused on kanji V = 20200307 PKGNAME = migu-$V +MODFONT_FAMILY = migu CATEGORIES = fonts @@ -24,8 +25,6 @@ MODULES = font NO_BUILD = Yes NO_TEST = Yes -do-install: - ${INSTALL_DATA_DIR} ${PREFIX}/share/fonts/migu - ${INSTALL_DATA} ${WRKDIR}/*/*.ttf ${PREFIX}/share/fonts/migu +MODFONT_FONTFILES = */*.ttf .include diff --git a/fonts/nerd-fonts/Makefile.inc b/fonts/nerd-fonts/Makefile.inc index 1521991536c..4788e36c0c9 100644 --- a/fonts/nerd-fonts/Makefile.inc +++ b/fonts/nerd-fonts/Makefile.inc @@ -22,5 +22,5 @@ NO_BUILD = Yes NO_TEST = Yes MODFONT_FAMILY = ${NF_FONT:L} -MODFONT_DIR = ${PREFIX}/share/fonts/${NF_PROJECT}/${NF_FONT:L} +MODFONT_FONTDIR = ${PREFIX}/share/fonts/${NF_PROJECT}/${NF_FONT:L} DOCDIR = ${PREFIX}/share/doc/${NF_PROJECT}/${NF_FONT:L} diff --git a/fonts/nerd-fonts/codenewroman/Makefile b/fonts/nerd-fonts/codenewroman/Makefile index 46f824673ec..a3605904a67 100644 --- a/fonts/nerd-fonts/codenewroman/Makefile +++ b/fonts/nerd-fonts/codenewroman/Makefile @@ -1,5 +1,5 @@ NF_FONT = CodeNewRoman -MODFONT_TYPES = otf +MODFONT_FONTFILES = *.otf post-install: ${INSTALL_DATA_DIR} ${DOCDIR} diff --git a/fonts/recursive/Makefile b/fonts/recursive/Makefile index 48760901d1e..b39cdcd482a 100644 --- a/fonts/recursive/Makefile +++ b/fonts/recursive/Makefile @@ -18,13 +18,11 @@ MODULES = font NO_BUILD = Yes NO_TEST = Yes -do-install: - ${INSTALL_DATA_DIR} ${MODFONT_DIR} - ${INSTALL_DATA} \ - ${WRKSRC}/Recursive_Desktop/separate_statics/OTF/*.otf \ - ${WRKSRC}/Recursive_Code/RecMonoCasual/*.ttf \ - ${WRKSRC}/Recursive_Code/RecMonoDuotone/*.ttf \ - ${WRKSRC}/Recursive_Code/RecMonoLinear/*.ttf \ - ${WRKSRC}/Recursive_Code/RecMonoSemicasual/*.ttf ${MODFONT_DIR} +MODFONT_FONTFILES = Recursive_Desktop/separate_statics/OTF/*.otf \ + Recursive_Desktop/separate_statics/OTF/*.otf \ + Recursive_Code/RecMonoCasual/*.ttf \ + Recursive_Code/RecMonoDuotone/*.ttf \ + Recursive_Code/RecMonoLinear/*.ttf \ + Recursive_Code/RecMonoSemicasual/*.ttf .include diff --git a/fonts/sunscreen/Makefile b/fonts/sunscreen/Makefile index 97eb30bcadc..5408fa3ad57 100644 --- a/fonts/sunscreen/Makefile +++ b/fonts/sunscreen/Makefile @@ -14,7 +14,7 @@ PERMIT_PACKAGE = Yes SITES = http://www.simon-cozens.org/downloads/ MODULES = font -MODFONT_TYPES = otf +MODFONT_FONTFILES = *.otf NO_BUILD = Yes NO_TEST = Yes diff --git a/fonts/vollkorn/Makefile b/fonts/vollkorn/Makefile index 05c3ce0defb..0c0d648255d 100644 --- a/fonts/vollkorn/Makefile +++ b/fonts/vollkorn/Makefile @@ -4,6 +4,7 @@ V = 4.105 DISTNAME = vollkorn-${V:S/./-/} PKGNAME = vollkorn-$V +MODFONT_FAMILY = vollkorn # SIL OFL 1.1 PERMIT_PACKAGE = Yes @@ -22,14 +23,8 @@ NO_TEST = Yes WRKDIST = ${WRKDIR} -FONTDIR = ${PREFIX}/share/fonts/vollkorn -DOCDIR = ${PREFIX}/share/doc/vollkorn - -do-install: - ${INSTALL_DATA_DIR} ${FONTDIR} - ${INSTALL_DATA} ${WRKSRC}/TTF/*.ttf ${FONTDIR} - ${INSTALL_DATA} ${WRKSRC}/PS-OTF/*.otf ${FONTDIR} - ${INSTALL_DATA_DIR} ${DOCDIR} - ${INSTALL_DATA} ${WRKSRC}/OFL.txt ${DOCDIR} +MODFONT_FONTFILES = TTF/*.ttf \ + PS-OTF/*.otf +MODFONT_DOCFILES = OFL.txt .include diff --git a/fonts/zh-wqy-zenhei-ttf/Makefile b/fonts/zh-wqy-zenhei-ttf/Makefile index d62cd5fe909..a48d273e150 100644 --- a/fonts/zh-wqy-zenhei-ttf/Makefile +++ b/fonts/zh-wqy-zenhei-ttf/Makefile @@ -17,11 +17,11 @@ MODULES = font SITES= ${SITE_SOURCEFORGE:=wqy/} EXTRACT_SUFX= .tar.gz -MODFONT_TYPES = ttc +MODFONT_FONTFILES = *.ttc WRKDIST= ${WRKDIR}/wqy-zenhei NO_BUILD= Yes NO_TEST= Yes -MODFONT_DIR= ${PREFIX}/share/fonts/wqy +MODFONT_FONTDIR= ${PREFIX}/share/fonts/wqy .include diff --git a/infrastructure/mk/font.port.mk b/infrastructure/mk/font.port.mk index b8568cfc42f..c21c3e11875 100644 --- a/infrastructure/mk/font.port.mk +++ b/infrastructure/mk/font.port.mk @@ -1,4 +1,4 @@ -# $OpenBSD: font.port.mk,v 1.8 2024/07/09 13:03:39 bentley Exp $ +# $OpenBSD: font.port.mk,v 1.9 2024/07/11 12:54:41 bentley Exp $ CATEGORIES += fonts @@ -11,20 +11,20 @@ EXTRACT_SUFX ?= .zip PKGNAME ?= ${MODFONT_FAMILY}-${MODFONT_VERSION} . endif -MODFONT_DIR ?= ${PREFIX}/share/fonts/${MODFONT_FAMILY} +MODFONT_FONTDIR ?= ${PREFIX}/share/fonts/${MODFONT_FAMILY} MODFONT_DOCDIR ?= ${PREFIX}/share/doc/${MODFONT_FAMILY} -MODFONT_TYPES ?= +MODFONT_FONTFILES ?= MODFONT_DOCFILES ?= -MODFONT_do-install = ${INSTALL_DATA_DIR} ${MODFONT_DIR}; +MODFONT_do-install = ${INSTALL_DATA_DIR} ${MODFONT_FONTDIR}; -# if MODFONT_TYPES is not set, install .otf files if present (and break, +# if MODFONT_FONTFILES is not set, install .otf files if present (and break, # to skip ttf) otherwise fallback to ttf. -.if empty(MODFONT_TYPES) -MODFONT_do-install += for t in otf ttf; do ${INSTALL_DATA} ${WRKSRC}/*.$$t ${MODFONT_DIR} && break; done +.if empty(MODFONT_FONTFILES) +MODFONT_do-install += for t in otf ttf; do ${INSTALL_DATA} ${WRKSRC}/*.$$t ${MODFONT_FONTDIR} && break; done .else -MODFONT_do-install += for t in ${MODFONT_TYPES}; do ${INSTALL_DATA} ${WRKSRC}/*.$$t ${MODFONT_DIR}; done +MODFONT_do-install += for t in ${MODFONT_FONTFILES}; do ${INSTALL_DATA} ${WRKSRC}/$$t ${MODFONT_FONTDIR}; done .endif .if !empty(MODFONT_DOCFILES)