Makefile.in revision 166124
1# $Id: Makefile.in,v 1.101 2006/10/14 19:08:11 tom Exp $ 2############################################################################## 3# Copyright (c) 1998-2005,2006 Free Software Foundation, Inc. # 4# # 5# Permission is hereby granted, free of charge, to any person obtaining a # 6# copy of this software and associated documentation files (the "Software"), # 7# to deal in the Software without restriction, including without limitation # 8# the rights to use, copy, modify, merge, publish, distribute, distribute # 9# with modifications, sublicense, and/or sell copies of the Software, and to # 10# permit persons to whom the Software is furnished to do so, subject to the # 11# following conditions: # 12# # 13# The above copyright notice and this permission notice shall be included in # 14# all copies or substantial portions of the Software. # 15# # 16# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # 17# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # 18# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # 19# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # 20# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # 21# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # 22# DEALINGS IN THE SOFTWARE. # 23# # 24# Except as contained in this notice, the name(s) of the above copyright # 25# holders shall not be used in advertising or otherwise to promote the sale, # 26# use or other dealings in this Software without prior written # 27# authorization. # 28############################################################################## 29# 30# Author: Thomas E. Dickey 1996-on 31# 32# Makefile for ncurses source code. 33# 34# This makes the following: 35# programs 36# includes 37# libraries (normal/debug/profile/shared) 38# 39# The variable 'srcdir' refers to the source-distribution, and can be set with 40# the configure script by "--srcdir=DIR". 41# 42# The rules are organized to produce the libraries for the configured models, 43# and the programs with the configured default model. 44 45# turn off _all_ suffix rules; we'll generate our own 46.SUFFIXES: 47 48SHELL = /bin/sh 49THIS = Makefile 50 51CF_MFLAGS = @cf_cv_makeflags@ 52@SET_MAKE@ 53 54x = @EXEEXT@ 55o = .@OBJEXT@ 56 57MODEL = @DFT_LWR_MODEL@ 58DESTDIR = @DESTDIR@ 59top_srcdir = @top_srcdir@ 60srcdir = @srcdir@ 61prefix = @prefix@ 62exec_prefix = @exec_prefix@ 63bindir = @bindir@ 64libdir = @libdir@ 65includedir = @includedir@ 66datadir = @datadir@ 67 68LIBTOOL = @LIBTOOL@ 69LIBTOOL_CLEAN = @LIB_CLEAN@ 70LIBTOOL_COMPILE = @LIB_COMPILE@ 71LIBTOOL_LINK = @LIB_LINK@ 72LIBTOOL_INSTALL = @LIB_INSTALL@ 73LIBTOOL_UNINSTALL = @LIB_UNINSTALL@ 74 75INSTALL = @INSTALL@ 76INSTALL_LIB = @INSTALL@ @INSTALL_LIB@ 77INSTALL_PROG = @INSTALL_PROGRAM@ 78INSTALL_DATA = @INSTALL_DATA@ 79 80AR = @AR@ 81AR_OPTS = @AR_OPTS@ 82AWK = @AWK@ 83LD = @LD@ 84LN_S = @LN_S@ 85 86CC = @CC@ 87CPP = @CPP@ 88CFLAGS = @CFLAGS@ 89 90INCDIR = $(srcdir)/../include 91CPPFLAGS = -DHAVE_CONFIG_H -I../ncurses -I$(srcdir) @CPPFLAGS@ 92 93CCFLAGS = $(CPPFLAGS) $(CFLAGS) 94 95BUILD_CPPFLAGS = -I../include @BUILD_CPPFLAGS@ 96BUILD_CC = @BUILD_CC@ 97BUILD_CCFLAGS = -DHAVE_CONFIG_H -I../ncurses -I$(srcdir) -I$(INCDIR) $(BUILD_CPPFLAGS) @BUILD_CFLAGS@ 98BUILD_LDFLAGS = @BUILD_LDFLAGS@ 99BUILD_LIBS = @BUILD_LIBS@ 100 101# The executables built in this directory are used for generating source that 102# is compiled into the build, or are test-programs that are not installed. 103 104BUILD_EXEEXT = @BUILD_EXEEXT@ 105x = @PROG_EXT@ 106 107CFLAGS_LIBTOOL = $(CCFLAGS) 108CFLAGS_NORMAL = $(CCFLAGS) 109CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE 110CFLAGS_PROFILE = $(CCFLAGS) -pg 111CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ 112 113CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) 114 115LINK = $(LIBTOOL) $(CC) 116LDFLAGS = @LDFLAGS@ @LD_MODEL@ @LIBS@ 117 118SHLIB_DIRS = -L../lib 119SHLIB_LIST = $(SHLIB_DIRS) @SHLIB_LIST@ 120TINFO_LIST = $(SHLIB_DIRS) @TINFO_LIST@ 121 122MK_SHARED_LIB = @MK_SHARED_LIB@ 123 124NCURSES_MAJOR = @NCURSES_MAJOR@ 125NCURSES_MINOR = @NCURSES_MINOR@ 126REL_VERSION = @cf_cv_rel_version@ 127ABI_VERSION = @cf_cv_abi_version@ 128 129RANLIB = @LIB_PREP@ 130 131IMPORT_LIB = @IMPORT_LIB@ 132SHARED_LIB = @SHARED_LIB@ 133LIBRARIES = @LIBS_TO_MAKE@ 134 135LINT = @LINT@ 136LINT_OPTS = @LINT_OPTS@ 137LINT_LIBS = -lncurses @LIBS@ 138 139FALLBACK_LIST = @FALLBACK_LIST@ 140 141TERMINFO_CAPS = $(top_srcdir)/include/@TERMINFO_CAPS@ 142 143AUTO_SRC = \ 144 ./codes.c \ 145 ./comp_captab.c \ 146 ./expanded.c \ 147 ./fallback.c \ 148 ./lib_gen.c \ 149 ./lib_keyname.c \ 150 ./link_test.c \ 151 ./names.c \ 152 ./unctrl.c \ 153 init_keytry.h \ 154 keys.list \ 155 names-stamp 156 157TEST_DEPS = ../lib/@LIB_PREFIX@ncurses@DFT_DEP_SUFFIX@ 158TEST_ARGS = -L../lib -lncurses@DFT_ARG_SUFFIX@ 159TEST_LDFLAGS = @LD_MODEL@ $(TEST_ARGS) @LIBS@ @LOCAL_LDFLAGS@ @LDFLAGS@ 160 161TEST_PROGS = \ 162 captoinfo$x \ 163 hardscroll$x \ 164 link_test$x \ 165 hashmap$x \ 166 lib_mvcur$x 167 168base = $(srcdir)/base 169serial = $(srcdir)/tty 170tinfo = $(srcdir)/tinfo 171trace = $(srcdir)/trace 172wide = $(srcdir)/widechar 173 174################################################################################ 175all \ 176libs :: $(AUTO_SRC) ../lib $(LIBRARIES) 177 178sources: $(AUTO_SRC) 179 180$(DESTDIR)$(bindir) \ 181$(DESTDIR)$(libdir) : 182 sh $(srcdir)/../mkinstalldirs $@ 183 184../lib : ; mkdir $@ 185 186./fallback.c : $(tinfo)/MKfallback.sh 187 sh $(tinfo)/MKfallback.sh @TERMINFO@ @TERMINFO_SRC@ $(FALLBACK_LIST) >$@ 188 189./lib_gen.c : $(base)/MKlib_gen.sh ../include/curses.h 190 sh $(base)/MKlib_gen.sh "$(CPP) $(CPPFLAGS)" "$(AWK)" generated <../include/curses.h >$@ 191 192init_keytry.h: make_keys$(BUILD_EXEEXT) keys.list 193 ./make_keys$(BUILD_EXEEXT) keys.list > $@ 194 195keys.list : $(tinfo)/MKkeys_list.sh 196 AWK=$(AWK) sh $(tinfo)/MKkeys_list.sh $(TERMINFO_CAPS) | sort >$@ 197 198make_keys$(BUILD_EXEEXT) : \ 199 $(tinfo)/make_keys.c \ 200 names-stamp 201 $(BUILD_CC) -o $@ $(BUILD_CCFLAGS) $(tinfo)/make_keys.c $(BUILD_LDFLAGS) $(BUILD_LIBS) 202 203make_hash$(BUILD_EXEEXT) : \ 204 $(tinfo)/comp_hash.c \ 205 ../include/hashsize.h 206 $(BUILD_CC) -o $@ $(BUILD_CCFLAGS) -DMAIN_PROGRAM $(tinfo)/comp_hash.c $(BUILD_LDFLAGS) $(BUILD_LIBS) 207 208./expanded.c : $(serial)/MKexpanded.sh 209 sh $(serial)/MKexpanded.sh "$(CPP)" $(CPPFLAGS) > $@ 210 211./comp_captab.c: \ 212 make_hash$(BUILD_EXEEXT) \ 213 ../include/hashsize.h \ 214 $(tinfo)/MKcaptab.awk 215 sh $(tinfo)/MKcaptab.awk $(AWK) $(srcdir)/../include/@TERMINFO_CAPS@ > $@ 216 217./lib_keyname.c: keys.list $(base)/MKkeyname.awk 218 $(AWK) -f $(base)/MKkeyname.awk keys.list > $@ 219 220names-stamp: $(tinfo)/MKnames.awk 221 $(AWK) -f $(tinfo)/MKnames.awk $(srcdir)/../include/@TERMINFO_CAPS@ 222 cat namehdr boolnames boolfnames numnames numfnames strnames strfnames nameftr >names.c 223 cat namehdr boolcodes numcodes strcodes codeftr >codes.c 224 -rm -f namehdr nameftr codeftr boolnames boolfnames boolcodes numnames numfnames numcodes strnames strfnames strcodes 225 @echo >$@ 226 227./names.c: names-stamp 228 @echo made $@ 229 230./codes.c: names-stamp 231 @echo made $@ 232 233./unctrl.c: $(base)/MKunctrl.awk 234 echo | $(AWK) -f $(base)/MKunctrl.awk >$@ 235 236tags: 237 ctags *.[ch] */*.[ch] 238 239@MAKE_UPPER_TAGS@TAGS: 240@MAKE_UPPER_TAGS@ etags *.[ch] */*.[ch] 241 242mostlyclean :: 243 -rm -f core tags TAGS *~ *.bak *.i *.ln *.atac trace 244 -rm -f $(TEST_PROGS) 245 246clean :: mostlyclean 247 -rm -f $(AUTO_SRC) 248 -rm -f make_keys$(BUILD_EXEEXT) 249 -rm -f make_hash$(BUILD_EXEEXT) 250 -rm -rf .libs 251 252distclean :: clean 253 -rm -f Makefile 254 255realclean :: distclean 256 257# These rules are used to allow "make -n" to work on a clean directory-tree 258../include/hashsize.h \ 259../include/parametrized.h \ 260../include/term.h : 261 cd ../include; $(MAKE) $(CF_MFLAGS) 262 263# These rules build test-programs for the modules that have test-drivers 264test_progs : $(TEST_PROGS) 265 266./link_test.c : $(base)/MKlib_gen.sh ../include/curses.h 267 sh $(base)/MKlib_gen.sh "$(CPP) $(CPPFLAGS)" "$(AWK)" implemented <../include/curses.h >$@ 268 269captoinfo$x : $(tinfo)/captoinfo.c $(TEST_DEPS) 270 @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) -DMAIN $(tinfo)/captoinfo.c $(TEST_LDFLAGS) 271 272hardscroll$x : $(serial)/hardscroll.c $(TEST_DEPS) 273 @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) -DSCROLLDEBUG $(serial)/hardscroll.c $(TEST_LDFLAGS) 274 275hashmap$x : $(serial)/hashmap.c $(TEST_DEPS) 276 @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) -DHASHDEBUG $(serial)/hashmap.c $(TEST_LDFLAGS) 277 278lib_mvcur$x : $(serial)/lib_mvcur.c $(TEST_DEPS) \ 279 ../@DFT_OBJ_SUBDIR@/dump_entry$o 280 @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) -DNCURSES_TEST -I$(serial)/../../progs $(serial)/lib_mvcur.c ../@DFT_OBJ_SUBDIR@/dump_entry$o $(TEST_LDFLAGS) 281 282link_test$x : ./link_test.c $(TEST_DEPS) \ 283 ../@DFT_OBJ_SUBDIR@/link_test$o 284 @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) ../@DFT_OBJ_SUBDIR@/link_test$o $(TEST_LDFLAGS) 285 286../@DFT_OBJ_SUBDIR@/dump_entry$o: 287 cd ../progs && $(MAKE) ../@DFT_OBJ_SUBDIR@/dump_entry$o 288 289############################################################################### 290# The remainder of this file is automatically generated during configuration 291############################################################################### 292