Blame Makefile

Packit a55458
#
Packit a55458
#   DMI Decode
Packit a55458
#   BIOS Decode
Packit a55458
#   VPD Decode
Packit a55458
#
Packit a55458
#   Copyright (C) 2000-2002 Alan Cox <alan@redhat.com>
Packit Service c8dcda
#   Copyright (C) 2002-2020 Jean Delvare <jdelvare@suse.de>
Packit a55458
#
Packit a55458
#   This program is free software; you can redistribute it and/or modify
Packit a55458
#   it under the terms of the GNU General Public License as published by
Packit a55458
#   the Free Software Foundation; either version 2 of the License, or
Packit a55458
#   (at your option) any later version.
Packit a55458
#
Packit a55458
Packit Service 25492d
CC     ?= gcc
Packit Service 25492d
# Base CFLAGS can be overridden by environment
Packit Service 25492d
CFLAGS ?= -O2
Packit Service 25492d
# When debugging, disable -O2 and enable -g
Packit Service 25492d
#CFLAGS ?= -g
Packit Service 25492d
Packit Service 25492d
CFLAGS += -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual \
Packit a55458
          -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef
Packit a55458
Packit a55458
# Let lseek and mmap support 64-bit wide offsets
Packit a55458
CFLAGS += -D_FILE_OFFSET_BITS=64
Packit a55458
Packit a55458
#CFLAGS += -DBIGENDIAN
Packit a55458
#CFLAGS += -DALIGNMENT_WORKAROUND
Packit a55458
Packit Service 25492d
# Pass linker flags here (can be set from environment too)
Packit Service 25492d
LDFLAGS ?=
Packit a55458
Packit a55458
DESTDIR =
Packit a55458
prefix  = /usr/local
Packit a55458
sbindir = $(prefix)/sbin
Packit a55458
mandir  = $(prefix)/share/man
Packit a55458
man8dir = $(mandir)/man8
Packit a55458
docdir  = $(prefix)/share/doc/dmidecode
Packit a55458
Packit a55458
INSTALL         := install
Packit a55458
INSTALL_DATA    := $(INSTALL) -m 644
Packit a55458
INSTALL_DIR     := $(INSTALL) -m 755 -d
Packit a55458
INSTALL_PROGRAM := $(INSTALL) -m 755
Packit a55458
RM              := rm -f
Packit a55458
Packit a55458
# BSD make provides $MACHINE, but GNU make doesn't
Packit a55458
MACHINE ?= $(shell uname -m 2>/dev/null)
Packit a55458
Packit a55458
# These programs are only useful on x86
Packit a55458
PROGRAMS-i386 := biosdecode ownership vpddecode
Packit a55458
PROGRAMS-i486 := $(PROGRAMS-i386)
Packit a55458
PROGRAMS-i586 := $(PROGRAMS-i386)
Packit a55458
PROGRAMS-i686 := $(PROGRAMS-i386)
Packit a55458
PROGRAMS-x86_64 := biosdecode ownership vpddecode
Packit a55458
PROGRAMS-amd64 := $(PROGRAMS-x86_64)
Packit a55458
Packit a55458
PROGRAMS := dmidecode $(PROGRAMS-$(MACHINE))
Packit a55458
Packit a55458
all : $(PROGRAMS)
Packit a55458
Packit a55458
#
Packit a55458
# Programs
Packit a55458
#
Packit a55458
Packit Service c6e175
dmidecode : dmidecode.o dmiopt.o dmioem.o dmioutput.o util.o
Packit Service c6e175
	$(CC) $(LDFLAGS) dmidecode.o dmiopt.o dmioem.o dmioutput.o util.o -o $@
Packit a55458
Packit a55458
biosdecode : biosdecode.o util.o
Packit a55458
	$(CC) $(LDFLAGS) biosdecode.o util.o -o $@
Packit a55458
Packit a55458
ownership : ownership.o util.o
Packit a55458
	$(CC) $(LDFLAGS) ownership.o util.o -o $@
Packit a55458
Packit a55458
vpddecode : vpddecode.o vpdopt.o util.o
Packit a55458
	$(CC) $(LDFLAGS) vpddecode.o vpdopt.o util.o -o $@
