~ubuntu-branches/ubuntu/intrepid/libgtkada2/intrepid

« back to all changes in this revision

Viewing changes to src/Makefile.in

  • Committer: Bazaar Package Importer
  • Author(s): Ludovic Brenta
  • Date: 2008-07-31 18:10:47 UTC
  • mfrom: (1.1.3 upstream)
  • mto: This revision was merged to the branch mainline in revision 7.
  • Revision ID: james.westby@ubuntu.com-20080731181047-6m1y25zjad0p2yjr
Tags: 2.12.0-2

Correct the project files to add a Library_ALI_Dir and correct the
Library_Name.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
SHELL=/bin/sh
2
 
 
3
 
.SUFFIXES:
4
 
.SUFFIXES: .c .o .ads .adb .ali
5
 
 
6
 
.PHONY:
7
 
.PHONY: clean-generic mostlyclean-generic \
8
 
        clean distclean mostlyclean maintainer-clean
9
 
 
10
 
include Makefile.common
 
1
all: dirs libs tools
11
2
 
12
3
MAKE_ADB = make_gtk
13
4
 
14
5
CFLAGS = -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS \
15
6
 @CFLAGS@ -Wall @GTK_CFLAGS@ -I.. $(FPIC)
16
7
 
17
 
GNATMAKEBINDFLAGS =
18
 
GNATMAKELDFLAGS = -largs -L. -lgtkada $(GTK_LIBS)
19
 
 
20
8
GETTEXT_INTL=@GETTEXT_INTL@
21
9
HAVE_GETTEXT=@HAVE_GETTEXT@
22
10
 
23
 
LIB_DIR=lib-obj
24
 
 
25
 
CD = cd
26
 
MKDIR = mkdir -p
27
 
RMDIR = rmdir
28
 
MV = mv
29
 
INSTALL = @INSTALL@
30
 
INSTALL_PROGRAM = @INSTALL_PROGRAM@
31
 
INSTALL_DATA = @INSTALL_DATA@
32
 
INSTALL_SCRIPT = @INSTALL_SCRIPT@
 
11
OBJ_DIR=lib-obj
33
12
 
34
13
LIBNAME       = libgtkada$(SO_EXT)
35
14
ifeq ($(OS),Windows_NT)
39
18
endif
40
19
ARCHIVENAME   = libgtkada.a
41
20
 
42
 
GTKADA_CONFIG = gtkada-config
43
 
GATE_SRC      = gate.adb
44
 
GATE_EX       = gate-in.exe
45
 
GATE          = gate
46
 
GENERATE      = generate.pl
47
 
DGATE         = dgate
48
 
GDIALOG       = gdialog
49
 
 
50
 
c_objects = $(LIB_DIR)/misc.o $(LIB_DIR)/misc_extra.o $(LIB_DIR)/misc_broken.o
51
 
c_extra_objects = gtkextra/gtk*.o
 
21
c_objects = misc.o misc_extra.o misc_broken.o
 
22
c_objects_dir= ${c_objects:%=${OBJ_DIR}/%}
 
23
c_extra_objects = ../gtkextra/obj/gtk*.o
 
24
 
 
25
SRC_FILES=glib*.o gdk*.o gtk*.o pango*.o ${c_objects} ${c_extra_objects}
 
26
EXTERNAL_LIBS=
 
27
include Makefile.common
 
28
 
 
29
## These cannot be shared in Makefile.common, since relative paths might be
 
30
## generated for configure (../install-sh), or absolute paths (/usr/bin/install)
 
31
INSTALL         = @INSTALL@
 
32
INSTALL_DATA    = @INSTALL_DATA@
 
33
INSTALL_PROGRAM = @INSTALL_PROGRAM@
 
34
INSTALL_SCRIPT  = @INSTALL_SCRIPT@
52
35
 
53
36
## General and public targets
54
37
 
55
 
all: dirs libs tools
56
 
 
 
38
libs: ada ${c_objects_dir} gtkextra
57
39
ifeq ($(BUILD_SHARED),yes)
58
 
libs: extra $(LIBNAME) $(ARCHIVENAME) opengl glade gnome install_ali
59
 
else
60
 
libs: extra $(ARCHIVENAME) opengl glade gnome install_ali
 
40
libs: ${OBJ_DIR}/$(SONAME)
61
41
endif
62
 
 
63
 
opengl: force
64
 
        $(MAKE) -C opengl
65
 
 
66
 
extra: force
67
 
        $(MAKE) -C gtkextra
68
 
 
69
 
glade: force
70
 
        $(MAKE) -C glade
71
 
 
72
 
gnome: force
73
 
        $(MAKE) -C gnome
74
 
 
75
 
tools: $(GATE_EX) $(GDIALOG)
 
