annotate libdha/Makefile @ 21850:a678ff4617fd

Remove generated pci_* files on clean, not just on distclean.
author diego
date Wed, 10 Jan 2007 16:54:44 +0000
parents 2a0a1f974172
children c24e237516f6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
1 # makefile
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
2
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
3 include ../config.mak
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
4
12692
797e602bf1dd make the awk script working for localized machines too, patch by Onur Kucuk
alex
parents: 12069
diff changeset
5 MAJOR_VERSION = 1
797e602bf1dd make the awk script working for localized machines too, patch by Onur Kucuk
alex
parents: 12069
diff changeset
6 MINOR_VERSION = 0
7811
aa0536d98278 change versioning of libdha, patch from Guillem Jover <guillem.jover@menta.net>
eyck
parents: 7073
diff changeset
7 VERSION = $(MAJOR_VERSION).$(MINOR_VERSION)
aa0536d98278 change versioning of libdha, patch from Guillem Jover <guillem.jover@menta.net>
eyck
parents: 7073
diff changeset
8
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
9
4167
36fb2dcd3ccc Fix for cygwin.
atmos4
parents: 4110
diff changeset
10 ifeq ($(TARGET_OS),CYGWIN)
36fb2dcd3ccc Fix for cygwin.
atmos4
parents: 4110
diff changeset
11 SHORTNAME = libdha.dll
36fb2dcd3ccc Fix for cygwin.
atmos4
parents: 4110
diff changeset
12 else
7811
aa0536d98278 change versioning of libdha, patch from Guillem Jover <guillem.jover@menta.net>
eyck
parents: 7073
diff changeset
13 SHORTNAME = libdha.so.$(MAJOR_VERSION)
aa0536d98278 change versioning of libdha, patch from Guillem Jover <guillem.jover@menta.net>
eyck
parents: 7073
diff changeset
14 SONAME_FLAGS = -Wl,-soname,$(SHORTNAME)
7824
ef5f2f54c231 really fix latest fix. But now this versioning stopped making sense to me.
eyck
parents: 7812
diff changeset
15 #SHORTNAME = libdha.so
ef5f2f54c231 really fix latest fix. But now this versioning stopped making sense to me.
eyck
parents: 7812
diff changeset
16 VSHORTNAME = libdha.so
4167
36fb2dcd3ccc Fix for cygwin.
atmos4
parents: 4110
diff changeset
17 endif
12069
841fd0c2f2e3 fix compilation on cygwin
faust3
parents: 11238
diff changeset
18 ifeq ($(TARGET_WIN32),yes)
11238
38ce28265e5f imho static linking causes less problems for mingw
faust3
parents: 9881
diff changeset
19 LIBNAME = libdha.a
38ce28265e5f imho static linking causes less problems for mingw
faust3
parents: 9881
diff changeset
20 SHORTNAME = libdha.a
38ce28265e5f imho static linking causes less problems for mingw
faust3
parents: 9881
diff changeset
21 else
7005
40c596e65526 adds a soname and a shared library version number to libdha.
arpi
parents: 6628
diff changeset
22 LIBNAME = libdha.so.$(VERSION)
11238
38ce28265e5f imho static linking causes less problems for mingw
faust3
parents: 9881
diff changeset
23 endif
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
24
17943
c127ce678083 cosmetics: Shorten overly long lines, put SRCS/OBJS on individual lines
diego
parents: 17488
diff changeset
25 SRCS=libdha.c \
c127ce678083 cosmetics: Shorten overly long lines, put SRCS/OBJS on individual lines
diego
parents: 17488
diff changeset
26 mtrr.c \
c127ce678083 cosmetics: Shorten overly long lines, put SRCS/OBJS on individual lines
diego
parents: 17488
diff changeset
27 pci.c \
c127ce678083 cosmetics: Shorten overly long lines, put SRCS/OBJS on individual lines
diego
parents: 17488
diff changeset
28 pci_names.c \
c127ce678083 cosmetics: Shorten overly long lines, put SRCS/OBJS on individual lines
diego
parents: 17488
diff changeset
29
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
30 OBJS=$(SRCS:.c=.o)
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
31
20388
9e8d9b93639c Remove -fno-PIC check from configure and put -fPIC back at the beginning
diego
parents: 20307
diff changeset
32 CFLAGS = -fPIC -I. -I.. $(OPTFLAGS)
20304
c9c6db3c2645 Remove stray line.
diego
parents: 19420
diff changeset
33
6057
31e465fda59c various openbsd and general warning fixes - patch by Bj«Órn Sandell <biorn@dce.chalmers.se>
arpi
parents: 4476
diff changeset
34 ifeq ($(TARGET_OS),OpenBSD)
6628
10131c2b3987 Small fix for non-X86 OpenBSD by Bj«Órn Sandell <biorn at dce.chalmers.se>
atmos4
parents: 6253
diff changeset
35 ifeq ($(TARGET_ARCH_X86),yes)
6057
31e465fda59c various openbsd and general warning fixes - patch by Bj«Órn Sandell <biorn@dce.chalmers.se>
arpi
parents: 4476
diff changeset
36 LIBS += -li386
31e465fda59c various openbsd and general warning fixes - patch by Bj«Órn Sandell <biorn@dce.chalmers.se>
arpi
parents: 4476
diff changeset
37 endif
6628
10131c2b3987 Small fix for non-X86 OpenBSD by Bj«Órn Sandell <biorn at dce.chalmers.se>
atmos4
parents: 6253
diff changeset
38 endif
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
39
8503
9dbb9c710480 svgalib kernelhelper support (based on patch by Matan Ziv-Av <matan@svgalib.org>) and some reordering/cleanup (part #1 ;)
alex
parents: 8461
diff changeset
40 # If you want libdha to use svgalib_helper for hardware access,
9dbb9c710480 svgalib kernelhelper support (based on patch by Matan Ziv-Av <matan@svgalib.org>) and some reordering/cleanup (part #1 ;)
alex
parents: 8461
diff changeset
41 # uncomment this statement, and change the -I to the correct directory
9dbb9c710480 svgalib kernelhelper support (based on patch by Matan Ziv-Av <matan@svgalib.org>) and some reordering/cleanup (part #1 ;)
alex
parents: 8461
diff changeset
42 # that includes svgalib_helper.o:
9881
60d1ccf22469 automatic svgalib_helper detection
alex
parents: 8506
diff changeset
43 ifneq ($(wildcard svgalib_helper),)
60d1ccf22469 automatic svgalib_helper detection
alex
parents: 8506
diff changeset
44 CFLAGS += -DDEV_SVGA=\"/dev/svga\" -DCONFIG_SVGAHELPER -Isvgalib_helper/
60d1ccf22469 automatic svgalib_helper detection
alex
parents: 8506
diff changeset
45 endif
8503
9dbb9c710480 svgalib kernelhelper support (based on patch by Matan Ziv-Av <matan@svgalib.org>) and some reordering/cleanup (part #1 ;)
alex
parents: 8461
diff changeset
46
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
47 .SUFFIXES: .c .o
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
48
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
49 # .PHONY: all clean
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
50
8506
55e80f13c826 pci_names.c creation fixup
alex
parents: 8503
diff changeset
51 .c.o: pci_names.c
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
52 $(CC) -c $(CFLAGS) -o $@ $<
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
53
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
54 $(LIBNAME): $(OBJS)
12069
841fd0c2f2e3 fix compilation on cygwin
faust3
parents: 11238
diff changeset
55 ifeq ($(TARGET_WIN32),yes)
11238
38ce28265e5f imho static linking causes less problems for mingw
faust3
parents: 9881
diff changeset
56 $(AR) r $(LIBNAME) $(OBJS)
38ce28265e5f imho static linking causes less problems for mingw
faust3
parents: 9881
diff changeset
57 else
7812
29a006405a5f fix previous patch.
eyck
parents: 7811
diff changeset
58 #$(CC) -shared $(SONAME_FLAGS) -o $(LIBNAME) $(OBJS) $(LIBS)
29a006405a5f fix previous patch.
eyck
parents: 7811
diff changeset
59 $(CC) -shared -Wl,-soname -Wl,$(LIBNAME) -o $(LIBNAME) $(OBJS) $(LIBS)
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
60 ln -sf $(LIBNAME) $(SHORTNAME)
7824
ef5f2f54c231 really fix latest fix. But now this versioning stopped making sense to me.
eyck
parents: 7812
diff changeset
61 ln -sf $(LIBNAME) $(VSHORTNAME)
11238
38ce28265e5f imho static linking causes less problems for mingw
faust3
parents: 9881
diff changeset
62 endif
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
63
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
64 all: $(LIBNAME) $(SHORTNAME)
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
65
21821
2a0a1f974172 Fix dependencies for pci_names.c.
diego
parents: 21230
diff changeset
66 pci_names.c: oth/pci.db
2a0a1f974172 Fix dependencies for pci_names.c.
diego
parents: 21230
diff changeset
67 LC_ALL=C $(AWK) -f pci_db2c.awk $<
4106
64c1e79575df Gawk generator
nick
parents: 4030
diff changeset
68
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
69 test:
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
70 $(CC) test.c -o test $(SHORTNAME)
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
71
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
72 clean:
17488
ce1ba8fd57e7 Make clean/distclean behave uniformly in all directories.
diego
parents: 17288
diff changeset
73 rm -f *.o *.a *~ *.so *.so.*
21850
a678ff4617fd Remove generated pci_* files on clean, not just on distclean.
diego
parents: 21821
diff changeset
74 rm -f pci_*.c pci_*.h pci.db
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
75
17488
ce1ba8fd57e7 Make clean/distclean behave uniformly in all directories.
diego
parents: 17288
diff changeset
76 distclean: clean
ce1ba8fd57e7 Make clean/distclean behave uniformly in all directories.
diego
parents: 17288
diff changeset
77 rm -f .depend test
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
78
21080
618d1857f4c4 Unify dep/depend targets.
diego
parents: 20388
diff changeset
79 dep depend: pci_names.c
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
80 $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
81
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
82 install:
18083
b069afd2a0de Simplify mkdir calls.
diego
parents: 17964
diff changeset
83 -mkdir -p $(LIBDIR)
17288
4c86d2479aa2 use $(INSTALLSTRIP) consistently
rathann
parents: 14291
diff changeset
84 install -m 755 $(INSTALLSTRIP) -p $(LIBNAME) $(LIBDIR)/$(LIBNAME)
14291
f4b8d6abce22 Install libdha into LIBDIR.
reimar
parents: 12802
diff changeset
85 rm -f $(LIBDIR)/libdha.so
f4b8d6abce22 Install libdha into LIBDIR.
reimar
parents: 12802
diff changeset
86 ln -sf $(LIBNAME) $(LIBDIR)/$(SHORTNAME)
6057
31e465fda59c various openbsd and general warning fixes - patch by Bj«Órn Sandell <biorn@dce.chalmers.se>
arpi
parents: 4476
diff changeset
87 ifeq ($(TARGET_OS),OpenBSD)
17964
2a85c470cbd0 Discard return value from ldconfig, it might not work on non-root installs.
diego
parents: 17943
diff changeset
88 -ldconfig -R
6057
31e465fda59c various openbsd and general warning fixes - patch by Bj«Órn Sandell <biorn@dce.chalmers.se>
arpi
parents: 4476
diff changeset
89 else
17964
2a85c470cbd0 Discard return value from ldconfig, it might not work on non-root installs.
diego
parents: 17943
diff changeset
90 -ldconfig
6057
31e465fda59c various openbsd and general warning fixes - patch by Bj«Órn Sandell <biorn@dce.chalmers.se>
arpi
parents: 4476
diff changeset
91 endif
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
92
8461
ace211f1ed2b uninstall switch
alex
parents: 7824
diff changeset
93 uninstall:
14291
f4b8d6abce22 Install libdha into LIBDIR.
reimar
parents: 12802
diff changeset
94 rm -f $(LIBDIR)/libdha.so $(LIBDIR)/$(SHORTNAME) $(LIBDIR)/$(LIBNAME)
8461
ace211f1ed2b uninstall switch
alex
parents: 7824
diff changeset
95 ifeq ($(TARGET_OS),OpenBSD)
17964
2a85c470cbd0 Discard return value from ldconfig, it might not work on non-root installs.
diego
parents: 17943
diff changeset
96 -ldconfig -R
8461
ace211f1ed2b uninstall switch
alex
parents: 7824
diff changeset
97 else
17964
2a85c470cbd0 Discard return value from ldconfig, it might not work on non-root installs.
diego
parents: 17943
diff changeset
98 -ldconfig
8461
ace211f1ed2b uninstall switch
alex
parents: 7824
diff changeset
99 endif
ace211f1ed2b uninstall switch
alex
parents: 7824
diff changeset
100
3973
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
101 ifneq ($(wildcard .depend),)
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
102 include .depend
138800dfbe22 preliminary support of direct hardware access
nick
parents:
diff changeset
103 endif