Packit a55458
Packit a55458
#
Packit a55458
# Objects
Packit a55458
#
Packit a55458
Packit a55458
dmidecode.o : dmidecode.c version.h types.h util.h config.h dmidecode.h \
Packit Service de3957
	      dmiopt.h dmioem.h dmioutput.h
Packit a55458
	$(CC) $(CFLAGS) -c $< -o $@
Packit a55458
Packit a55458
dmiopt.o : dmiopt.c config.h types.h util.h dmidecode.h dmiopt.h
Packit a55458
	$(CC) $(CFLAGS) -c $< -o $@
Packit a55458
Packit Service de3957
dmioem.o : dmioem.c types.h dmidecode.h dmioem.h dmioutput.h
Packit a55458
	$(CC) $(CFLAGS) -c $< -o $@
Packit a55458
Packit Service c6e175
dmioutput.o : dmioutput.c types.h dmioutput.h
Packit Service c6e175
	$(CC) $(CFLAGS) -c $< -o $@
Packit Service c6e175
Packit a55458
biosdecode.o : biosdecode.c version.h types.h util.h config.h 
Packit a55458
	$(CC) $(CFLAGS) -c $< -o $@
Packit a55458
Packit a55458
ownership.o : ownership.c version.h types.h util.h config.h
Packit a55458
	$(CC) $(CFLAGS) -c $< -o $@
Packit a55458
Packit a55458
vpddecode.o : vpddecode.c version.h types.h util.h config.h vpdopt.h
Packit a55458
	$(CC) $(CFLAGS) -c $< -o $@
Packit a55458
Packit a55458
vpdopt.o : vpdopt.c config.h util.h vpdopt.h
Packit a55458
	$(CC) $(CFLAGS) -c $< -o $@
Packit a55458
Packit a55458
util.o : util.c types.h util.h config.h
Packit a55458
	$(CC) $(CFLAGS) -c $< -o $@
Packit a55458
Packit a55458
#
Packit a55458
# Commands
Packit a55458
#
Packit a55458
Packit a55458
strip : $(PROGRAMS)
Packit a55458
	strip $(PROGRAMS)
Packit a55458
Packit a55458
install : install-bin install-man install-doc
Packit a55458
Packit a55458
uninstall : uninstall-bin uninstall-man uninstall-doc
Packit a55458
Packit a55458
install-bin : $(PROGRAMS)
Packit a55458
	$(INSTALL_DIR) $(DESTDIR)$(sbindir)
Packit a55458
	for program in $(PROGRAMS) ; do \
Packit a55458
	$(INSTALL_PROGRAM) $$program $(DESTDIR)$(sbindir) ; done
Packit a55458
Packit a55458
uninstall-bin :
Packit a55458
	for program in $(PROGRAMS) ; do \
Packit a55458
	$(RM) $(DESTDIR)$(sbindir)/$$program ; done
Packit a55458
Packit a55458
install-man :
Packit a55458
	$(INSTALL_DIR) $(DESTDIR)$(man8dir)
Packit a55458
	for program in $(PROGRAMS) ; do \
Packit a55458
	$(INSTALL_DATA) man/$$program.8 $(DESTDIR)$(man8dir) ; done
Packit a55458
Packit a55458
uninstall-man :
Packit a55458
	for program in $(PROGRAMS) ; do \
Packit a55458
	$(RM) $(DESTDIR)$(man8dir)/$$program.8 ; done
Packit a55458
Packit a55458
install-doc :
Packit a55458
	$(INSTALL_DIR) $(DESTDIR)$(docdir)
Packit a55458
	$(INSTALL_DATA) README $(DESTDIR)$(docdir)
Packit a55458
	$(INSTALL_DATA) NEWS $(DESTDIR)$(docdir)
Packit a55458
	$(INSTALL_DATA) AUTHORS $(DESTDIR)$(docdir)
Packit a55458
Packit a55458
uninstall-doc :
Packit a55458
	$(RM) -r $(DESTDIR)$(docdir)
Packit a55458
Packit a55458
clean :
Packit a55458
	$(RM) *.o $(PROGRAMS) core