Files
Stewart Smith 49496485fe Re-license IBM written files as Apache 2.0 OR GPLv2+
SPDX makes it a simpler diff.

I have audited the commit history of each file to ensure that they are
exclusively authored by IBM and thus we have the right to relicense.

The motivation behind this is twofold:
1) We want to enable experiments with coreboot, which is GPLv2 licensed
2) An upcoming firmware component wants to incorporate code from skiboot
   and code from the Linux kernel, which is GPLv2 licensed.

I have gone through the IBM internal way of gaining approval for this.

The following files are not exclusively authored by IBM, so are *not*
included in this update (I will be seeking approval from contributors):

core/direct-controls.c
core/flash.c
core/pcie-slot.c
external/common/arch_flash_unknown.c
external/common/rules.mk
external/gard/Makefile
external/gard/rules.mk
external/opal-prd/Makefile
external/pflash/Makefile
external/xscom-utils/Makefile
hdata/vpd.c
hw/dts.c
hw/ipmi/ipmi-watchdog.c
hw/phb4.c
include/cpu.h
include/phb4.h
include/platform.h
libflash/libffs.c
libstb/mbedtls/sha512.c
libstb/mbedtls/sha512.h
platforms/astbmc/barreleye.c
platforms/astbmc/garrison.c
platforms/astbmc/mihawk.c
platforms/astbmc/nicole.c
platforms/astbmc/p8dnu.c
platforms/astbmc/p8dtu.c
platforms/astbmc/p9dsu.c
platforms/astbmc/vesnin.c
platforms/rhesus/ec/config.h
platforms/rhesus/ec/gpio.h
platforms/rhesus/gpio.c
platforms/rhesus/rhesus.c
platforms/astbmc/talos.c
platforms/astbmc/romulus.c

Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
[oliver: fixed up the drift]
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
2020-03-12 20:33:18 +11:00

55 lines
1.5 KiB
Makefile

# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
.DEFAULT_GOAL := all
GET_ARCH := ../../external/common/get_arch.sh
include ../../external/common/rules.mk
include rules.mk
PREFIX ?= /usr/local/
LIBDIR := $(PREFIX)/lib
INCDIR := $(PREFIX)/include/libflash
ifneq ($(ARCH), ARCH_ARM)
CFLAGS += -m64
endif
CFLAGS += -Werror -Wall -g2 -ggdb -I. -fPIC
LIBFLASH_OBJS := libflash-file.o libflash-libflash.o libflash-libffs.o \
libflash-ecc.o libflash-blocklevel.o
ARCHFLASH_OBJS := common-arch_flash.o
OBJS := $(LIBFLASH_OBJS) $(ARCHFLASH_OBJS)
LIBFLASH_H := libflash/file.h libflash/libflash.h libflash/libffs.h \
libflash/ffs.h libflash/ecc.h libflash/blocklevel.h libflash/errors.h
ARCHFLASH_H := common/arch_flash.h
LIBFLASH_FILES := libflash.c libffs.c ecc.c blocklevel.c file.c
LIBFLASH_SRC := $(addprefix libflash/,$(LIBFLASH_FILES))
$(LIBFLASH_SRC): | links
$(LIBFLASH_OBJS) : libflash-%.o : libflash/%.c
$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
clean:
rm -f $(OBJS) common-*.o *.so*
distclean: clean
rm -f ccan libflash common
all: links arch_links $(OBJS)
$(CC) -shared -Wl,-soname,libflash.so -o $(SHARED_NAME) $(OBJS)
install-lib: all
install -D -m 0755 $(SHARED_NAME) $(DESTDIR)$(LIBDIR)/$(SHARED_NAME)
ln -sf $(SHARED_NAME) $(DESTDIR)$(LIBDIR)/libflash.so
install-dev: links arch_links
mkdir -p $(DESTDIR)$(INCDIR)
install -m 0644 $(LIBFLASH_H) $(ARCHFLASH_H) $(DESTDIR)$(INCDIR)
install: install-lib install-dev
uninstall:
rm -f $(DESTDIR)$(LIBDIR)/libflash*
rm -rf $(DESTDIR)$(INCDIR)