[BACK]Return to UPDATING CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/UPDATING between version and 1.281

version, 2013/06/23 06:26:12 version 1.281, 2017/02/11 15:27:08
Line 11  Note that much of the advice in this UPD
Line 11  Note that much of the advice in this UPD
 build.sh existed.  Nevertheless, the advice here may be useful for  build.sh existed.  Nevertheless, the advice here may be useful for
 working around specific problems with build.sh.  working around specific problems with build.sh.
   Sections are marked with "^^^^^".  After the section on "Recent changes"
   are several sections containing more general information.
 See also: BUILDING, build.sh, Makefile.  See also: BUILDING, build.sh, Makefile.
 Recent changes:  Recent changes:
 ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
           a new terminfo database has been imported.
           The structure of it has changed slightly from prior versions and
           an updated tic tool is required.
           If you build.sh, don't use -u
           various arch dependent libc/exect.S files were removed
           Either remove the obj directories (lib/libc and compat/amd64/i386/lib
           if it exists) or do a clean build.
           (This is a bug in the make system, it should be corrected without
           human intervention, but isn't.)
           xinput build options have changed.
           Remove the obj directory (external/mit/xorg/bin/xinput)
           if you build.sh -u
           a new version of flex has been imported.
           Remove the file from obj (external/bsd/flex)
           if you build.sh -u
           a new version of OpenSSL has been imported.
           Remove the files from obj (crypto/external/bsd/openssl)
           if you build.sh -u
           a new version of dhcpcd has been imported with slightly changed
           build infrastructure. When doing a build.sh -u this requires
           pruning the external/bsd/dhcpcd objdir.
           i386, amd64, shark, ofppc and macppc have joined shark and x68k
           ports in using xorg-server 1.18. This requires a clean destdir
           and a clean objdir.
           i386 needs a full cleandir or objdir deletion because PIE has
           been enabled. (see the amd64 entry two down for further info)
           libedit needs manual removal of all autogenerated files since
           some of them are not autogenerated anymore. Remember that there
           might be two copies of libedit if your platform builds "compat".
           amd64 needs full "make cleandir" or deletion of objdir now that
           PIE has been enabled for amd64.  PIE, or position-independent
           executables, means all code, including executables and not just
           shared libraries, is position-independent and hence able to be
           relocated by ASLR, address space layout randomization.
           The change was made in Makefile variables for compiler and
           linker flags, for which make(1) does not record dependencies,
           hence it is unable to detect that all .o files need rebuilding.
           Partial rebuilds with some modified source files will likely
           fail when linking executables, since the linker refuses to mix
           position-independent code with position-dependent code in
           position-independent executables:
                   .../x86_64--netbsd/bin/ld: foo.o: relocation R_X86_64_32 against `...' cannot be used when making a shared object; recompile with -fPIC
           Ports switching to GCC 5.3 will need a full "make cleandir".
           Some people have found that cleandir is not sufficient, so if
           in doubt delete the entire object directory tree for gcc.
           NetBSD's regexp implementation is now part of libnbcompat.
           Nblex, nbm4, nbpax, nbsed use it and they may crash on
           non-NetBSD hosts if linked with stale object files produced
           while they included a non-NetBSD regex.h.
           In any case, you should "make cleandir" at least these tools
           before updating your toolchain.
           Dtrace has been enabled by default on some architectures.
           When doing an update build, make sure to clean the etc/mtree
           object directory before starting the build - otherwise the
           needed directories in destdir will not be created.
           An easy way to do this is:
              cd src/etc/mtree && $TOOLDIR/bin/nbmake-$arch cleandir
           New acpica requires "make cleandir" in src/external/bsd/acpica
           New acpica requires "make cleandir" and reinstalling yacc
           in /usr/src/external/bsd/byacc and /usr/src/tools/yacc and
           also "make cleandir" in /usr/src/external/bsd/acpica.
           Lint changes require a full rebuild of the tool, so make
           sure to build without -u option to build.sh, or manually
           do a make cleandir in src/tools/lint1 and
           Improvements to openssl for arm mean that update builds of
           the openssl libraries will fail. A make cleandir in
           external/bsd/openssl/lib is needed
           A mishap during the import of pppd may cause your corruption
           in your cvs directory if you happened to do a cvs update
           during a short period of time. To fix, just remove the
           directory src/external/bsd/ppp/dist/pppd completely
           and let cvs restore it on next update.
           The src/external/mit/lua/src directory was accidentally created
           and then deleted in the CVS repository.  If you get errors like
           cvs [update aborted]: cannot open directory
           /cvsroot/src/external/mit/lua/src: No such file or directory
           then delete your local copy of that directory tree and try again.
           ARM eABI switched to DWARF based exception handling. This requires
           rebuilding all C++ code. It is strongly advised to do a clean build.
           The new compiler_rt/libc integration moved a few things. It is strongly
           advised to do a clean build. At least lib/libc, the compat version(s)
           of libc, libkern, rump and the kernels need to be cleaned.
           1. The new ntpd runs in a restricted mode to prevent amplification
              attacks. If you need ntpdc to work you need to explicitly enable
              mode7 in your config file. Make sure you put the necessary restrict
              statements to avoid being exposed.
           2. strncat has moved from lib/libc to common/lib/libc; you might need
              to make clean in libc
           The GMP sources were updated, and builds will likely fail without
           cleaning their build trees for both tools and in-tree, like below.
           The MPC and MPFR sources were updated, and builds may require their
           tools and in-tree directories cleaned for successful updates.
           The kernel option FAST_IPSEC no longer exists, it's been renamed
           to IPSEC (and the older IPSEC version removed).
 20130605:  20130605:
         Previous freetype installations eroneously installed private          Previous freetype installations eroneously installed private
         header files. If you are building against a non-empty $DESTDIR,          header files. If you are building against a non-empty $DESTDIR,
Line 639  Fix:    May need to build & install libs
Line 793  Fix:    May need to build & install libs
 Symptom:Update build fails in src/tools/gcc complaining that a variable  Symptom:Update build fails in src/tools/gcc complaining that a variable
         (e.g. CPPFLAGS) has changed since the previous run.          (e.g. CPPFLAGS) has changed since the previous run.
 Fix:    Run "nbmake-${ARCH} clean" in src/tools/gcc or do a clean build.  Fix:    Run "nbmake-${ARCH} clean" in src/tools/gcc or do a clean build.
   Symptom:cvs [update aborted]: cannot open directory /cvsroot/src/...:
           No such file or directory.
   Cause:  If a directory is created by mistake, then it is sometimes
           deleted from the CVS repository using administrative commands
           that bypass the normal cvs access controls.  If your cvs working tree
           contains references to a directory that has been deleted on the
           server in this way, then "cvs update" reports this error.
   Fix:    Recursively delete the affected directory from your working tree
           and try the update again.

Removed from v.  
changed lines
  Added in v.1.281

CVSweb <webmaster@jp.NetBSD.org>