Mercurial > dwindows
annotate Makefile.in @ 250:967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
Add dependencies for all targets.
Add building dwtest to default target
author | mhessling@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Wed, 19 Feb 2003 11:14:29 +0000 |
parents | efd4703450fa |
children | 3087f7da0515 |
rev | line source |
---|---|
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
1 srcdir=@srcdir@ |
3 | 2 CC = @CC@ |
3 CCFLAGS = @CFLAGS@ -g -O2 -Wall -D__UNIX__ -DBUILD_DLL -DDW_RESOURCES | |
4 LFLAGS = @LIBS@ | |
41
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
5 INSTALL = @INSTALL@ |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
6 INCPATH = -I.. -I. -I$(srcdir) |
3 | 7 DESTDIR = ./lib/ |
8 MLFLAGS = -L$(DESTDIR) | |
9 TARGET = dw | |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
10 SRCS = $(srcdir)/gtk/dw.c |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
11 OBJECTS = dw.o |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
12 SRCS2 = $(srcdir)compat.c |
3 | 13 OBJECTS2= compat.o |
14 TARGET2 = dwcompat | |
147
b479002e013f
Upped the DW revision to 1.0, and merged with the latest code in the FX
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
80
diff
changeset
|
15 VER_MAJ = 1 |
b479002e013f
Upped the DW revision to 1.0, and merged with the latest code in the FX
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
80
diff
changeset
|
16 VER_MIN = 0 |
41
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
17 PREFIX = @prefix@ |
3 | 18 |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
19 #.SUFFIXES: .c .h |
3 | 20 |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
21 #.c.o: |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
22 # $(CC) -c $(CCFLAGS) $(INCPATH) -o $@ $< |
3 | 23 |
24 | |
25 # Link flags shared objects | |
26 SYSCONF_LFLAGS_SHOBJ = -shared | |
27 | |
28 # Linking shared libraries | |
29 # - Build the $(TARGET) library, eg. lib$(TARGET).so.0.0 | |
30 # - Place target in $(DESTDIR) - which has a trailing / | |
31 # - Usually needs to incorporate $(VER_MAJ) and $(VER_MIN) | |
32 # | |
33 SYSCONF_LINK_SHLIB = gcc | |
34 SYSCONF_LINK_TARGET_SHARED = lib$(TARGET).so.$(VER_MAJ).$(VER_MIN) | |
35 SYSCONF_LINK_LIB_SHARED = $(SYSCONF_LINK_SHLIB) -shared -Wl,-soname,lib$(TARGET).so.$(VER_MAJ) \ | |
36 -o $(SYSCONF_LINK_TARGET_SHARED) \ | |
37 $(OBJECTS) $(LFLAGS); \ | |
38 mv $(SYSCONF_LINK_TARGET_SHARED) $(DESTDIR); \ | |
39 cd $(DESTDIR); \ | |
40 rm -f lib$(TARGET).so lib$(TARGET).so.$(VER_MAJ); \ | |
41 ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so; \ | |
42 ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so.$(VER_MAJ) | |
43 | |
44 SYSCONF_LINK_TARGET_SHARED2 = lib$(TARGET2).so.$(VER_MAJ).$(VER_MIN) | |
45 SYSCONF_LINK_LIB_SHARED2 = $(SYSCONF_LINK_SHLIB) -shared -Wl,-soname,lib$(TARGET2).so.$(VER_MAJ) \ | |
46 -o $(SYSCONF_LINK_TARGET_SHARED2) \ | |
47 $(OBJECTS2) $(LFLAGS); \ | |
48 mv $(SYSCONF_LINK_TARGET_SHARED2) $(DESTDIR); \ | |
49 cd $(DESTDIR); \ | |
50 rm -f lib$(TARGET2).so lib$(TARGET2).so.$(VER_MAJ); \ | |
51 ln -s $(SYSCONF_LINK_TARGET_SHARED2) lib$(TARGET2).so; \ | |
52 ln -s $(SYSCONF_LINK_TARGET_SHARED2) lib$(TARGET2).so.$(VER_MAJ) | |
53 | |
54 | |
55 # Linking static libraries | |
56 # - Build the $(TARGET) library, eg. lib$(TARGET).a | |
57 # - Place target in $(DESTDIR) - which has a trailing / | |
58 # | |
59 SYSCONF_AR = ar cqs | |
60 SYSCONF_LINK_TARGET_STATIC = lib$(TARGET).a | |
61 SYSCONF_LINK_LIB_STATIC = rm -f $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) ; \ | |
62 $(SYSCONF_AR) $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) $(OBJECTS) | |
63 | |
64 | |
65 | |
66 ####### Build rules | |
67 | |
68 SYSCONF_LINK_TARGET = $(SYSCONF_LINK_TARGET_SHARED) | |
69 SYSCONF_LINK_LIB = $(SYSCONF_LINK_LIB_SHARED) | |
70 | |
71 SYSCONF_LINK_TARGET2 = $(SYSCONF_LINK_TARGET_SHARED2) | |
72 SYSCONF_LINK_LIB2 = $(SYSCONF_LINK_LIB_SHARED2) | |
73 | |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
74 all: $(SYSCONF_LINK_TARGET) $(SYSCONF_LINK_TARGET2) dwtest |
3 | 75 |
44
24afe3035088
Removed dependencies on install rule.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
41
diff
changeset
|
76 install: |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
77 $(INSTALL) $(srcdir)/dw.h $(PREFIX)/include; \ |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
78 $(INSTALL) $(srcdir)/compat.h $(PREFIX)/include; \ |
80
5e4730c42014
Added dw-config script to solve build problems.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
78
diff
changeset
|
79 $(INSTALL) dw-config $(PREFIX)/bin; \ |
41
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
80 cd $(DESTDIR); \ |
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
81 $(INSTALL) $(SYSCONF_LINK_TARGET) $(PREFIX)/lib; \ |
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
82 $(INSTALL) $(SYSCONF_LINK_TARGET2) $(PREFIX)/lib; \ |
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
83 cd $(PREFIX)/lib; \ |
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
84 rm -f lib$(TARGET).so lib$(TARGET).so.$(VER_MAJ); \ |
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
85 ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so; \ |
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
86 ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so.$(VER_MAJ); \ |
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
87 rm -f lib$(TARGET2).so lib$(TARGET2).so.$(VER_MAJ); \ |
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
88 ln -s $(SYSCONF_LINK_TARGET_SHARED2) lib$(TARGET2).so; \ |
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
89 ln -s $(SYSCONF_LINK_TARGET_SHARED2) lib$(TARGET2).so.$(VER_MAJ) |
af0a78aa0d45
More updates, and a more comprehensive unix install scheme. Use target
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
90 |
3 | 91 clean: |
92 rm -f *.so | |
93 rm -f *.o | |
94 rm -f *~ | |
95 rm -f *.a | |
96 rm -f gtk/*.o | |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
97 |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
98 $(DESTDIR): |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
99 mkdir $(DESTDIR) |
3 | 100 |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
101 $(SYSCONF_LINK_TARGET2): $(OBJECTS2) $(DESTDIR) |
3 | 102 $(SYSCONF_LINK_LIB2) |
103 | |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
104 $(SYSCONF_LINK_TARGET): $(OBJECTS) $(DESTDIR) |
3 | 105 $(SYSCONF_LINK_LIB) |
193
efd4703450fa
Build test application on Unix too... and also fixed GTK to allow
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
147
diff
changeset
|
106 |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
107 dw.o: $(srcdir)/gtk/dw.c |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
108 $(CC) -c $(CCFLAGS) $(INCPATH) -o $@ $(srcdir)/gtk/dw.c |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
109 |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
110 compat.o: $(srcdir)/compat.c |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
111 $(CC) -c $(CCFLAGS) $(INCPATH) -o $@ $(srcdir)/compat.c |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
112 |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
113 ci.o: $(srcdir)/ci.c |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
114 $(CC) -c $(CCFLAGS) $(INCPATH) -o $@ $(srcdir)/ci.c |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
115 |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
116 dwtest.o: $(srcdir)/dwtest.c |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
117 $(CC) -c $(CCFLAGS) $(INCPATH) -o $@ $(srcdir)/dwtest.c |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
118 |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
119 ci: ci.o |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
120 $(CC) -o ci ci.o -L$(PREFIX)/lib -ldw -ldwcompat $(LFLAGS) |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
121 |
193
efd4703450fa
Build test application on Unix too... and also fixed GTK to allow
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
147
diff
changeset
|
122 dwtest: dwtest.o |
250
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
123 $(CC) -o dwtest dwtest.o -L$(PREFIX)/lib -ldw -ldwcompat $(LFLAGS) |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
124 |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
125 zip: |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
126 zip dw.zip $(srcdir)/makefile.* $(srcdir)/readme $(srcdir)/*.c $(srcdir)/*.h \ |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
127 $(srcdir)/*.def $(srcdir)/install.sh $(srcdir)/*.in $(srcdir)/configure \ |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
128 $(srcdir)/ac*.m4 $(srcdir)/gtk/*.c $(srcdir)/win/*.c $(srcdir)/os2/*.c \ |
967b8cd9deb4
Add srcdir usage to allow building to be done from anywhere.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
129 $(srcdir)/platform/*.h |