summaryrefslogtreecommitdiff
path: root/manual/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Patch to require Python 3.4 or later to build glibc.Joseph Myers2018-10-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes Python 3.4 or later a required tool for building glibc, so allowing changes of awk, perl etc. code used in the build and test to Python code without any such changes needing makefile conditionals or to handle older Python versions. This patch makes the configure test for Python check the version and give an error if Python is missing or too old, and removes makefile conditionals that are no longer needed. It does not itself convert any code from another language to Python, and does not remove any compatibility with older Python versions from existing scripts. Tested for x86_64. * configure.ac (PYTHON_PROG): Use AC_CHECK_PROG_VER. Set critic_missing for versions before 3.4. * configure: Regenerated. * manual/install.texi (Tools for Compilation): Document requirement for Python to build glibc. * INSTALL: Regenerated. * Rules [PYTHON]: Make code unconditional. * benchtests/Makefile [PYTHON]: Likewise. * conform/Makefile [PYTHON]: Likewise. * manual/Makefile [PYTHON]: Likewise. * math/Makefile [PYTHON]: Likewise.
* Use gen-libm-test.py to generate ulps table for manual.Joseph Myers2018-10-241-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch extends gen-libm-test.py to generate the ulps table for the manual, so meaning there is only a single ulps file parser needed and another Perl script is eliminated. As with the introduction of gen-libm-test.py, this is designed to generate exactly the same libm-err.texi as libm-err-tab.pl did. (gen-libm-test.py is still shorter in lines than the old gen-libm-test.pl even after this patch.) Note that this introduces a Python dependency for building the manual, which is thus noted in install.texi and NEWS. Tested building html / info / pdf versions of the manual. * math/gen-libm-test.py: Import os. (ALL_FLOATS_MANUAL): New constant. (ALL_FLOATS_SUFFIX): Likewise. (Ulps.all_functions): New function. (real_all_ulps): Likewise. (generate_err_table_sub): Likewise. (generate_err_table): Likewise. (main): Handle -s and -m options. * manual/libm-err-tab.pl: Remove. * manual/Makefile ($(objpfx)stamp-libm-err): Use gen-libm-test.py instead of libm-err-tab.pl. [$(PERL) != no]: Change condition to [$(if $(PYTHON),$(PERL),no) != no]. * manual/install.texi (Tools for Compilation): Document requirement for Python to build manual. * INSTALL: Regenerated.
* Update copyright dates with scripts/update-copyrights.Joseph Myers2018-01-011-1/+1
| | | | | | | * All files with FSF copyright notices: Update copyright dates using scripts/update-copyrights. * locale/programs/charmap-kw.h: Regenerated. * locale/programs/locfile-kw.h: Likewise.
* Remove add-ons mechanism.Joseph Myers2017-10-051-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | glibc has an add-ons mechanism to allow additional software to be integrated into the glibc build. Such add-ons may be within the glibc source tree, or outside it at a path passed to the --enable-add-ons configure option. localedata and crypt were once add-ons, distributed in separate release tarballs, but long since stopped using that mechanism. Linuxthreads was always an add-on. Ports spent some time as an add-on with separate release tarballs, then was first moved into the glibc source tree, then had its sysdeps files moved into the main sysdeps hierarchy so the add-ons mechanism was no longer used. NPTL spent some time as an add-on in the main glibc tree before stopping using the add-on mechanism. libidn used to have separate release tarballs but no longer does so, but still uses the add-ons mechanism within the glibc source tree. Various other software has supported building with the add-ons mechanism at times in the past, but I don't think any is still widely used. Add-ons involve significant, little-used complexity in the glibc build system, and make it hard to understand what the space of possible glibc configurations is. This patch removes the add-ons mechanism. libidn is now built via the Subdirs mechanism to cause any configuration using sysdeps/unix/inet to build libidn; HAVE_LIBIDN (which effectively means shared libraries are available) is now defined via sysdeps/unix/inet/configure. Various references to add-ons around the source tree are removed (in the case of maint.texi, the example list of sysdeps directories is still very out of date). Externally maintained ports should now put their files in the normal sysdeps directory structure rather than being arranged as add-ons; they probably need to change e.g. elf.h anyway, rather than actually being able to work just as a drop-in subtree. Hurd libpthread should be arranged similarly to NPTL, so some files might go in a hurd-pthreads (or similar) top-level directory in glibc, while sysdeps files should go in the normal sysdeps directory structure (possibly in hurd or hurd-pthreads subdirectories, just as there are nptl subdirectories in the sysdeps tree). Tested for x86_64, and with build-many-glibcs.py. * configure.ac (--enable-add-ons): Remove option. (machine): Do not mention add-ons in comment. (LIBC_PRECONFIGURE): Likewise. (add_ons): Remove variable and sanity checks and logic to locate add-ons. (add_ons_automatic): Remove variable. (configured_add_ons): Likewise. (add_ons_sfx): Likewise. (add_ons_pfx): Likewise. (add_on_subdirs): Likewise. (sysnames_add_ons): Likewise. Remove loop over add-ons and consideration of add-ons in Implies handling. (sysdeps_add_ons): Likewise. * configure: Regenerated. * libidn/configure.ac: Remove. * libidn/configure: Likewise. * sysdeps/unix/inet/configure.ac: New file. * sysdeps/unix/inet/configure: New generated file. * sysdeps/unix/inet/Subdirs: Add libidn. * Makeconfig (sysdeps-srcdirs): Remove variable. (+sysdep_dirs): Do not include $(sysdeps-srcdirs). ($(common-objpfx)config.status): Do not depend on add-on files. ($(common-objpfx)shlib-versions.v.i): Do not mention add-ons in comment. (all-subdirs): Do not include $(add-on-subdirs). * Makefile (dist-prepare): Do not use $(sysdeps-add-ons). * config.make.in (add-ons): Remove variable. (add-on-subdirs): Likewise. (sysdeps-add-ons): Likewise. * manual/Makefile (add-chapters): Remove. ($(objpfx)texis): Do not depend on $(add-chapters). (nonexamples): Do not handle $(add-chapters). (examples): Do not handle $(add-ons). (chapters.% top-menu.%): Do not pass '$(add-chapters)' to libc-texinfo.sh. * manual/install.texi (Installation): Do not mention add-ons. (--enable-add-ons): Do not document configure option. * INSTALL: Regenerated. * manual/libc-texinfo.sh: Do not handle $2 add-ons argument. * manual/maint.texi (Hierarchy Conventions): Do not mention add-ons. * scripts/build-many-glibcs.py (Glibc.build_glibc): Do not use --enable-add-ons. * scripts/gen-sorted.awk: Do not handle Subdirs files from add-ons. * scripts/test-installation.pl: Do not handle glibc-compat add-on. * sysdeps/nptl/Makeconfig: Do not mention add-ons in comment.
* manual: Replace summary.awk with summary.pl.Rical Jasan2017-06-151-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Summary is now generated from @standards, and syntax-checking is performed. If invalid @standards syntax is detected, summary.pl will fail, reporting all errors. Failure and error reporting is disabled for now, however, since much of the manual is still incomplete wrt. header and standards annotations. Note that the sorting order of the Summary has changed; summary.pl respects the locale, like summary.awk did, but the use of LC_ALL=C is introduced in the Makefile. Other notable deviations are improved detection of the annotated elements' names, which are used for sorting, and improved detection of the @node used to reference into the manual. The most noticeable difference in the rendered Summary is that entries may now contain multiple lines, one for each header and standard combination. summary.pl accepts a `--help' option, which details the expected syntax of @standards. If errors are reported, the user is directed to this feature for further information. * manual/Makefile: Generate summary.texi with summary.pl. Force use of the C locale. Update Perl dependency comment. * manual/header.texi: Update reference to summary.awk. * manual/macros.texi: Refer authors to `summary.pl --help'. * manual/summary.awk: Remove file. * manual/summary.pl: New file. Generate summary.texi, and check for @standards-related syntax errors. * manual/argp.texi: Convert header and standards @comments to @standards. * manual/arith.texi: Likewise. * manual/charset.texi: Likewise. * manual/conf.texi: Likewise. * manual/creature.texi: Likewise. * manual/crypt.texi: Likewise. * manual/ctype.texi: Likewise. * manual/debug.texi: Likewise. * manual/errno.texi: Likewise. * manual/filesys.texi: Likewise. * manual/getopt.texi: Likewise. * manual/job.texi: Likewise. * manual/lang.texi: Likewise. * manual/llio.texi: Likewise. * manual/locale.texi: Likewise. * manual/math.texi: Likewise. * manual/memory.texi: Likewise. * manual/message.texi: Likewise. * manual/pattern.texi: Likewise. * manual/pipe.texi: Likewise. * manual/process.texi: Likewise. * manual/resource.texi: Likewise. * manual/search.texi: Likewise. * manual/setjmp.texi: Likewise. * manual/signal.texi: Likewise. * manual/socket.texi: Likewise. * manual/startup.texi: Likewise. * manual/stdio.texi: Likewise. * manual/string.texi: Likewise. * manual/sysinfo.texi: Likewise. * manual/syslog.texi: Likewise. * manual/terminal.texi: Likewise. * manual/threads.texi: Likewise. * manual/time.texi: Likewise. * manual/users.texi: Likewise.
* Update copyright dates with scripts/update-copyrights.Joseph Myers2017-01-011-1/+1
|
* User manual documentation for tunablesSiddhesh Poyarekar2016-12-311-1/+2
| | | | | | | | | Create a new node for tunables documentation and add notes for the malloc tunables. * manual/tunables.texi: New chapter. * manual/Makefile (chapters): Add it. * manual/probes.texi (@node): Point to the Tunables chapter.
* Update copyright dates with scripts/update-copyrights.Joseph Myers2016-01-041-1/+1
|
* manual: skip build when perl is unavailableMike Frysinger2015-08-211-0/+3
| | | | | | | Do not try to generate the manual when perl is unavailable. This matches the behavior when makeinfo is unavailable. Otherwise the install step fails when trying to generate the libm section since it runs a perl script.
* Update copyright dates with scripts/update-copyrights.Joseph Myers2015-01-021-1/+1
|
* Require check-safety.sh to pass; wish for check that all fns are documentedAlexandre Oliva2014-11-211-1/+1
| | | | | | | | | for ChangeLog * manual/Makefile ($(objpfx)stamp-summary): Require check-safety.sh to pass. * manual/check-safety.sh: Wish for verification that every @deftypefn and @deftypefun is followed by a @safety remark.
* Remove INSTALL_INFO setting in manual/Makefile.Joseph Myers2014-03-061-3/+0
| | | | * manual/Makefile (INSTALL_INFO): Remove variable setting.
* Fix fallout from Joseph's untested Makeconfig change.Roland McGrath2014-02-281-8/+8
|
* Consistently include Makeconfig after defining subdir.Joseph Myers2014-02-261-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In <https://sourceware.org/ml/libc-alpha/2014-01/msg00196.html> I noted it was necessary to add includes of Makeconfig early in various subdirectory makefiles for the tests-special variable settings added by that patch to be conditional on configuration information. No-one commented on the general question there of whether Makeconfig should always be included immediately after the definition of subdir. This patch implements that early inclusion of Makeconfig in each directory (which is a lot easier than consistent placement of includes of Rules). Includes are added if needed, or moved up if already present. Subdirectory "all:" targets are removed, since Makeconfig provides one. There is potential for further cleanups I haven't done. Rules and Makerules have code such as ifneq "$(findstring env,$(origin headers))" "" headers := endif to override to empty any value of various variables that came from the environment. I think there is a case for Makeconfig setting all the subdirectory variables (other than subdir) to empty to ensure no outside value is going to take effect if a subdirectory fails to define a variable. (A list of such variables, possibly out of date and incomplete, is in manual/maint.texi.) Rules and Makerules would give errors if Makeconfig hadn't already been included, instead of including it themselves. The special code to override values coming from the environment would then be obsolete and could be removed. Tested x86_64, including that installed binaries are identical before and after the patch. * argp/Makefile: Include Makeconfig immediately after defining subdir. * assert/Makefile: Likewise. * benchtests/Makefile: Likewise. * catgets/Makefile: Likewise. * conform/Makefile: Likewise. * crypt/Makefile: Likewise. * csu/Makefile: Likewise. (all): Remove target. * ctype/Makefile: Include Makeconfig immediately after defining subdir. * debug/Makefile: Likewise. * dirent/Makefile: Likewise. * dlfcn/Makefile: Likewise. * gmon/Makefile: Likewise. * gnulib/Makefile: Likewise. * grp/Makefile: Likewise. * gshadow/Makefile: Likewise. * hesiod/Makefile: Likewise. * hurd/Makefile: Likewise. (all): Remove target. * iconvdata/Makefile: Include Makeconfig immediately after defining subdir. * inet/Makefile: Likewise. * intl/Makefile: Likewise. * io/Makefile: Likewise. * libio/Makefile: Likewise. (all): Remove target. * locale/Makefile: Include Makeconfig immediately after defining subdir. * login/Makefile: Likewise. * mach/Makefile: Likewise. (all): Remove target. * malloc/Makefile: Include Makeconfig immediately after defining subdir. (all): Remove target. * manual/Makefile: Include Makeconfig immediately after defining subdir. * math/Makefile: Likewise. * misc/Makefile: Likewise. * nis/Makefile: Likewise. * nss/Makefile: Likewise. * po/Makefile: Likewise. (all): Remove target. * posix/Makefile: Include Makeconfig immediately after defining subdir. * pwd/Makefile: Likewise. * resolv/Makefile: Likewise. * resource/Makefile: Likewise. * rt/Makefile: Likewise. * setjmp/Makefile: Likewise. * shadow/Makefile: Likewise. * signal/Makefile: Likewise. * socket/Makefile: Likewise. * soft-fp/Makefile: Likewise. * stdio-common/Makefile: Likewise. * stdlib/Makefile: Likewise. * streams/Makefile: Likewise. * string/Makefile: Likewise. * sunrpc/Makefile: Likewise. (all): Remove target. * sysvipc/Makefile: Include Makeconfig immediately after defining subdir. * termios/Makefile: Likewise. * time/Makefile: Likewise. * timezone/Makefile: Likewise. (all): Remove target. * wcsmbs/Makefile: Include Makeconfig immediately after defining subdir. * wctype/Makefile: Likewise. libidn/ChangeLog: * Makefile: Include Makeconfig immediately after defining subdir. localedata/ChangeLog: * Makefile: Include Makeconfig immediately after defining subdir. (all): Remove target. nptl/ChangeLog: * Makefile: Include Makeconfig immediately after defining subdir. nptl_db/ChangeLog: * Makefile: Include Makeconfig immediately after defining subdir.
* Add a new "Inter-Process Communication" chapter.Carlos O'Donell2014-02-261-2/+2
| | | | | | | This patch adds a new "Inter-Process Communication" chapter to cover the sem*, msg*, and shm* functions. Initially we document only the sem* function signatures and their safety notes.
* * manual/check-safety.sh: New.Alexandre Oliva2014-02-011-1/+2
| | | | * manual/Makefile ($(objpfx)stamp-summary): Run it.
* Update copyright notices with scripts/update-copyrightsAllan McRae2014-01-011-1/+1
|
* Add first set of memory probes.Alexandre Oliva2013-09-201-1/+1
| | | | | | | | | | | for ChangeLog * malloc/malloc.c: Include stap-probe.h. (__libc_mallopt): Add memory_mallopt probe. * malloc/arena.c (_int_new_arena): Add memory_arena_new probe. * manual/probes.texi: New. * manual/Makefile (chapters): Add probes. * manual/threads.texi: Set next node.
* Rename nptl.texi to threads.texiSiddhesh Poyarekar2013-03-191-1/+1
| | | | | The manual and its file names are about interfaces and not the implementation details.
* Add nptl manual chapterSiddhesh Poyarekar2013-03-141-1/+1
| | | | | | This adds the base chapter for POSIX threads and also documentation for thread-specific data, along with a note on its interaction with C++11 thread_local variables.
* Update copyright notices with scripts/update-copyrights.Joseph Myers2013-01-021-1/+1
|
* Add script to update copyright notices and reformat some to facilitate its use.Joseph Myers2013-01-011-2/+1
|
* Support --with-pkgversion and --with-bugurl.Joseph Myers2012-11-091-1/+15
|
* Make sure <build-dir>/manual directory gets created.Roland McGrath2012-06-141-0/+1
|
* Manual for platform-specific features and new __ppc_get_timebase inline.Tulio Magno Quites Machado Filho2012-06-041-1/+2
| | | | | | | | | [BZ #13743] A new class of installed headers has been documented for low-level platform-specific functionality. PowerPC added the first instance with a function to provide time base register access (__ppc_get_timebase). This is required for applications that measure time at high frequencies with high precision that can't afford a syscall.
* Do not build manual in source dirAndreas Jaeger2012-05-141-105/+66
| | | | | | | [BZ #13750] Do not build manual anymore in the source dir. Also clean up the Makefile and remove rules that have been used previously when we had a stand-alone Makefile which was obsoleted recently.
* Revert "Do not build manual in the source directory"Andreas Jaeger2012-05-041-62/+49
| | | | | | This reverts commit e3945c47bdac1149a1fec5d46bd567a248cd17b9. reverting since it breaks building.
* Do not build manual in the source directoryAndreas Jaeger2012-05-041-49/+62
| | | | | | | [BZ #13750] Build the manual in the build directory and not anymore in the source directory.
* Remove standalone manual supportAndreas Jaeger2012-04-231-42/+1
| | | | | | [BZ #13739] We don't need a separate manual distribution tar ball anymore, remove support for it from manual/Makefile.
* Remove distribute variable from MakefilesUlrich Drepper2012-03-071-9/+0
|
* BZ #13792: License manual example source files under GPL.Roland McGrath2012-03-021-1/+2
|
* Automatically generate version number in manual; omit edition / updated date.Joseph Myers2012-02-271-6/+16
|
* Update makefile for FDL 1.3 change.Joseph Myers2012-02-241-2/+2
|
* Replace FSF snail mail address with URLs.Paul Eggert2012-02-091-3/+2
|
* Use canonical FSF .texi files for LGPL and FDL texts.Roland McGrath2011-06-061-5/+7
|
* Don't mix pattern rules with normal rulesAndreas Schwab2010-09-061-1/+4
|
* 2006-01-07 Roland McGrath <roland@redhat.com>Roland McGrath2006-01-081-4/+3
| | | | | | | * Makerules (common-clean): Don't remove distinfo file. ($(objpfx)distinfo): Target removed. * manual/Makefile (mostlyclean): Don't remove distinfo file. (glibc-targets): Remove echo-distinfo.
* 2005-07-13 Thorsten Kukuk <kukuk@suse.de>Roland McGrath2005-07-181-1/+1
| | | | * manual/Makefile (libc/index.html): Add dir-add.texi.
* (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.Ulrich Drepper2004-12-221-4/+5
|
* 2.5-18.1Jakub Jelinek2007-07-121-5/+4
|
* * manual/Makefile (stamp-summary): Use -k option to sort,Roland McGrath2004-03-181-2/+3
| | | | | not traditional key selection syntax. Reported by Jim Gifford <giffordj@linkline.com>.
* 2003-11-11 Roland McGrath <roland@redhat.com>Roland McGrath2003-11-121-27/+12
| | | | | | | | | | | | | | | | * manual/Makefile (info): Don't depend on dir-add.info. (libc.dvi libc.pdf libc.info): Depend on dir-add.texi. (dir-add.info): Target removed, replaced with ... (dir-add.texi): New target. (distribute): Add it. (install): Remove variant with --section arguments. Let the @dircategory directives do their work. (mostlyclean): Don't remove dir-add.info here. (realclean): Remove dir-add.texi here. * manual/libc.texinfo: @include dir-add.texi * configure.in: Remove check for old Debian install-info. * configure: Regenerated. * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
* (glibc-targets): Add xtests.Ulrich Drepper2002-04-211-2/+2
|
* * manual/libc-texinfo.sh: Add entry about free manuals.Andreas Jaeger2001-08-281-1/+2
| | | | | | | | | | | | | | | | | | * manual/contrib.texi (Contributors): Fix cross reference. * manual/libc.texinfo (Copying): Include freemanuals. * manual/Makefile (appendices): Add freemanuals. * manual/freemanuals.texi: New file. Patch by Brian Youmans <3diff@gnu.org>. * manual/libm-err-tab.pl: Pretty print more platforms, print a smaller table. * manual/math.texi (Errors in Math Functions): Fix grammar, start table on separate page. Patch by Brian Youmans <3diff@gnu.org>.
* Update.Ulrich Drepper2001-07-191-1/+5
| | | | | | | 2001-07-19 Ulrich Drepper <drepper@redhat.com> * Makefile: Add html goal. * manual/Makefile: Likewise.
* Update.Andreas Jaeger2001-07-061-1/+1
| | | | | | | | | | | | | 2001-07-06 Andreas Jaeger <aj@suse.de> * manual/Makefile (texis): Add fdl.texi. * manual/fdl.texi: New. * manual/socket.texi (Host Names): Improve grammar, fix overflow hbox. * manual/libc.texinfo: Add fdl, update titlepage. Patches by Brian Youmans <3diff@gnu.org>. * sysdeps/unix/make_errlist.c (main): Print LGPL v2.1 for generated file.
* * COPYING: Fix Y2k bug in sample copyright notices.Andreas Jaeger2001-07-061-1/+1
| | | | | | * manual/lesser.texi: Renamed from manual/lgpl.texinfo, as fsf.org uses the name "lesser.texi". * manual/Makefile (texis): Follow rename.
* Update to LGPL v2.1.Andreas Jaeger2001-07-061-8/+8
| | | | | | | | | | | | | | 2001-07-06 Paul Eggert <eggert@twinsun.com> * manual/argp.texi: Remove ignored LGPL copyright notice; it's not appropriate for documentation anyway. * manual/libc-texinfo.sh: "Library General Public License" -> "Lesser General Public License". 2001-07-06 Andreas Jaeger <aj@suse.de> * All files under GPL/LGPL version 2: Place under LGPL version 2.1.
* Update.Ulrich Drepper2001-03-191-2/+2
| | | | | | | 2001-03-17 H.J. Lu <hjl@gnu.org> * manual/Makefile (install): Use $(INSTALL_DATA) instead of cp to install `dir'.
* Update.Ulrich Drepper2001-01-171-1/+1
| | | | | | | | | 2001-01-17 Ulrich Drepper <drepper@redhat.com> * manual/Makefile (chapters): Add debug. * manual/debug.texi: New file. * manual/examples/execinfo.c: New file. Patch by suckfish@ihug.co.nz.