1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
ifdef DEBUG
DEB_BUILD_OPTIONS := debug:$(DEB_BUILD_OPTIONS)
endif
CFLAGS := -Wall -I.
DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
OBJS := loadkeys.o findfile.o ksyms.o getfd.o
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
CFLAGS += -g -DDEBUG=1
OBJS += xmalloc.o
STRIP= /bin/true
else
CFLAGS += -DNDEBUG=1 -fomit-frame-pointer -Os
STRIPTOOL=strip
STRIP= $(STRIPTOOL) --remove-section=.note --remove-section=.comment
endif
LDOPTS= -ldebconfclient -ldebian-installer
ifeq ($(DEB_HOST_ARCH),alpha)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),i386)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),amd64)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),ia64)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),mips)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),mipsel)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),mips64el)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),sparc)
CFLAGS += -DAT_KBD -DSPARC_KBD -DUSB_KBD
KEYBOARDS := at usb sparc
endif
ifeq ($(DEB_HOST_ARCH),sparc64)
CFLAGS += -DAT_KBD -DSPARC_KBD -DUSB_KBD
KEYBOARDS := at usb sparc
endif
ifeq ($(DEB_HOST_ARCH),powerpc)
CFLAGS += -DUSB_KBD -DAT_KBD -DAMIGA_KBD -DMAC_KBD
KEYBOARDS := at usb amiga mac
endif
ifeq ($(DEB_HOST_ARCH),arm)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),armel)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),armeb)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),armhf)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),m68k)
CFLAGS += -DAMIGA_KBD -DATARI_KBD -DMAC_KBD -DAT_KBD -DSPARC_KBD -D__m68k__
KEYBOARDS := amiga atari mac at sparc
endif
# For the moment, don't include HIL keyboards
ifeq ($(DEB_HOST_ARCH),hppa)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),sh4)
CFLAGS += -DUSB_KBD
KEYBOARDS := usb
endif
ifeq ($(DEB_HOST_ARCH),arm64)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
ifeq ($(DEB_HOST_ARCH),ppc64el)
CFLAGS += -DAT_KBD -DUSB_KBD
KEYBOARDS := at usb
endif
TEMPLATES := debian/kbd-chooser.templates-in $(patsubst %, debian/keyboard-%.templates, $(KEYBOARDS))
OBJS += $(patsubst %, %-kbd.o, $(KEYBOARDS))
all: kbd-chooser kbd-mode debian/kbd-chooser.templates
kbd-chooser: ${OBJS} kbd-chooser.c
$(CC) $(CFLAGS) kbd-chooser.c -o $@ $(OBJS) $(LDOPTS)
$(STRIP) $@
kbd-mode: getfd.o kbd-mode.c
$(CC) $(CFLAGS) kbd-mode.c -o $@ getfd.o $(LDOPTS)
$(STRIP) $@
debian/kbd-chooser.templates: $(TEMPLATES)
cat $(TEMPLATES) > $@
# give the new templates file the same mtime as the input file, so
# that po2debconf doesn't decide that it needs to run
# debconf-updatepo
touch -mr debian/kbd-chooser.templates-in $@
loadkeys.o: loadkeys.c analyze.c
clean:
rm -f *~ *.o kbd-mode kbd-chooser analyze.c loadkeys.c demo demo.templates *#
rm -f debian/kbd-chooser.templates
install:
mkdir -p $(DESTDIR)/usr/bin
cp kbd-chooser $(DESTDIR)/usr/bin/kbd-chooser
cp kbd-mode $(DESTDIR)/usr/bin/kbd-mode
.PHONY: demo
demo.templates: debian/kbd-chooser.templates
po2debconf $< > $@
demo: demo.templates kbd-chooser
rm -f demo
ln -s kbd-chooser demo
DEBCONF_DEBUG=developer /usr/share/debconf/frontend ./demo
rm -f demo.templates demo
|