1 # Modify as you see fit, note this is built into crda,
2 # so if you change it here you will have to change crda.c
3 REG_BIN?=/usr/lib/crda/regulatory.bin
5 # Used locally to retrieve all pubkeys during build time
10 all: crda intersect verify
12 ifeq ($(USE_OPENSSL),1)
13 CFLAGS += -DUSE_OPENSSL `pkg-config --cflags openssl`
14 LDLIBS += `pkg-config --libs openssl`
19 CFLAGS += -DUSE_GCRYPT
22 reglib.o: keys-gcrypt.c
28 NL1FOUND := $(shell pkg-config --atleast-version=1 libnl-1 && echo Y)
29 NL2FOUND := $(shell pkg-config --atleast-version=2 libnl-2.0 && echo Y)
36 CFLAGS += -DCONFIG_LIBNL20
41 LIBS += `pkg-config --libs $(NLLIBNAME)`
42 CFLAGS += `pkg-config --cflags $(NLLIBNAME)`
52 keys-%.c: utils/key2pub.py $(wildcard $(PUBKEY_DIR)/*.pem)
54 $(Q)./utils/key2pub.py --$* $(wildcard $(PUBKEY_DIR)/*.pem) > $@
58 $(Q)$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
62 $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(LIBS) -o $@ $^ $(LDLIBS)
64 regdbdump: reglib.o regdbdump.o print-regdom.o
66 $(Q)$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS)
68 intersect: reglib.o intersect.o print-regdom.o
70 $(Q)$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS)
72 verify: $(REG_BIN) regdbdump
73 $(NQ) ' CHK $(REG_BIN)'
74 $(Q)./regdbdump $(REG_BIN) >/dev/null
78 $(Q)$(MKDIR) $(DESTDIR)/sbin
79 $(Q)$(INSTALL) -m 755 -t $(DESTDIR)/sbin/ crda
80 $(NQ) ' INSTALL regdbdump'
81 $(Q)$(INSTALL) -m 755 -t $(DESTDIR)/sbin/ regdbdump
82 $(NQ) ' INSTALL regulatory.rules'
83 $(Q)$(MKDIR) $(DESTDIR)/etc/udev/rules.d
84 $(Q)$(INSTALL) -m 644 -t $(DESTDIR)/etc/udev/rules.d/ udev/regulatory.rules
87 $(Q)rm -f crda regdbdump intersect *.o *~ *.pyc keys-*.c