42
libs: ${OBJ_DIR}/${ARCHIVENAME} opengl glade gnome
 
43
 
 
44
opengl gtkextra glade gnome tools: force
 
45
        $(MAKE) -C $@
76
46
 
77
47
## Private targets
78
48
 
79
49
dirs:: force
80
 
        -$(MKDIR) $(LIB_DIR)
81
 
        -$(CHMOD) +x $(GATE) $(GTKADA_CONFIG)
82
 
 
83
 
$(LIBNAME):: $(LIB_DIR)/$(MAKE_ADB).o ${wildcard ${LIB_DIR}/*.o} $(c_objects)
84
 
ifeq ($(BUILD_SHARED),yes)
85
 
        $(CC) -shared $(FPIC) $(OS_SPECIFIC_LINK_OPTIONS) -o $(SONAME) \
86
 
          $(SO_OPTS)$(SONAME) $(LIB_DIR)/glib*.o $(LIB_DIR)/gdk*.o \
87
 
          $(LIB_DIR)/gtk*.o $(LIB_DIR)/pango*.o \
88
 
          $(c_objects) $(c_extra_objects) $(GTK_LIBS)
89
 
        $(RM) $(LIBNAME)
90
 
        $(LN) $(SONAME) $(LIBNAME)
91
 
ifeq ($(OS),Windows_NT)
92
 
        -@if [ ! -f .devel ]; then \
93
 
          $(CHMOD) +x $(SONAME) $(LIBNAME); \
94
 
        fi
95
 
else
96
 
        -@if [ ! -f .devel ]; then \
97
 
          strip $(LIBNAME); \
98
 
          $(CHMOD) +x $(LIBNAME); \
99
 
        fi
100
 
endif
101
 
endif
102
 
 
103
 
$(ARCHIVENAME):: $(LIB_DIR)/$(MAKE_ADB).o ${wildcard ${LIB_DIR}/*.o} $(c_objects)
104
 
        $(AR) $(ARFLAGS) $(ARCHIVENAME) $(LIB_DIR)/glib*.o $(LIB_DIR)/gdk*.o $(LIB_DIR)/gtk*.o $(LIB_DIR)/pango*.o $(c_objects) $(c_extra_objects)
105
 
        -$(RANLIB) $(ARCHIVENAME)
106
 
 
107
 
# This copies the .ali files from lib_obj/ to the current directory, and change
108
 
# the permission of the files so that dgate, gate and testgtk use the dynamic
109
 
# library. We do not do this if .devel exists, so that gnatmake will still
110
 
# rebuild the files (it does not check anything if the .ali files are read-only.
111
 
install_ali::
112
 
        test -f .devel || $(CP) $(LIB_DIR)/*.ali .
113
 
        test -f .devel || $(CHMOD) -w glib*.ali gdk*.ali gtk*.ali pango*.ali
114
 
 
115
 
$(GATE_EX):: $(GATE_SRC) $(LIBNAME) force
116
 
        @if [ -f .devel ]; then \
117
 
          $(GNATMAKE) -aO$(LIB_DIR) $(GNATFLAGS_DEVEL) -o $(GATE_EX) $(GATE_SRC) $(GNATMAKEBINDFLAGS) $(GNATMAKELDFLAGS); \
118
 
        else \
119
 
          $(GNATMAKE) $(GNATFLAGS) -o $(GATE_EX) $(GATE_SRC) $(GNATMAKEBINDFLAGS) $(GNATMAKELDFLAGS); \
120
 
        fi
121
 
 
122
 
$(DGATE):: $(DGATE).adb $(LIBNAME) glade
123
 
        @if [ -f .devel ]; then \
124
 
           $(GNATMAKE) -aO$(LIB_DIR) -Iglade $(GNATFLAGS_DEVEL) $(DGATE) $(GNATMAKEBINDFLAGS) $(GNATMAKELDFLAGS); \
125
 
        else \
126
 
           $(GNATMAKE) -Iglade $(GNATFLAGS) $(DGATE) $(GNATMAKEBINDFLAGS) $(GNATMAKELDFLAGS); \
127
 
        fi
128
 
 
129
 
$(GDIALOG):: $(GDIALOG).adb $(LIBNAME)
130
 
        @if [ -f .devel ]; then \
131
 
           $(GNATMAKE) -aO$(LIB_DIR) $(GNATFLAGS_DEVEL) $(GDIALOG) $(GNATMAKEBINDFLAGS) $(GNATMAKELDFLAGS); \
132
 
        else \
133
 
           $(GNATMAKE) $(GNATFLAGS) $(GDIALOG) $(GNATMAKEBINDFLAGS) $(GNATMAKELDFLAGS); \
134
 
        fi
135
 
 
136
 
$(LIB_DIR)/$(MAKE_ADB).o:: gtkada-intl.adb force
137
 
        @if [ -f .devel ]; then \
138
 
          $(CD) $(LIB_DIR); \
139
 
          $(GNATMAKE) -c ../$(MAKE_ADB) $(GNATFLAGS_DEVEL) $(FPIC); \
140
 
        else \
141
 
          $(CD) $(LIB_DIR); \
142
 
          $(GNATMAKE) -c ../$(MAKE_ADB) $(GNATFLAGS) $(FPIC); \
143
 
        fi
 
50
        -$(MKDIR) $(OBJ_DIR)
 
51
 
 
52
ada: gtkada-intl.adb force
 
53
        ${GNATMAKE} -Pgtkada_src -u ${FPIC} ${GPR_BUILD}
144
54
 
145
55
gtkada-intl.adb: gtkada-intl.gpb Makefile
146
56
        gnatprep -DGETTEXT_INTL=$(GETTEXT_INTL) \
147
57
          -DHAVE_GETTEXT=$(HAVE_GETTEXT) gtkada-intl.gpb gtkada-intl.adb
148
58
 
149
 
install: all
 
59
install: all force
150
60
        @if [ "$(prefix)" != `pwd` ]; then \
151
61
           echo Installing GtkAda in $(prefix); \
152
62
           $(MKDIR) $(bindir); \
153
63
           $(MKDIR) $(libdir); \
154
64
           $(MKDIR) $(incdir); \
155
 
           $(MKDIR) $(alidir); \
156
 
           $(INSTALL_DATA) $(ARCHIVENAME) $(alidir); \
 
65
           $(MKDIR) $(alidir)/static; \
 
66
           $(INSTALL_DATA) ${OBJ_DIR}/$(ARCHIVENAME) $(alidir)/static; \
157
67
           $(RM) $(libdir)/$(ARCHIVENAME); \
158
68
           if [ -f /usr/bin/$(RANLIB) -o -f /bin/$(RANLIB) ]; then \
159
 
             $(RANLIB) $(alidir)/$(ARCHIVENAME); \
 
69
             $(RANLIB) $(alidir)/static/$(ARCHIVENAME); \
160
70
           fi; \
161
71
           if [ $(BUILD_SHARED) = yes ]; then \
 
72
                $(MKDIR) $(alidir)/relocatable; \
 
73
                $(INSTALL_DATA) ${OBJ_DIR}/$(SONAME) $(alidir)/relocatable; \
162
74
                if [ "$(OS)" = "Windows_NT" ]; then \
163
 
                     $(INSTALL_DATA) $(SONAME) $(bindir); \
164
 
                     $(INSTALL_DATA) $(SONAME) $(alidir); \
165
 
                     $(CHMOD) +x $(bindir)/$(SONAME) $(alidir)/$(SONAME); \
 
75
                     $(INSTALL_DATA) ${OBJ_DIR}/$(SONAME) $(bindir); \
 
76
                     ${INSTALL_DATA} ${OBJ_DIR}/$(SONAME) ${alidir}/relocatable/${LIBNAME}; \
 
77
                     $(CHMOD) +x $(bindir)/$(SONAME) $(alidir)/relocatable/$(SONAME); \
166
78
                else \
167
 
                     $(INSTALL_DATA) $(SONAME) $(alidir); \
168
79
                     $(RM) $(libdir)/$(LIBNAME); \
169
 
                     $(LN) $(SONAME) $(alidir)/$(LIBNAME); \
170
 
                     $(LN) gtkada/$(SONAME) $(libdir)/$(LIBNAME); \
171
 
                     $(LN) gtkada/$(SONAME) $(libdir)/$(SONAME); \
 
80
                     $(LN) $(SONAME) $(alidir)/relocatable/$(LIBNAME); \
 
81
                     $(LN) gtkada/relocatable/$(SONAME) $(libdir)/$(LIBNAME); \
 
82
                     $(LN) gtkada/relocatable/$(SONAME) $(libdir)/$(SONAME); \
172
83
                fi; \
 
84
                $(CP) $(OBJ_DIR)/glib*.ali $(OBJ_DIR)/gdk*.ali $(alidir)/relocatable; \
 
85
                $(CP) $(OBJ_DIR)/gtk*.ali $(OBJ_DIR)/pango*.ali $(alidir)/relocatable; \
173
86
           fi; \
174
87
           $(CP) glib*.ads glib*.adb $(MESA_SPECS) $(incdir); \
175
88
           $(CP) gdk*.ads gdk*.adb $(incdir); \
176
89
           $(CP) gtk*.ads gtk*.adb $(incdir); \
177
90
           $(CP) pango*.ads pango*.adb $(incdir); \
178
 
           $(CP) $(LIB_DIR)/glib*.ali $(LIB_DIR)/gdk*.ali $(LIB_DIR)/gtk*.ali $(LIB_DIR)/pango*.ali $(alidir); \
179
 
           $(CHMOD) ugo-w $(alidir)/*.ali; \
180
 
           $(INSTALL_SCRIPT) $(GTKADA_CONFIG) $(bindir); \
181
 
           $(INSTALL_SCRIPT) $(GATE) $(bindir); \
182
 
           $(INSTALL_SCRIPT) $(GENERATE) $(bindir); \
183
 
           $(INSTALL_PROGRAM) $(GATE_EX) $(bindir); \
184
 
           $(INSTALL_PROGRAM) $(GDIALOG) $(bindir); \
 
91
           $(CP) $(OBJ_DIR)/glib*.ali $(OBJ_DIR)/gdk*.ali $(alidir)/static; \
 
92
           $(CP) $(OBJ_DIR)/gtk*.ali $(OBJ_DIR)/pango*.ali $(alidir)/static; \
185
93
           $(MAKE) -C opengl install; \
186
94
           $(MAKE) -C glade install; \
187
95
           $(MAKE) -C gnome install; \
 
96
           $(MAKE) -C tools install; \
 
97
           $(CHMOD) ugo-w $(alidir)/static/*.ali; \
 
98
           if [ $(BUILD_SHARED) = yes ]; then \
 
99
              $(CHMOD) ugo-w $(alidir)/relocatable/*.ali; \
 
100
           fi; \
188
101
        fi
189
 
        @echo '------------------------------------------------------------------'
190
 
        @echo '--  GtkAda has now been installed.                              --'
191
 
        @echo '--  To be able to use the library, you may need to update your  --'
192
 
        @echo '--  LD_LIBRARY_PATH or to run ldconfig. You may also need to    --'
193
 
        @echo '--  update your PATH to include gtkada-config in it.            --'
194
 
        @echo '------------------------------------------------------------------'
195
102
 
196
 
clean-generic:
197
 
        -${RM} *.o *.ali *~ b_*.c b~*.ad? core
198
 
        -$(RM) $(LIB_DIR)/*
199
 
        -${RM} $(ARCHIVENAME) $(LIBNAME) $(SONAME)
200
 
        -${RM} $(GATE_EX) $(DGATE) $(GDIALOG)
 
103
clean:
 
104
        -${RM} *.o *.ali *~ b_*.c b~*.ad? core gtkada-intl.adb
 
105
        -$(RM) $(OBJ_DIR)/*
201
106
        -${RM} .\#*
202
 
 
203
 
mostlyclean-generic: clean-generic
204
 
        -${RM} Makefile
205
 
        -${RM} $(GATE)
206
 
        -${RM} $(GTKADA_CONFIG)
207
 
 
208
 
clean: clean-generic
209
107
        $(MAKE) -C gtkextra clean
210
108
        $(MAKE) -C opengl clean
211
109
        $(MAKE) -C glade clean
212
110
        $(MAKE) -C gnome clean
 
111
        $(MAKE) -C tools clean
213
112
 
214
 
distclean: mostlyclean-generic
 
113
distclean: force
 
114
        -${RM} Makefile
215
115
        $(MAKE) -C gtkextra distclean
216
116
        $(MAKE) -C opengl distclean
217
117
        $(MAKE) -C glade distclean
218
118
        $(MAKE) -C gnome distclean
219
 
        -$(RM) Makefile.common
220
 
 
221
 
mostlyclean: mostlyclean-generic
222
 
        $(MAKE) -C gtkextra mostlyclean
223
 
        $(MAKE) -C opengl mostlyclean
224
 
        $(MAKE) -C glade mostlyclean
225
 
        $(MAKE) -C gnome mostlyclean
226
 
        -$(RM) Makefile.common
227
 
 
228
 
maintainer-clean: mostlyclean-generic
229
 
        $(MAKE) -C gtkextra maintainer-clean
230
 
        $(MAKE) -C opengl maintainer-clean
231
 
        $(MAKE) -C glade maintainer-clean
232
 
        $(MAKE) -C gnome maintainer-clean
 
119
        $(MAKE) -C tools distclean
233
120
        -$(RM) Makefile.common
234
121
 
235
122
## Find the list of bindings that are not up-to-date
239
126
## Building the C files: they all depend on the c file in the source directory
240
127
## The dependencies on the .h files have to be given explicitly
241
128
 
242
 
$(c_objects): $(LIB_DIR)/%.o : %.c
243
 
        $(CD) $(LIB_DIR); $(CC) -c $(CFLAGS) ../$<
 
129
$(c_objects_dir): $(OBJ_DIR)/%.o : %.c
 
130
        $(CC) -o $@ -c $(CFLAGS) $<
244
131
 
245
132
force:
246
133