1 ##############################################################################
2 # Copyright (c) 1998 Free Software Foundation, Inc. #
4 # Permission is hereby granted, free of charge, to any person obtaining a #
5 # copy of this software and associated documentation files (the "Software"), #
6 # to deal in the Software without restriction, including without limitation #
7 # the rights to use, copy, modify, merge, publish, distribute, distribute #
8 # with modifications, sublicense, and/or sell copies of the Software, and to #
9 # permit persons to whom the Software is furnished to do so, subject to the #
10 # following conditions: #
12 # The above copyright notice and this permission notice shall be included in #
13 # all copies or substantial portions of the Software. #
15 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR #
16 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, #
17 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL #
18 # THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER #
19 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING #
20 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER #
21 # DEALINGS IN THE SOFTWARE. #
23 # Except as contained in this notice, the name(s) of the above copyright #
24 # holders shall not be used in advertising or otherwise to promote the sale, #
25 # use or other dealings in this Software without prior written #
27 ##############################################################################
29 # Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
41 top_srcdir = @top_srcdir@
45 exec_prefix = @exec_prefix@
46 ADA_INCLUDE = $(DESTDIR)@ADA_INCLUDE@
47 ADA_OBJECTS = $(DESTDIR)@ADA_OBJECTS@
50 INSTALL_DATA = @INSTALL_DATA@
58 CPPFLAGS = @ACPPFLAGS@ \
59 -DHAVE_CONFIG_H -I$(srcdir)
61 CCFLAGS = $(CPPFLAGS) $(CFLAGS)
62 CFLAGS_NORMAL = $(CCFLAGS)
63 CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
64 CFLAGS_PROFILE = $(CCFLAGS) -pg
65 CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
67 CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
70 LD_FLAGS = @LD_MODEL@ $(LOCAL_LIBS) @LDFLAGS@ @LIBS@ @LOCAL_LDFLAGS2@ $(LDFLAGS)
74 LIB_CURSES = -L../../lib -lncurses@LIB_SUFFIX@
79 GENERATE = ./gen$x '@DFT_ARG_SUFFIX@'
80 DEL_ADAMODE = sed -e '/^\-\-\ \ \-\*\-\ ada\ \-\*\-.*/d'
82 GNATHTML = `type -p gnathtml || type -p gnathtml.pl`
84 MAIL = juergen.pfeifer@gmx.net
85 HOMEP = home.t-online.de/home/Juergen.Pfeifer
87 ################################################################################
88 ALIB = @cf_ada_package@
89 ABASE = $(ALIB)-curses
93 GEN_FILES0 = Base_Defs
95 GEN_FILES1 = Key_Definitions \
97 Character_Attribute_Set_Rep \
106 GEN_FILES2 = Menu_Opt_Rep \
108 Menu_Linker_Options \
111 GEN_FILES3 = Form_Opt_Rep \
113 Form_Linker_Options \
116 GEN_FILES4 = Mouse_Base_Defs \
121 GEN_FILES5 = Chtype_Def \
124 GEN_TARGETS = $(ADA_SRCDIR)/$(ABASE).ads \
125 $(ADA_SRCDIR)/$(ABASE)-aux.ads \
126 $(ADA_SRCDIR)/$(ABASE)-menus.ads \
127 $(ADA_SRCDIR)/$(ABASE)-forms.ads \
128 $(ADA_SRCDIR)/$(ABASE)-mouse.ads \
129 $(ADA_SRCDIR)/$(ABASE)-panels.ads \
130 $(ADA_SRCDIR)/$(ABASE)-menus-menu_user_data.ads \
131 $(ADA_SRCDIR)/$(ABASE)-menus-item_user_data.ads \
132 $(ADA_SRCDIR)/$(ABASE)-forms-form_user_data.ads \
133 $(ADA_SRCDIR)/$(ABASE)-forms-field_types.ads \
134 $(ADA_SRCDIR)/$(ABASE)-forms-field_user_data.ads \
135 $(ADA_SRCDIR)/$(ABASE)-panels-user_data.ads
137 GEN_SRC = $(srcdir)/$(ABASE).ads.m4 \
138 $(srcdir)/$(ABASE)-aux.ads.m4 \
139 $(srcdir)/$(ABASE)-menus.ads.m4 \
140 $(srcdir)/$(ABASE)-forms.ads.m4 \
141 $(srcdir)/$(ABASE)-mouse.ads.m4 \
142 $(srcdir)/$(ABASE)-panels.ads.m4 \
143 $(srcdir)/$(ABASE)-menus-menu_user_data.ads.m4 \
144 $(srcdir)/$(ABASE)-menus-item_user_data.ads.m4 \
145 $(srcdir)/$(ABASE)-forms-form_user_data.ads.m4 \
146 $(srcdir)/$(ABASE)-forms-field_types.ads.m4 \
147 $(srcdir)/$(ABASE)-forms-field_user_data.ads.m4 \
148 $(srcdir)/$(ABASE)-panels-user_data.ads.m4
152 libs : $(GEN_TARGETS)
159 $(top_srcdir)/mkinstalldirs $@
162 install.libs :: $(ADA_INCLUDE)
163 @echo installing package $(ALIB) in $(ADA_INCLUDE)
164 @$(top_srcdir)/tar-copy.sh '$(ALIB)[-.]*.ad?' $(ADA_SRCDIR) $(ADA_INCLUDE)
165 @test $(srcdir) != ./ && $(top_srcdir)/tar-copy.sh '$(ALIB)[-.]*.ad?' $(srcdir)/../src $(ADA_INCLUDE)
168 install.libs :: $(ADA_OBJECTS)
169 @echo installing package $(ALIB) in $(ADA_OBJECTS)
170 @chmod a-wx $(ADA_SRCDIR)/*.ali
171 @$(top_srcdir)/tar-copy.sh '$(ALIB)[-.]*.ali' $(ADA_SRCDIR) $(ADA_OBJECTS)
172 @chmod u+x $(ADA_SRCDIR)/*.ali
176 @echo removing package $(ALIB) from $(ADA_INCLUDE)
177 -@cd $(ADA_INCLUDE) && rm -f $(ALIB)[-.]*
181 @echo removing package $(ALIB) from $(ADA_OBJECTS)
182 -@cd $(ADA_OBJECTS) && rm -f $(ALIB)[-.]*
185 @ECHO_LINK@ $(LINK) $(CFLAGS_NORMAL) gen.o $(LD_FLAGS) -o $@ $(LIB_CURSES)
187 gen.o: $(srcdir)/gen.c
188 $(HOST_CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/gen.c
190 Character_Attribute_Set_Rep: gen$x
199 Key_Definitions: gen$x
211 Linker_Options: gen$x
217 Window_Offsets: gen$x
223 Menu_Base_Defs: gen$x
226 Menu_Linker_Options: gen$x
235 Form_Base_Defs: gen$x
238 Form_Linker_Options: gen$x
244 Mouse_Base_Defs: gen$x
247 Mouse_Event_Rep: gen$x
253 Panel_Linker_Options: gen$x
262 $(ADA_SRCDIR)/$(ABASE).ads: $(srcdir)/$(ABASE).ads.m4 \
263 $(GEN_FILES1) $(srcdir)/normal.m4
264 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
265 $(srcdir)/$(ABASE).ads.m4 |\
268 $(ADA_SRCDIR)/$(ABASE)-aux.ads: $(srcdir)/$(ABASE)-aux.ads.m4 \
269 $(GEN_FILES5) $(srcdir)/normal.m4
270 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
271 $(srcdir)/$(ABASE)-aux.ads.m4 |\
274 $(ADA_SRCDIR)/$(ABASE)-menus.ads: $(srcdir)/$(ABASE)-menus.ads.m4 \
275 $(GEN_FILES2) $(srcdir)/normal.m4
276 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
277 $(srcdir)/$(ABASE)-menus.ads.m4 |\
280 $(ADA_SRCDIR)/$(ABASE)-forms.ads: $(srcdir)/$(ABASE)-forms.ads.m4 \
281 $(GEN_FILES3) $(srcdir)/normal.m4
282 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
283 $(srcdir)/$(ABASE)-forms.ads.m4 |\
286 $(ADA_SRCDIR)/$(ABASE)-mouse.ads: $(srcdir)/$(ABASE)-mouse.ads.m4 \
287 $(GEN_FILES4) $(srcdir)/normal.m4
288 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
289 $(srcdir)/$(ABASE)-mouse.ads.m4 |\
292 $(ADA_SRCDIR)/$(ABASE)-panels.ads: $(srcdir)/$(ABASE)-panels.ads.m4 \
294 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
295 $(srcdir)/$(ABASE)-panels.ads.m4 |\
298 $(ADA_SRCDIR)/$(ABASE)-menus-menu_user_data.ads: \
299 $(srcdir)/$(ABASE)-menus-menu_user_data.ads.m4 \
301 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
302 $(srcdir)/$(ABASE)-menus-menu_user_data.ads.m4 |\
305 $(ADA_SRCDIR)/$(ABASE)-menus-item_user_data.ads: \
306 $(srcdir)/$(ABASE)-menus-item_user_data.ads.m4 \
308 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
309 $(srcdir)/$(ABASE)-menus-item_user_data.ads.m4 |\
312 $(ADA_SRCDIR)/$(ABASE)-forms-form_user_data.ads: \
313 $(srcdir)/$(ABASE)-forms-form_user_data.ads.m4 \
315 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
316 $(srcdir)/$(ABASE)-forms-form_user_data.ads.m4 |\
319 $(ADA_SRCDIR)/$(ABASE)-forms-field_types.ads: \
320 $(srcdir)/$(ABASE)-forms-field_types.ads.m4 \
322 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
323 $(srcdir)/$(ABASE)-forms-field_types.ads.m4 |\
326 $(ADA_SRCDIR)/$(ABASE)-forms-field_user_data.ads: \
327 $(srcdir)/$(ABASE)-forms-field_user_data.ads.m4 \
329 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
330 $(srcdir)/$(ABASE)-forms-field_user_data.ads.m4 |\
333 $(ADA_SRCDIR)/$(ABASE)-panels-user_data.ads: \
334 $(srcdir)/$(ABASE)-panels-user_data.ads.m4 \
336 $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
337 $(srcdir)/$(ABASE)-panels-user_data.ads.m4 |\
349 -rm -f a.out core gen$x *.o
357 -rm -f $(GEN_TARGETS) instab.tmp *.ad[bs] *.html *.ali *.tmp
362 realclean :: distclean
364 HTML_DIR = ../../doc/html/ada
366 instab.tmp : table.m4 $(GEN_SRC)
368 @for f in $(GEN_SRC) ; do \
369 $(M4) $(M4FLAGS) -DM4MACRO=table.m4 $$f | $(DEL_ADAMODE) >> $@ ;\
372 $(HTML_DIR)/table.html : instab.tmp
375 @echo '<!DOCTYPE HTML' > $@
376 @echo 'PUBLIC "-//IETF//DTD HTML 3.0//EN">' >> $@
379 @echo '<TITLE>Correspondence between ncurses C and Ada functions</TITLE>' >>$@
380 @echo '</HEAD>' >> $@
382 @echo '<H1>Correspondence between ncurses C and Ada functions</H1>' >>$@
383 @echo '<H2>Sorted by C function name</H2>' >>$@
384 @echo '<TABLE ALIGN=CENTER BORDER>' >>$@
385 @echo '<TR ALIGN=LEFT>' >>$@
386 @echo '<TH>C name</TH><TH>Ada name</TH><TH>man page</TH></TR>' >>$@
387 @sort < instab.tmp >> $@
388 @echo '</TABLE></BODY></HTML>' >>$@
393 @mkdir -p $(HTML_DIR)
394 cp -p ../src/*.ad[sb] . && chmod +w *.ad[sb]
395 ln -sf ../src/*.ali .
396 for f in $(GEN_SRC); do \
397 g=`basename $$f .ads.m4` ;\
398 $(M4) $(M4FLAGS) -DM4MACRO=html.m4 $$f | $(DEL_ADAMODE) > $$g.ads ;\
400 @-rm -f $(HTML_DIR)/$(ALIB)*.htm*
401 $(GNATHTML) -d -f $(ALIB)*.ads
402 for f in html/$(ALIB)*.htm*; do \
404 sed -e 's/You may also.*body.*//' <$$f |\
405 sed -e 's%GNAT%<A HREF="http://$(GNATHP)">GNAT</A>%g' |\
406 sed -e 's%<A HREF%<A HREF%g' |\
407 sed -e 's%">%">%g' |\
408 sed -e 's/3X/3x/g' |\
409 sed -e 's/$$\([A-Za-z0-9_]*:.*\)\$$/@\1@/' |\
410 sed -e 's%Juergen Pfeifer%<A HREF="http://$(HOMEP)">J\ürgen Pfeifer</A>%g' |\
411 sed -e 's%$(MAIL)%<A HREF="mailto:$(MAIL)">\<$(MAIL)\></A>%g' |\
412 sed -e 's%</A>%</A>%g' > $$a.tmp ;\
415 @rm -f *.ad[sb] *.ali *.tmp
416 @for f in funcs.htm main.htm ; do \
417 sed -e "\%<A HREF=funcs/ .htm>\[ \]</A>%d" < html/$$f > $$f ;\
420 @rm -f "html/funcs/ .htm"
421 @cp -pdrf html/* $(HTML_DIR)/
424 html : adahtml $(HTML_DIR)/table.html
427 ###############################################################################
428 # The remainder of this file is automatically generated during configuration
429 ###############################################################################