e277e1c63a
New command "service cpupdate download" targeted for package users is equivalent to "make install-microcodes" already present for ports users. (*) Also, sync with Intel pack microcode-20200616 available from Github. Bump PORTREVISION. PR: 247766 Suggested by: Walter von Entferndt (*)
94 lines
2.9 KiB
Makefile
94 lines
2.9 KiB
Makefile
# Created by: Eugene Grosbein <eugen@FreeBSD.org>
|
|
# $FreeBSD$
|
|
|
|
PORTNAME= cpupdate
|
|
DISTVERSION= g20180513
|
|
PORTREVISION= 2
|
|
CATEGORIES= sysutils
|
|
|
|
MAINTAINER= eugen@FreeBSD.org
|
|
COMMENT= CPU microcode update utility for x86
|
|
|
|
LICENSE= BSD2CLAUSE
|
|
LICENSE_FILE= ${WRKSRC}/LICENSE
|
|
#
|
|
# The license of Intel's microcode binary files prohibits redistribution,
|
|
# so they are no part of this port to not restrict packaging and redistribution
|
|
# of the port itself. These binaries ought be downloaded and installed
|
|
# separately from this package by default. There are non-default port options
|
|
# and "make install-microcodes" command to download and install
|
|
# the whole bunch of microcode binaries.
|
|
|
|
USE_RC_SUBR= ${PORTNAME}
|
|
|
|
ONLY_FOR_ARCHS= amd64 i386
|
|
ONLY_FOR_ARCHS_REASON= specific to x86 processors
|
|
|
|
SUB_FILES= pkg-message
|
|
SUB_LIST= CPM_DIR="${CPM_DIR}" INTEL_DIR="${INTEL_DIR}" \
|
|
CPM_DATADIR="${CPM_DATADIR}" INTEL_DATADIR="${INTEL_DATADIR}" \
|
|
FETCH_CMD="${FETCH_CMD}" MASTER_SITES="${MASTER_SITES}" \
|
|
DISTFILES="${DISTFILES}"
|
|
|
|
USE_GITHUB= yes
|
|
GH_ACCOUNT= kernschmelze
|
|
GH_PROJECT= ${PORTNAME}
|
|
GH_TAGNAME= 48e42d5
|
|
|
|
PLIST_FILES= sbin/${PORTNAME} man/man8/${PORTNAME}.8.gz
|
|
|
|
# MCE DB r151
|
|
CPM_ACCOUNT= platomav
|
|
CPM_PROJECT= CPUMicrocodes
|
|
CPM_TAGNAME= 0d2412f
|
|
|
|
OPTIONS_DEFINE= CPM INTEL
|
|
CPM_DESC= Download platomav/CPUMicrocodes collection
|
|
CPM_GH_ACCOUNT= ${CPM_ACCOUNT}:cpm
|
|
CPM_GH_PROJECT= ${CPM_PROJECT}:cpm
|
|
CPM_GH_TAGNAME= ${CPM_TAGNAME}:cpm
|
|
CPM_DIR= ${WRKDIR}/${CPM_PROJECT}-${CPM_TAGNAME}
|
|
CPM_DATADIR= ${DATADIR}/CPUMicrocodes/secondary/Intel
|
|
|
|
INTEL_PACK= microcode-20200616
|
|
INTEL_DESC= Download Intel microcode pack ${INTEL_PACK}
|
|
INTEL_PROJECT= Intel-Linux-Processor-Microcode-Data-Files
|
|
INTEL_MASTER_SITES= https://codeload.github.com/intel/${INTEL_PROJECT}/tar.gz/:intel
|
|
INTEL_DISTFILES= ${INTEL_PACK}:intel
|
|
INTEL_DIR= ${WRKDIR}/${INTEL_PROJECT}-${INTEL_PACK}/intel-ucode
|
|
INTEL_DATADIR= ${DATADIR}/CPUMicrocodes/primary/Intel
|
|
|
|
post-patch:
|
|
${REINPLACE_CMD} -e "s,/usr/local/share/cpupdate,${DATADIR},g" ${WRKSRC}/cpupdate.h
|
|
|
|
do-install:
|
|
${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/sbin
|
|
${INSTALL_MAN} ${WRKSRC}/${PORTNAME}.8 ${STAGEDIR}${MANPREFIX}/man/man8
|
|
|
|
.include <bsd.port.options.mk>
|
|
|
|
install-microcodes:
|
|
.if ${PORT_OPTIONS:MINTEL}
|
|
${RM} -rf ${INTEL_DATADIR}
|
|
${MKDIR} ${INTEL_DATADIR}
|
|
(cd ${INTEL_DIR} && ${COPYTREE_SHARE} . ${INTEL_DATADIR})
|
|
(cd ${INTEL_DIR}-with-caveats && ${COPYTREE_SHARE} . ${INTEL_DATADIR})
|
|
.endif
|
|
.if ${PORT_OPTIONS:MCPM}
|
|
${RM} -rf ${CPM_DATADIR}
|
|
${MKDIR} ${CPM_DATADIR}
|
|
cpupdate -q -IC -S ${CPM_DIR}/Intel -T ${CPM_DATADIR} >/dev/null
|
|
.endif
|
|
.for _o in INTEL CPM
|
|
.if ${PORT_OPTIONS:M${_o}}
|
|
@${ECHO} ''
|
|
@${ECHO} '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'
|
|
@${ECHO} NOTE: you have to manually remove the directory
|
|
@${ECHO} ${${_o}_DATADIR}
|
|
@${ECHO} after deinstallation of ${PORTNAME}.
|
|
@${ECHO} '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'
|
|
.endif
|
|
.endfor
|
|
|
|
.include <bsd.port.mk>
|