From 61ac4e36c8d2af4051a6caf8f42d546e35c0b61d Mon Sep 17 00:00:00 2001 From: Anton Arapov Date: Jul 25 2012 17:48:16 +0000 Subject: Add latest microcode blobs from Intel and AMD: Makefile. implement necessary Makefile changes to enable commit 303e9fdf3805a778b0bd43e9d1f72eb34a0c2823 Signed-off-by: Anton Arapov --- diff --git a/Makefile b/Makefile index 6a99b40..fa25a05 100644 --- a/Makefile +++ b/Makefile @@ -8,48 +8,62 @@ # as published by the Free Software Foundation; either version # 2 of the License, or (at your option) any later version. -PROGRAM = microcode_ctl -MANPAGE = microcode_ctl.8 +PROGRAM = microcode_ctl +MANPAGE = microcode_ctl.8 +MICROCODE_INTEL = microcode-20120606.tgz +MICROCODE_AMD = amd-ucode-2012-01-17.tar -INS = install -CC = gcc -KERNELHEADER = /usr/src/linux/include -CFLAGS = -g -Wall -O2 -I $(KERNELHEADER) +INS = install +CC = gcc +KERNELHEADER = /usr/src/linux/include +CFLAGS = -g -Wall -O2 -I $(KERNELHEADER) -DESTDIR = -PREFIX = /usr/local +DESTDIR = +PREFIX = /usr/local -INSDIR = $(PREFIX)/sbin -MANDIR = $(PREFIX)/share/man/man8 -MICDIR = /lib/firmware +INSDIR = $(PREFIX)/sbin +MANDIR = $(PREFIX)/share/man/man8 +DOCDIR = $(PREFIX)/share/doc/microcode_ctl +MICDIR = /lib/firmware +MICDIRAMD = $(MICDIR)/amd-ucode -RCFILE = microcode_ctl.start -RCFILEFINAL = microcode_ctl +RCFILE = microcode_ctl.start +RCFILEFINAL = microcode_ctl # this is a bit nasty... -RCDIR = $(shell if [ -d /etc/init.d ]; then echo "/etc"; else echo "/etc/rc.d"; fi) -RCHOMEDIR = init.d -RCFILETO = $(RCDIR)/$(RCHOMEDIR) +RCDIR = $(shell if [ -d /etc/init.d ]; then echo "/etc"; else echo "/etc/rc.d"; fi) +RCHOMEDIR = init.d +RCFILETO = $(RCDIR)/$(RCHOMEDIR) all: microcode_ctl microcode_ctl: microcode_ctl.c $(CC) $(CFLAGS) -o $(PROGRAM) microcode_ctl.c + mkdir intel-ucode amd-ucode + tar xfz $(MICROCODE_INTEL) -C intel-ucode + tar --strip-components 1 -xf $(MICROCODE_AMD) -C amd-ucode echo "$(RCDIR)/$(RCHOMEDIR)/microcode_ctl" > microcode-filelist clean: - rm -f $(PROGRAM) + rm -rf $(PROGRAM) intel-ucode amd-ucode install: - $(INS) -d $(DESTDIR)$(INSDIR) $(DESTDIR)$(MICDIR) \ + $(INS) -d $(DESTDIR)$(INSDIR) $(DESTDIR)$(MICDIRAMD) \ $(DESTDIR)$(MANDIR) $(DESTDIR)$(RCFILETO) \ - $(DESTDIR)$(RCLINKTO) - + $(DESTDIR)$(RCLINKTO) $(DESTDIR)$(DOCDIR) $(INS) -m 755 $(PROGRAM) $(DESTDIR)$(INSDIR) - $(INS) -m 644 $(MANPAGE) $(DESTDIR)$(MANDIR) gzip -9f $(DESTDIR)$(MANDIR)/$(MANPAGE) - $(INS) -m 755 $(RCFILE) $(DESTDIR)$(RCFILETO)/$(RCFILEFINAL) + $(INS) -m 644 intel-ucode/microcode.dat $(DESTDIR)$(MICDIR) + $(INS) -m 644 amd-ucode/microcode_amd.bin $(DESTDIR)$(MICDIR)/amd-ucode/ + $(INS) -m 644 amd-ucode/microcode_amd_fam15h.bin $(DESTDIR)$(MICDIR)/amd-ucode/ + $(INS) -m 644 amd-ucode/microcode_amd.bin.README \ + $(DESTDIR)$(DOCDIR)/README.microcode_amd.bin + $(INS) -m 644 amd-ucode/microcode_amd_fam15h.bin.README \ + $(DESTDIR)$(DOCDIR)/README.microcode_amd_fam15h.bin + $(INS) -m 644 amd-ucode/LICENSE $(DESTDIR)$(DOCDIR)/LICENSE.microcode_amd + $(INS) -m 644 amd-ucode/README $(DESTDIR)$(DOCDIR)/README.microcode_amd + $(INS) -m 644 amd-ucode/INSTALL $(DESTDIR)$(DOCDIR)/INSTALL.microcode_amd ifndef DESTDIR chkconfig --add $(RCFILEFINAL) @@ -66,6 +80,10 @@ ifndef DESTDIR chkconfig --del $(RCFILEFINAL) endif # shame there isn't reverse of install... - rm $(DESTDIR)$(INSDIR)/$(PROGRAM) \ + rm -rf $(DESTDIR)$(INSDIR)/$(PROGRAM) \ $(DESTDIR)$(MANDIR)/$(MANPAGE).gz \ $(DESTDIR)$(RCFILETO)/$(RCFILEFINAL) + $(DESTDIR)$(MICDIRAMD) \ + $(DESTDIR)$(MICDIR)/microcode.dat \ + $(DESTDIR)$(DOCDIR) +