1.10
[platform/upstream/kbd.git] / src / Makefile.in
1 include ../make_include
2
3 PREFIX = @prefix@
4
5 # Something like /usr/lib/kbd or /usr/share/kbd
6 ifndef DATA_DIR
7 DATA_DIR = @datadir@
8 endif
9
10 ifndef BINDIR
11 BINDIR = $(DESTDIR)$(PREFIX)/bin
12 endif
13
14 # Maybe we want to use a qwertz keyboard before /usr is mounted
15 ifndef LOADKEYS_BINDIR
16 ifeq ($(PREFIX), /usr)
17   LOADKEYS_BINDIR = $(DESTDIR)/bin
18 else
19   LOADKEYS_BINDIR = $(DESTDIR)$(PREFIX)/bin
20 endif
21 endif
22
23 # Omit the "-o root" when installing elsewhere
24 ifeq "$(DESTDIR)" ""
25   setowner = -o root
26 else
27   setowner =
28 endif
29
30 PROGS   = dumpkeys loadkeys showkey setfont showconsolefont \
31           setleds setmetamode kbd_mode chvt deallocvt \
32           psfxtable kbdrate fgconsole
33
34 # probably also getkeycodes and setkeycodes are arch-specific;
35 # they will work on an alpha, though, and perhaps be dummy on a sun
36 ifneq ($(ARCH), m68k)
37 ifneq ($(ARCH), sparc)
38 PROGS += getkeycodes setkeycodes
39 endif
40 endif
41
42 ifeq ($(ARCH), i386)
43 PROGS += resizecons
44 endif
45
46 OLDPROGS= mapscrn loadunimap
47
48 # Not installed by default
49 MISC    = screendump setlogcons setvesablank spawn_console spawn_login \
50           getunimap clrunimap outpsfheader setpalette
51
52 # Installed by default
53 SHCMDS  = unicode_start unicode_stop
54
55 WARN    = -Wall -Wmissing-prototypes -Wstrict-prototypes
56 DEFS    = -DDATADIR=\"$(DATA_DIR)\"
57 CFLAGS  = -O2
58 LDFLAGS = -s
59
60 CC      = gcc
61 YACC    = bison -y
62 LEX     = flex -8
63
64 .c.o:
65         $(CC) -c $(WARN) $(CFLAGS) $(DEFS) $<
66
67 all:    $(PROGS) $(OLDPROGS) $(MISC)
68
69 progs:  $(PROGS)
70
71 old:    $(OLDPROGS)
72
73 install:        all
74         install -d -m 0755 $(BINDIR) $(LOADKEYS_BINDIR)
75         install -s -m 0755 $(setowner) $(PROGS) $(OLDPROGS) $(BINDIR)
76 #       install -s -m 0755 $(setowner) $(MISC) $(BINDIR)
77         install -c -m 0755 $(setowner) $(SHCMDS) $(BINDIR)
78         for i in psfaddtable psfgettable psfstriptable; do \
79                 rm -f $(BINDIR)/$$i; ln -s psfxtable $(BINDIR)/$$i; \
80         done
81         rm -f $(BINDIR)/loadkeys
82         install -s -m 0755 $(setowner) loadkeys $(LOADKEYS_BINDIR)
83         @echo "You may also want to add psf.magic to /usr/lib/magic"
84
85
86 # loadkeys.o: separate rule since the flex output does not permit -Wall
87 loadkeys.o:     loadkeys.c analyze.c
88         $(CC) -c $(CFLAGS) $(DEFS) $<
89
90
91 # mapscrn and loadunimap are now part of setfont
92 # but can be compiled separately, if desired
93 main_mapscrn.o: mapscrn.c paths.h
94         $(CC) $(CFLAGS) $(WARN) $(DEFS) -DMAIN -c $< -o $@
95
96 main_loadunimap.o: loadunimap.c paths.h
97         $(CC) $(CFLAGS) $(WARN) $(DEFS) -DMAIN -c $< -o $@
98
99 $(OLDPROGS): %: main_%.o findfile.o psffontop.o utf8.o
100         $(CC) $(LDFLAGS) $^ -o $@
101
102
103 clean reallyclean spotless distclean:
104         rm -f core *.o analyze.c loadkeys.c
105         rm -f $(PROGS) $(OLDPROGS) $(MISC) *~
106
107 $(PROGS): %: %.o
108
109 #
110 # dependencies
111 #
112
113 ksyms.o: koi8.syms.h ethiopic.syms.h
114
115 findfile.o loadkeys.o loadunimap.o mapscrn.o resizecons.o setfont.o: findfile.h
116
117 catwithfont.o chvt.o clrunimap.o deallocvt.o dumpkeys.o fgconsole.o: getfd.h
118 getfd.o getkeycodes.o getunimap.o kbd_mode.o loadkeys.o loadunimap.o: getfd.h
119 mapscrn.o resizecons.o setfont.o setkeycodes.o setlogcons.o: getfd.h
120 setpalette.o setvesablank.o showconsolefont.o showkey.o: getfd.h
121
122 kdfontop.o setfont.o showconsolefont.o: kdfontop.h
123
124 clrunimap.o kdmapop.o loadunimap.o mapscrn.o: kdmapop.h
125
126 dumpkeys.o ksyms.o loadkeys.o: ksyms.h
127
128 dumpkeys.o loadkeys.o: modifiers.h
129
130 catwithfont.o chvt.o clrunimap.o deallocvt.o dumpkeys.o fgconsole.o: nls.h
131 findfile.o getfd.o getkeycodes.o getunimap.o kbd_mode.o kbdrate.o: nls.h
132 kdfontop.o ksyms.o loadkeys.o loadunimap.o mapscrn.o psffontop.o: nls.h
133 psfxtable.o resizecons.o screendump.o setfont.o setkeycodes.o setleds.o: nls.h
134 setmetamode.o setvesablank.o showconsolefont.o showkey.o xmalloc.o: nls.h
135
136 loadkeys.o loadunimap.o mapscrn.o resizecons.o setfont.o: paths.h
137
138 loadunimap.o psffontop.o psfxtable.o setfont.o: psf.h
139
140 psffontop.o psfxtable.o setfont.o: psffontop.h
141
142 loadunimap.o psffontop.o utf8.o: utf8.h
143
144 chvt.o deallocvt.o dumpkeys.o getkeycodes.o getunimap.o kbd_mode.o: version.h
145 kbdrate.o loadkeys.o loadunimap.o mapscrn.o psfxtable.o resizecons.o: version.h
146 screendump.o setfont.o setkeycodes.o setleds.o setmetamode.o: version.h
147 showconsolefont.o showkey.o totextmode.o: version.h
148
149 findfile.o kdfontop.o loadunimap.o psffontop.o psfxtable.o: xmalloc.h
150 setfont.o xmalloc.o: xmalloc.h
151
152 #
153 # constituent object files
154 #
155
156 dumpkeys loadkeys: ksyms.o xmalloc.o
157
158 getunimap screendump showconsolefont: xmalloc.o
159
160 psfxtable: psffontop.o xmalloc.o utf8.o
161
162 loadkeys mapscrn setfont resizecons loadunimap: findfile.o xmalloc.o
163
164 chvt clrunimap deallocvt dumpkeys fgconsole getkeycodes getunimap: getfd.o
165 kbd_mode loadkeys loadunimap mapscrn resizecons setkeycodes setfont: getfd.o
166 setpalette showconsolefont setlogcons setvesablank showkey: getfd.o
167
168 setfont: mapscrn.o loadunimap.o kdmapop.o kdfontop.o psffontop.o utf8.o
169
170 loadunimap: utf8.o
171
172 getunimap mapscrn clrunimap loadunimap showconsolefont: kdmapop.o
173
174 catwithfont showconsolefont: kdfontop.o