3236f7be09
Adds checks for OpenBSD in all the places that were already checking for NetBSD. This fixes e.g.: ec.c:21:20: error: sys/io.h: No such file or directory which was caused by defaulting to Linux. Also, OpenBSD calls its amd64 iopl amd64_iopl instead of x86_64_iopl. This change just defines iopl appropriately depending on the OS and architecture. TEST=Build on OpenBSD 6.0 or -current from 2017-01-25. Change-Id: If6d92a9850c15cd9f8e287cc4f963d3ff881f72c Signed-off-by: Steven Dee <i@wholezero.org> Reviewed-on: https://review.coreboot.org/18260 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <pgeorgi@google.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
48 lines
1.1 KiB
Makefile
48 lines
1.1 KiB
Makefile
##
|
|
## Makefile for ectool
|
|
##
|
|
## Copyright (C) 2009 by coresystems GmbH
|
|
## written by Stefan Reinauer <stepan@coresystems.de>
|
|
##
|
|
## This program is free software; you can redistribute it and/or modify
|
|
## it under the terms of the GNU General Public License as published by
|
|
## the Free Software Foundation; version 2 of the License.
|
|
##
|
|
## This program is distributed in the hope that it will be useful,
|
|
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
## GNU General Public License for more details.
|
|
##
|
|
|
|
CC = gcc
|
|
CFLAGS = -O2 -Wall -W
|
|
PROGRAM = ectool
|
|
INSTALL = /usr/bin/install
|
|
PREFIX = /usr/local
|
|
OS_ARCH = $(shell uname)
|
|
|
|
ifeq ($(shell uname -o 2>/dev/null), Cygwin)
|
|
LDFLAGS = -lioperm
|
|
endif
|
|
|
|
ifeq ($(OS_ARCH), $(filter $(OS_ARCH), NetBSD OpenBSD))
|
|
LDFLAGS = -l$(shell uname -p)
|
|
endif
|
|
|
|
all: $(PROGRAM)
|
|
|
|
$(PROGRAM): ec.o ectool.o
|
|
$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
|
|
|
|
install: $(PROGRAM)
|
|
$(INSTALL) $(PROGRAM) $(PREFIX)/sbin
|
|
|
|
clean:
|
|
rm -f *.o $(PROGRAM) junit.xml
|
|
|
|
distclean: clean
|
|
|
|
%.o: %.c
|
|
$(CC) $(CFLAGS) -c $^ -I. -o $@
|
|
|
|
.PHONY: all install clean distclean
|