X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=mk-0th.awk;h=399f156bb0cd5e1e7e0d3e3dafee02306f8387ac;hp=5173269e440aa64399d40337877082efc680dc50;hb=46722468f47c2b77b3987729b4bcf2321cccfd01;hpb=b1f61d9f3aa244512045a6b02e759825d7049d34 diff --git a/mk-0th.awk b/mk-0th.awk index 5173269e..399f156b 100644 --- a/mk-0th.awk +++ b/mk-0th.awk @@ -1,6 +1,6 @@ -# $Id: mk-0th.awk,v 1.8 2000/01/09 00:29:10 tom Exp $ +# $Id: mk-0th.awk,v 1.14 2002/08/31 21:36:54 tom Exp $ ############################################################################## -# Copyright (c) 1998-2000 Free Software Foundation, Inc. # +# Copyright (c) 1998-2001 Free Software Foundation, Inc. # # # # Permission is hereby granted, free of charge, to any person obtaining a # # copy of this software and associated documentation files (the "Software"), # @@ -32,32 +32,42 @@ # Generate list of sources for a library, together with lint/lintlib rules # # Variables: -# name (library name, e.g., "ncurses", "panel", "forms", "menus") +# libname (library name, e.g., "ncurses", "panel", "forms", "menus") # BEGIN { print "" print "# generated by mk-0th.awk" print "" - print ".SUFFIXES: .c .h .i" + print ".SUFFIXES: .c .cc .h .i .ii" print ".c.i :" printf "\t$(CPP) $(CPPFLAGS) $< >$@\n" + print ".cc.ii :" + printf "\t$(CPP) $(CPPFLAGS) $< >$@\n" print ".h.i :" printf "\t$(CPP) $(CPPFLAGS) $< >$@\n" print "" found = 0; } !/^[@#]/ { - if ( $0 != "" ) + if ( $0 != "" && $1 != "link_test" ) { if ( found == 0 ) { + if ( subsets ~ /widechar/ ) + widechar = 1; + else + widechar = 0; printf "C_SRC =" if ( $2 == "lib" ) found = 1 else found = 2 } - printf " \\\n\t%s/%s.c", $3, $1 + if ( libname == "c++" || libname == "c++w" ) { + printf " \\\n\t%s/%s.cc", $3, $1 + } else if ( widechar == 1 || $3 != "$(wide)" ) { + printf " \\\n\t%s/%s.c", $3, $1 + } } } END { @@ -65,19 +75,19 @@ END { if ( found == 1 ) { print "" - printf "# Producing llib-l%s is time-consuming, so there's no direct-dependency for\n", name + printf "# Producing llib-l%s is time-consuming, so there's no direct-dependency for\n", libname print "# it in the lintlib rule. We'll only remove in the cleanest setup." print "clean ::" - printf "\trm -f llib-l%s.*\n", name + printf "\trm -f llib-l%s.*\n", libname print "" print "realclean ::" - printf "\trm -f llib-l%s\n", name + printf "\trm -f llib-l%s\n", libname print "" - printf "llib-l%s : $(C_SRC)\n", name + printf "llib-l%s : $(C_SRC)\n", libname printf "\tcproto -a -l -DLINT $(CPPFLAGS) $(C_SRC) >$@\n" print "" print "lintlib :" - printf "\t$(srcdir)/../misc/makellib %s $(CPPFLAGS)", name + printf "\tsh $(srcdir)/../misc/makellib %s $(CPPFLAGS)", libname print "" print "lint :" print "\t$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(C_SRC) $(LINT_LIBS)"