diff options
Diffstat (limited to 'roms/skiboot/external/shared/Makefile')
-rw-r--r-- | roms/skiboot/external/shared/Makefile | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/roms/skiboot/external/shared/Makefile b/roms/skiboot/external/shared/Makefile new file mode 100644 index 000000000..9ea4adc51 --- /dev/null +++ b/roms/skiboot/external/shared/Makefile @@ -0,0 +1,54 @@ +# 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) |