blob: b3c693d7249a62a897934e1f2be015539addbceb [file] [log] [blame]
Dennis Kempina9963ba2012-06-08 10:32:23 -07001# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4GCC = gcc
5
6OBJDIR = cobj
7
8OBJECTS=\
9 $(OBJDIR)/libevdev.o \
10 $(OBJDIR)/libevdev_mt.o \
11 $(OBJDIR)/libevdev_event.o
12
13SONAME=$(OBJDIR)/libevdev.so.0
14
15DEPDIR = .deps
16
17DESTDIR = .
18
19CFLAGS=\
20 -g \
21 -O2 \
22 -fno-exceptions \
23 -fno-strict-aliasing \
24 -fPIC \
25 -Wall \
26 -Wclobbered \
27 -Wempty-body \
28 -Werror \
29 -Wignored-qualifiers \
30 -Wmissing-field-initializers \
31 -Wtype-limits \
32 -Wuninitialized \
33 -D_FILE_OFFSET_BITS=64 \
34 -DGESTURES_INTERNAL=1 \
35 -Iinclude
36
37all: $(SONAME)
38
39$(SONAME): $(OBJECTS)
40 $(GCC) -shared -o $@ $(OBJECTS) -Wl,-h$(SONAME:$(OBJDIR)/%=%) \
41 $(LINK_FLAGS)
42
43$(OBJDIR)/%.o : src/%.c
44 mkdir -p $(OBJDIR) $(DEPDIR) || true
45 $(GCC) -std=gnu99 $(CFLAGS) -MD -c -o $@ $<
46 @mv $(@:$.o=$.d) $(DEPDIR)
47
48LIBDIR = /usr/lib
49
50install: $(SONAME)
51 install -D -m 0755 $(SONAME) \
52 $(DESTDIR)$(LIBDIR)/$(SONAME:$(OBJDIR)/%=%)
53 ln -s $(SONAME:$(OBJDIR)/%=%) \
54 $(DESTDIR)$(LIBDIR)/$(SONAME:$(OBJDIR)/%.0=%)
55 install -D -m 0644 \
56 include/libevdev.h $(DESTDIR)/usr/include/libevdev/libevdev.h
57 include/libevdev_event.h $(DESTDIR)/usr/include/libevdev/libevdev_event.h
58 include/libevdev_mt.h $(DESTDIR)/usr/include/libevdev/libevdev_mt.h
59
60clean:
61 rm -rf $(OBJDIR) $(DEPDIR) html app.info app.info.orig
62
63.PHONY : clean all
64
65-include $(OBJECTS:$(OBJDIR)/%.o=$(DEPDIR)/%.d)