On Tue, 2025-10-21 at 13:57 -0500, Robert Dubner wrote: > Ahoy the reviewers!
Hi Bob! > > This is an "Is this okay for trunk?" request. > > Although these changes affect code only in libcobol and gcc/cobol, we > are > adding some files and some new directories, and so there are changes > to > gcc/cobol/Make-lang.in and to libgcobol/Makefile.am. > > So, we figured that this time we'd ask for permission ahead of time, > instead of our usual practice, lately, of asking for forgiveness > afterward. > > I applied this patch to today's gcc/master. I did a complete > --enable-languages=cobol bootstrap/multilib build on an Ubuntu > x86_64-pc-linux-gnu system. "make check-cobol" worked after that. Looking at https://gcc.gnu.org/git/?p=gcc.git;a=shortlog I don't see the patch, so am I right in thinking that by "today's gcc/master", you're referring to the symas git repo? (sorry, I don't have the URL handy) You didn't mention this in the cover letter, but skimming through the patch, I see this adds a dependency on libxml2 to libgcobol to e.g. parse the XML. Whenever a patch adds add a new dependency, the patch should also add a mention of that dependency to gcc/doc/install.texi (presumably here to the "GCOBOL-prerequisite" item). XML parsing is an area that tends to attract security vulnerability reports (e.g. the "billion laughs" attack), and libxml2 is no exception to this. See e.g. https://lwn.net/Articles/1025971/ for an account of the current status of upstream and its security posture. I think the patch needs to be clear about whether the dependency on libxml2 is optional, and whether libgcobol's linkage against libxml2 is static or dynamic. I expect no shortage of future libxml2 CVEs, and people will want to know if they have to rebuild libgcobol to get the fix (static linkage), or if it happens automagically (dynamic linkage). I don't think gcc would want to add a statically-linked dependency on libxml2, given the many CVEs that project has had. > > So, as far as I know, it's safe for me to apply this to gcc/master. > > Okay for trunk? That's not for me to say, but hopefully the above is helpful/constructive. Dave > > Thanks, > > Bob Dubner > Jim Lowden > > --- > > From a5acb3ac500012124a114a172cc2a04b83b2f558 Mon Sep 17 00:00:00 > 2001 > From: Robert Dubner <[email protected]> > Date: Tue, 21 Oct 2025 13:33:30 -0400 > Subject: [PATCH] cobol: Implement the XML PARSE statement; implement > POSIX > functions. > > These changes implement the XML PARSE as described in the IBM > specification. They also start the implementation of the POSIX > system, > which allows COBOL applications to access POSIX library functions in > a way consistent with COBOL syntax. > > A repair to exception handling is included. Up until now, an > exception > after a successful file operation wasn't handled properly. > > A repair to value declarations for BINARY / COMP / COMP-4 / COMP-5 > values now allows them to have digits to the right of the implied > decimal point. Processing of the "S" PICTURE character has been > normalized as well. > > Co-Authored-By: James K. Lowden <[email protected]> > Co-Authored-By: Robert Dubner <[email protected]> > > gcc/cobol/ChangeLog: > > * Make-lang.in: Incorporate new token_names.h file. > * cdf.y: Modify tokens. > * gcobol.1: Document XML PARSE statement > * genapi.cc (parser_enter_program): Verify that every goto > has a > matching label. > (parser_end_program): Likewise. > (parser_alphabet): Refine handling codeset encodings. > (parser_alphabet_use): Likewise. > (label_fetch): Moved from later in the source code. > (parser_xml_parse): New routine for XML PARSE. > (parser_xml_on_exception): Likewise. > (parser_xml_not_exception): Likewise. > (parser_xml_end): Likewise. > (parser_label_label): Verify goto/label matching. > (parser_label_goto): Likewise. > (parser_entry): Minor change to SHOW_PARSE report. > * genapi.h (parser_alphabet): Set parameter to const. > (parser_xml_parse): Declare new function. > (parser_xml_on_exception): Likewise. > (parser_xml_not_exception): Likewise. > (parser_xml_end): Likewise. > (parser_label_addr): Likewise. > * parse.y: label_pair_t structure; locale processing; new > token > processing for alphabets and XML PARSE. > * parse_ante.h (name_of): Return field->name when initial is > NULL. > (new_tempnumeric): Make signable_e optional. > (ast_save_locale): New function. > (data_division_ready): Warning for "no alphabet". > * scan.l: Repair interpretation of BINARY, COMP, COMP-4, and > COMP-5. > * scan_ante.h (struct bint_t): Likewise. > * scan_post.h (current_tokens_t::tokenset_t::tokenset_t): > Include token_names.h. > * symbols.cc (symbols_alphabet_set): Revert to prior > alphabet > determination. > (symbol_table_init): New XML special registers. > (new_temporary): Make signable_e controllable, not fixed. > * symbols.h (__gg__encoding_iconv_valid): New declaration. > (enum cbl_label_type_t): New LblXml label type. > (struct cbl_xml_parse_t): > (struct cbl_label_t): Implement XML PARSE. > (new_temporary): Incorporate boolean for signable_e. > (symbol_elem_of): Change label field type handling. > (cbl_section_of): Likewise. > (cbl_field_of): Likewise. > (cbl_label_of): Likewise. > (cbl_special_name_of): Likewise. > (cbl_alphabet_of): Likewise. > (cbl_file_of): Likewise. > * token_names.h: New file. > * util.cc (gcc_location_set_impl): Improve location_t > calculations > when entering and leaving COPYBOOKs. > * posix/.gitignore: New file. > * posix/README.md: New file. > * posix/cpy/posix-errno.cbl: New file. > * posix/cpy/statbuf.cpy: New file. > * posix/cpy/tm.cpy: New file. > * posix/headers: New file. > * posix/scrape.awk: New file. > * posix/sizeofs.c: New file. > * posix/udf-gen: New file. > * posix/udf/Makefile: New file. > * posix/udf/posix-exit.cbl: New file. > * posix/udf/posix-localtime.cbl: New file. > * posix/udf/posix-mkdir.cbl: New file. > * posix/udf/posix-stat.cbl: New file. > * posix/udf/posix-unlink.cbl: New file. > * posix/udf/t/errno.cbl: New file. > * posix/udf/t/exit.cbl: New file. > * posix/udf/t/localtime.cbl: New file. > * posix/udf/t/stat.cbl: New file. > > libgcobol/ChangeLog: > > * Makefile.am: Changes for XML PARSE and POSIX functions. > * Makefile.in: Likewise. > * charmaps.cc: Augment encodings[] table with "supported" > boolean. > (__gg__encoding_iconv_name): Modify how encodings are > identified. > (encoding_descr): Likewise. > (__gg__encoding_iconv_valid): Likewise. > * common-defs.h (callback_t): Define function pointer. > * constants.cc: Use named cbl_attr_e constants instead of > magic > numbers.; New definitions for XML special registers. > * encodings.h (struct encodings_t): Declare "supported" > boolean. > * libgcobol.cc (format_for_display_internal): Use > std::ptrdiff_t. > (__gg__alphabet_use): Add case for iconv_CP1252_e. > (default_exception_handler): Repair exception handling after > a > successful file operation. > * posix/errno.cc: New file. > * posix/localtime.cc: New file. > * posix/stat.cc: New file. > * posix/stat.h: New file. > * posix/tm.h: New file. > * xmlparse.cc: New file to support XML PARSE statement. > > gcc/testsuite/ChangeLog: > > * cobol.dg/typo-1.cob: New test for squiggles and carets. > --- > > [Here are the Make-lang.in and Makefile.am diffs:] > > diff --git a/gcc/cobol/Make-lang.in b/gcc/cobol/Make-lang.in > index 0e2a773d4df..1f9995febf1 100644 > --- a/gcc/cobol/Make-lang.in > +++ b/gcc/cobol/Make-lang.in > @@ -225,6 +225,7 @@ cobol/scan.o: cobol/scan.cc \ > $(srcdir)/cobol/scan_post.h \ > $(srcdir)/cobol/symbols.h \ > $(srcdir)/cobol/util.h \ > + $(srcdir)/cobol/token_names.h \ > $(srcdir)/hwint.h \ > $(srcdir)/system.h \ > $(srcdir)/../include/ansidecl.h \ > @@ -241,6 +242,15 @@ cobol/scan.o: > cobol/scan.cc \ > cobol/cdf.cc \ > cobol/parse.cc > > +# Update token names if the generator script is installed > +# (by a developer) and there's been a change. > +$(srcdir)/cobol/token_names.h: cobol/parse.cc > + if [ -f [email protected] ]; then \ > + [email protected] $(subst .cc,.h,$^) \ > + | diff -u $@ - \ > + | patch -t --set-time $@ ; \ > + fi > + > # > # The src<foo> targets are executed if > # '--enable-generated-files-in-srcdir' was specified as a configure > > > > diff --git a/libgcobol/Makefile.am b/libgcobol/Makefile.am > index 1e3d34325f4..f42bfce2380 100644 > --- a/libgcobol/Makefile.am > +++ b/libgcobol/Makefile.am > @@ -19,7 +19,7 @@ > > # Written de novo for libgcobol. > > -AUTOMAKE_OPTIONS = 1.8 foreign > +AUTOMAKE_OPTIONS = 1.8 foreign subdir-objects > ACLOCAL_AMFLAGS = -I .. -I ../config > > # May be used by various substitution variables. > @@ -34,6 +34,7 @@ toolexeclib_DATA = libgcobol.spec > ## 2.2.12 Automatic Dependency Tracking > ## Automake generates code for automatic dependency tracking by > default > ## > + > libgcobol_la_SOURCES = \ > charmaps.cc \ > constants.cc \ > @@ -42,12 +43,20 @@ libgcobol_la_SOURCES > = \ > intrinsic.cc \ > io.cc \ > libgcobol.cc \ > + posix/errno.cc \ > + posix/localtime.cc \ > + posix/stat.cc \ > stringbin.cc \ > - valconv.cc > + valconv.cc \ > + xmlparse.cc > + > +libgcobol_la_LIBADD = -lxml2 > > WARN_CFLAGS = -W -Wall -Wwrite-strings > > -AM_CPPFLAGS = -I. -I$(srcdir) $(LIBQUADINCLUDE) > +AM_CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/posix $(LIBQUADINCLUDE) > +AM_CPPFLAGS += -I /usr/include/libxml2 > + > AM_CFLAGS = $(XCFLAGS) > AM_CXXFLAGS = $(XCFLAGS) > AM_CXXFLAGS += $(WARN_CFLAGS) > @@ -64,7 +73,7 @@ endif > libgcobol_la_LINK = $(CXXLINK) $(libgcobol_la_LDFLAGS) > version_arg = -version-info $(LIBGCOBOL_VERSION) > libgcobol_la_LDFLAGS = $(LTLDFLAGS) $(LIBQUADLIB) $(LTLIBICONV) \ > - $(extra_ldflags_libgcobol) $(LIBS) $(version_arg) > + $(extra_ldflags_libgcobol) $(LIBS) -lxml2 $(version_arg) > libgcobol_la_DEPENDENCIES = libgcobol.spec $(LIBQUADLIB_DEP) > > endif BUILD_LIBGCOBOL > diff --git a/libgcobol/Makefile.in b/libgcobol/Makefile.in > index 61b9e8669d0..880fa1f40a6 100644 > --- a/libgcobol/Makefile.in > +++ b/libgcobol/Makefile.in > @@ -115,6 +115,7 @@ target_triplet = @target@ > # Handle embedded rpaths for Darwin. > @BUILD_LIBGCOBOL_TRUE@@ENABLE_DARWIN_AT_RPATH_TRUE@am__append_1 = > -Wc,-nodefaultrpaths \ > @BUILD_LIBGCOBOL_TRUE@@ENABLE_DARWIN_AT_RPATH_TRUE@ > -Wl,-rpath,@loader_path > +@BUILD_LIBGCOBOL_FALSE@libgcobol_la_DEPENDENCIES = > subdir = . > ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 > am__aclocal_m4_deps = $(top_srcdir)/../config/clang-plugin.m4 \ > @@ -176,11 +177,13 @@ am__uninstall_files_from_dir = { \ > am__installdirs = "$(DESTDIR)$(toolexeclibdir)" \ > "$(DESTDIR)$(toolexeclibdir)" > LTLIBRARIES = $(toolexeclib_LTLIBRARIES) > -libgcobol_la_LIBADD = > +am__dirstamp = $(am__leading_dot)dirstamp > @BUILD_LIBGCOBOL_TRUE@am_libgcobol_la_OBJECTS = charmaps.lo \ > @BUILD_LIBGCOBOL_TRUE@ constants.lo gfileio.lo gmath.lo \ > @BUILD_LIBGCOBOL_TRUE@ intrinsic.lo io.lo libgcobol.lo \ > -@BUILD_LIBGCOBOL_TRUE@ stringbin.lo valconv.lo > +@BUILD_LIBGCOBOL_TRUE@ posix/errno.lo posix/localtime.lo \ > +@BUILD_LIBGCOBOL_TRUE@ posix/stat.lo stringbin.lo valconv.lo \ > +@BUILD_LIBGCOBOL_TRUE@ xmlparse.lo > libgcobol_la_OBJECTS = $(am_libgcobol_la_OBJECTS) > @BUILD_LIBGCOBOL_TRUE@am_libgcobol_la_rpath = -rpath > $(toolexeclibdir) > AM_V_P = $(am__v_P_@AM_V@) > @@ -390,7 +393,7 @@ toolexeclibdir = @toolexeclibdir@ > top_build_prefix = @top_build_prefix@ > top_builddir = @top_builddir@ > top_srcdir = @top_srcdir@ > -AUTOMAKE_OPTIONS = 1.8 foreign > +AUTOMAKE_OPTIONS = 1.8 foreign subdir-objects > ACLOCAL_AMFLAGS = -I .. -I ../config > > # May be used by various substitution variables. > @@ -407,11 +410,18 @@ gcc_version := $(shell @get_gcc_base_ver@ > $(top_srcdir)/../gcc/BASE-VER) > @BUILD_LIBGCOBOL_TRUE@ intrinsic.cc \ > @BUILD_LIBGCOBOL_TRUE@ io.cc \ > @BUILD_LIBGCOBOL_TRUE@ libgcobol.cc \ > +@BUILD_LIBGCOBOL_TRUE@ posix/errno.cc \ > +@BUILD_LIBGCOBOL_TRUE@ posix/localtime.cc \ > +@BUILD_LIBGCOBOL_TRUE@ posix/stat.cc \ > @BUILD_LIBGCOBOL_TRUE@ stringbin.cc \ > -@BUILD_LIBGCOBOL_TRUE@ valconv.cc > +@BUILD_LIBGCOBOL_TRUE@ valconv.cc \ > +@BUILD_LIBGCOBOL_TRUE@ xmlparse.cc > > +@BUILD_LIBGCOBOL_TRUE@libgcobol_la_LIBADD = -lxml2 > @BUILD_LIBGCOBOL_TRUE@WARN_CFLAGS = -W -Wall -Wwrite-strings > -@BUILD_LIBGCOBOL_TRUE@AM_CPPFLAGS = -I. -I$(srcdir) > $(LIBQUADINCLUDE) > +@BUILD_LIBGCOBOL_TRUE@AM_CPPFLAGS = -I. -I$(srcdir) - > I$(srcdir)/posix \ > +@BUILD_LIBGCOBOL_TRUE@ $(LIBQUADINCLUDE) -I \ > +@BUILD_LIBGCOBOL_TRUE@ /usr/include/libxml2 > @BUILD_LIBGCOBOL_TRUE@AM_CFLAGS = $(XCFLAGS) > @BUILD_LIBGCOBOL_TRUE@AM_CXXFLAGS = $(XCFLAGS) $(WARN_CFLAGS) \ > @BUILD_LIBGCOBOL_TRUE@ -DIN_TARGET_LIBS -fno-strict-aliasing > @@ -420,7 +430,7 @@ gcc_version := $(shell @get_gcc_base_ver@ > $(top_srcdir)/../gcc/BASE-VER) > @BUILD_LIBGCOBOL_TRUE@libgcobol_la_LINK = $(CXXLINK) > $(libgcobol_la_LDFLAGS) > @BUILD_LIBGCOBOL_TRUE@version_arg = -version-info > $(LIBGCOBOL_VERSION) > @BUILD_LIBGCOBOL_TRUE@libgcobol_la_LDFLAGS = $(LTLDFLAGS) > $(LIBQUADLIB) > $(LTLIBICONV) \ > -@BUILD_LIBGCOBOL_TRUE@ $(extra_ldflags_libgcobol) $(LIBS) > $(version_arg) > +@BUILD_LIBGCOBOL_TRUE@ $(extra_ldflags_libgcobol) $(LIBS) -lxml2 > $(version_arg) > > @BUILD_LIBGCOBOL_TRUE@libgcobol_la_DEPENDENCIES = libgcobol.spec > $(LIBQUADLIB_DEP) > all: config.h > @@ -513,12 +523,24 @@ clean-toolexeclibLTLIBRARIES: > echo rm -f $${locs}; \ > rm -f $${locs}; \ > } > +posix/$(am__dirstamp): > + @$(MKDIR_P) posix > + @: > posix/$(am__dirstamp) > +posix/$(DEPDIR)/$(am__dirstamp): > + @$(MKDIR_P) posix/$(DEPDIR) > + @: > posix/$(DEPDIR)/$(am__dirstamp) > +posix/errno.lo: posix/$(am__dirstamp) > posix/$(DEPDIR)/$(am__dirstamp) > +posix/localtime.lo: posix/$(am__dirstamp) \ > + posix/$(DEPDIR)/$(am__dirstamp) > +posix/stat.lo: posix/$(am__dirstamp) posix/$(DEPDIR)/$(am__dirstamp) > > libgcobol.la: $(libgcobol_la_OBJECTS) $(libgcobol_la_DEPENDENCIES) > $(EXTRA_libgcobol_la_DEPENDENCIES) > $(AM_V_GEN)$(libgcobol_la_LINK) $(am_libgcobol_la_rpath) > $(libgcobol_la_OBJECTS) $(libgcobol_la_LIBADD) $(LIBS) > > mostlyclean-compile: > -rm -f *.$(OBJEXT) > + -rm -f posix/*.$(OBJEXT) > + -rm -f posix/*.lo > > distclean-compile: > -rm -f *.tab.c > @@ -532,24 +554,31 @@ distclean-compile: > @AMDEP_TRUE@@am__include@ > @am__quote@./$(DEPDIR)/libgcobol.Plo@am__quote@ > @AMDEP_TRUE@@am__include@ > @am__quote@./$(DEPDIR)/stringbin.Plo@am__quote@ > @AMDEP_TRUE@@am__include@ > @am__quote@./$(DEPDIR)/valconv.Plo@am__quote@ > +@AMDEP_TRUE@@am__include@ > @am__quote@./$(DEPDIR)/xmlparse.Plo@am__quote@ > +@AMDEP_TRUE@@am__include@ > @am__quote@posix/$(DEPDIR)/errno.Plo@am__quote@ > +@AMDEP_TRUE@@am__include@ > @am__quote@posix/$(DEPDIR)/localtime.Plo@am__quote@ > +@AMDEP_TRUE@@am__include@ > @am__quote@posix/$(DEPDIR)/stat.Plo@am__quote@ > > .cc.o: > -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF > $(DEPDIR)/$*.Tpo -c -o $@ $< > -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo > $(DEPDIR)/$*.Po > +@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed > 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ > +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF > $$depbase.Tpo -c > -o $@ $< &&\ > +@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po > @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' > object='$@' > libtool=no @AMDEPBACKSLASH@ > @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) > $(CXXDEPMODE) > $(depcomp) @AMDEPBACKSLASH@ > @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ > $< > > .cc.obj: > -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF > $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` > -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo > $(DEPDIR)/$*.Po > +@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed > 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ > +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF > $$depbase.Tpo -c > -o $@ `$(CYGPATH_W) '$<'` &&\ > +@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po > @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' > object='$@' > libtool=no @AMDEPBACKSLASH@ > @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) > $(CXXDEPMODE) > $(depcomp) @AMDEPBACKSLASH@ > @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ > `$(CYGPATH_W) '$<'` > > .cc.lo: > -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LTCXXCOMPILE) -MT $@ -MD -MP - > MF > $(DEPDIR)/$*.Tpo -c -o $@ $< > -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo > $(DEPDIR)/$*.Plo > +@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed > 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ > +@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF > $$depbase.Tpo > -c -o $@ $< &&\ > +@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo > @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' > object='$@' > libtool=yes @AMDEPBACKSLASH@ > @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) > $(CXXDEPMODE) > $(depcomp) @AMDEPBACKSLASH@ > @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o > $@ $< > @@ -559,6 +588,7 @@ mostlyclean-libtool: > > clean-libtool: > -rm -rf .libs _libs > + -rm -rf posix/.libs posix/_libs > > distclean-libtool: > -rm -f libtool config.lt > @@ -675,6 +705,8 @@ clean-generic: > distclean-generic: > -test -z "$(CONFIG_CLEAN_FILES)" || rm -f > $(CONFIG_CLEAN_FILES) > -test . = "$(srcdir)" || test -z > "$(CONFIG_CLEAN_VPATH_FILES)" || > rm -f $(CONFIG_CLEAN_VPATH_FILES) > + -rm -f posix/$(DEPDIR)/$(am__dirstamp) > + -rm -f posix/$(am__dirstamp) > > maintainer-clean-generic: > @echo "This command is intended for maintainers to use" > @@ -686,7 +718,7 @@ clean-am: clean-generic clean-libtool > clean-toolexeclibLTLIBRARIES \ > > distclean: distclean-am > -rm -f $(am__CONFIG_DISTCLEAN_FILES) > - -rm -rf ./$(DEPDIR) > + -rm -rf ./$(DEPDIR) posix/$(DEPDIR) > -rm -f Makefile > distclean-am: clean-am distclean-compile distclean-generic \ > distclean-hdr distclean-libtool distclean-tags > @@ -735,7 +767,7 @@ installcheck-am: > maintainer-clean: maintainer-clean-am > -rm -f $(am__CONFIG_DISTCLEAN_FILES) > -rm -rf $(top_srcdir)/autom4te.cache > - -rm -rf ./$(DEPDIR) > + -rm -rf ./$(DEPDIR) posix/$(DEPDIR) > -rm -f Makefile > maintainer-clean-am: distclean-am maintainer-clean-generic > >
