Blame genl/Makefile

Packit Service 3880ab
# SPDX-License-Identifier: GPL-2.0
Packit Service 3880ab
GENLOBJ=genl.o
Packit Service 3880ab
Packit Service 3880ab
include ../config.mk
Packit Service 3880ab
SHARED_LIBS ?= y
Packit Service 3880ab
Packit Service 3880ab
CFLAGS += -fno-strict-aliasing
Packit Service 3880ab
Packit Service 3880ab
GENLMODULES :=
Packit Service 3880ab
GENLMODULES += ctrl.o
Packit Service 3880ab
Packit Service 3880ab
GENLOBJ += $(GENLMODULES)
Packit Service 3880ab
Packit Service 3880ab
GENLLIB :=
Packit Service 3880ab
Packit Service 3880ab
ifeq ($(SHARED_LIBS),y)
Packit Service 3880ab
LDFLAGS += -Wl,-export-dynamic
Packit Service 3880ab
LDLIBS  += -lm -ldl
Packit Service 3880ab
endif
Packit Service 3880ab
Packit Service 3880ab
all: genl
Packit Service 3880ab
Packit Service 3880ab
genl: $(GENLOBJ) $(LIBNETLINK) $(LIBUTIL) $(GENLLIB)
Packit Service 3880ab
	$(QUIET_LINK)$(CC) $^ $(LDFLAGS) $(LDLIBS) -o $@
Packit Service 3880ab
Packit Service 3880ab
install: all
Packit Service 3880ab
	install -m 0755 genl $(DESTDIR)$(SBINDIR)
Packit Service 3880ab
Packit Service 3880ab
clean:
Packit Service 3880ab
	rm -f $(GENLOBJ) $(GENLLIB) genl
Packit Service 3880ab
Packit Service 3880ab
ifneq ($(SHARED_LIBS),y)
Packit Service 3880ab
Packit Service 3880ab
genl: static-syms.o
Packit Service 3880ab
static-syms.o: static-syms.h
Packit Service 3880ab
static-syms.h: $(wildcard *.c)
Packit Service 3880ab
	files="$^" ; \
Packit Service 3880ab
	for s in `grep -B 3 '\
Packit Service 3880ab
		sed -n '/'$$s'[^ ]* =/{s:.* \([^ ]*'$$s'[^ ]*\) .*:extern char \1[] __attribute__((weak)); if (!strcmp(sym, "\1")) return \1;:;p}' $$files ; \
Packit Service 3880ab
	done > $@
Packit Service 3880ab
Packit Service 3880ab
endif