Commit Graph

881 Commits

Author SHA1 Message Date
delphij
897a072717 MFC: xz 5.2.2.
Relnotes:	yes
2015-12-22 08:03:23 +00:00
emaste
fa6577ca64 MFC r282821: Remove redundant csu subdir logic
The appropriate subdirectories are handled by lib/csu/Makefile. There's
no need to duplicate this logic in Makefile.inc1 and lib/Makefile.

Sponsored by:	The FreeBSD Foundation
2015-12-16 16:40:45 +00:00
bdrewery
4d3c809df9 MFC r291605:
Fix errors being ignored in many phases of the build since the bmake
  integration.
2015-12-08 00:27:35 +00:00
bdrewery
b38bd3ffca MFC r291026:
Remove unneeded libmd from bootstrap-tools (reverting r246784).
2015-12-04 18:48:08 +00:00
bdrewery
cede455917 MFC r290812:
Avoid setting schg in the objtree for lib32 build.
2015-12-04 18:33:32 +00:00
bdrewery
28f8b6600d MFC r289360,r289361,r289378,r289430,r289605,r289676:
r289360:
    Add temporary workaround for .MAKE being applied to _worldtmp, since
    r251750.
  r289361:
    Consider top-level targets to be .PHONY as bmake won't build them otherwise
    if a file with the same name is found in the directory.
  r289378:
    Mark sub-make targets as .MAKE and .PHONY to handle -n and always-build
    properly.
  r289430:
    Remove .MAKE from targets that do more than just run sub-makes, such as
    calling rm or mtree.
  r289605:
    Add missing .PHONY for parallel subdir target.
  r289676:
    Add some missing '+', .MAKE, and .PHONY modifiers.
2015-12-04 17:56:10 +00:00
bdrewery
c471bb0905 MFC r289407:
Fix delete-old and check-old-files not removing old debug symbols.
2015-10-26 17:49:13 +00:00
avg
6087342130 MFC r288339: remove unused sgsmsg utility (originally imported from opensolaris) 2015-10-23 08:35:17 +00:00
ian
ad02bb9b5d MFC 288829
The latest version of lex requires the latest m4 to build, add a dependency
  when running the build-tools stage.

  The requirement is due to the -P flag used when running m4 from usr.bin/lex
  Makefile to generate skel.c.  With the old m4 that fails and the failure is
  ignored, resulting in an empty(-ish) skel.c, which leads to later build
  failures when the misconfigured new lex tool is run.

  This enables building -current (and 10-stable after MFC) on a stable-8
  system again.
2015-10-11 17:59:20 +00:00
gjb
3a6b75cfa3 MFC r262670 (marcel):
Use ${MAKE} so that we always use the same version/implementation
  of make(1).

PR:		202277
Submitted by:	John Hein
Sponsored by:	The FreeBSD Foundation
2015-08-13 22:29:26 +00:00
imp
979769b37b Direct commit
When compiling on -current from r284356 to r285986, the host's
crunchgen can't be used because builds of rescue break when STRIP= was
used to prevent stripping of binaries.  Direct commit because -current
code is different. Building 10 on current is common enough to warrnat
a safety belt since this has been broken for two months. The offending
change was never in stable/10.
2015-08-12 16:53:37 +00:00
ngie
d1180c911c MFC r281618,r281823:
r281618:

Defeat race with MK_KERBEROS == yes introduced with bootstrap-tools
parallelization work done in r279197

- kerberos5/lib/libroken requires kerberos5/tools/make-roken to build
- kerberos5/tools/asn1_compile, kerberos5/tools/slc, and usr.bin/compile_et
  require kerberos5/lib/libroken and kerberos5/lib/libvers

This race is incredibly evident when cross-building sparc64 on
ref10-amd64.freebsd.org

Pointyhat to: ngie

r281823:

Serialize all of _kerberos5_bootstrap_tools to avoid build failures involving
make bootstrap-tools

On the plus side, this also greatly reduces complexity

Pointyhat to: ngie
Reported by: Willem Jan Withagen <wjw@digiware.nl>
2015-05-13 10:53:16 +00:00
garga
a669f5aa38 MFC r270155, r274490, r274593, r274607
Add native-xtools target to stable/10

Differential Revision:	https://reviews.freebsd.org/D2044
Reviewed by:	sbruno@
Approved by:	sbruno@
Sponsored by:	Netgate
2015-04-21 17:02:55 +00:00
dim
7f3b476176 MFC r272814 (by bapt):
Add OBJCOPY to the list of external tools

MFC r272815 (by bapt):

  Fix typo

This should fix the build troubles some people have been seeing after
the MFC of r280980 (in r281289).  Sorry for the breakage.
2015-04-10 20:38:31 +00:00
dim
2da35800ba MFC r280980:
Ensure the cross assembler, linker and objcopy are used for the build32
stage, just like for the regular world stage.

Reviewed by:	rodrigc, imp, bapt, emaste
Differential Revision: https://reviews.freebsd.org/D2187
2015-04-09 06:38:32 +00:00
dim
fd1aa4bec9 Ensure yacc is built during bootstrap-tools for __FreeBSD_version
1001506 and earlier, since some of the ACPI tools now reach yacc's old
maximum table limit.  This should fix the Jenkins buildbot, which
apparently runs 10.1-RELEASE.
2015-04-05 15:27:56 +00:00
bdrewery
44dfc90bcd MFC r280179,r280180:
r280179:
    Add LIB_CXX so that C++ libraries will use CXX to link.

    This adds some extra dependencies directly to Makefile.inc1 as
    atf is still a prebuild library in stable/10. If r273449 is MFCd
    these can come out.

  r280180:
    Document LIB and LIB_CXX.
2015-04-04 00:42:09 +00:00
ngie
105c9ecc59 Defeat race with texinfo tools built with make bootstrap-tools
This is a direct commit to stable/10 because texinfo has been removed from
head
2015-03-22 22:00:29 +00:00
ngie
f0ad206868 Remove dependency between usr.bin/m4 and lib/libohash
libohash doesn't exist on stable/10 (only head)

Not sure why my make buildworld didn't catch any issues

This is a direct commit to stable/10 as a followup to r280340
2015-03-22 08:47:35 +00:00
ngie
74e10c6f1a MFC r279197,r279198:
r279197:

Parallelize building bootstrap-tools

Differential Revision: https://reviews.freebsd.org/D1901
Reviewed by: ian
No serious objections from: imp

r279198:

Fill in missing dependencies for dtrace related tools so the bootstrap-tools
compiles properly on older hosts

Pointyhat to: me
2015-03-22 08:42:44 +00:00
ngie
ffd518acc5 MFC r278182:
r278182:

  Conditionalize building radius support into libpam, ppp, etc via
  MK_RADIUS_SUPPORT

  Sponsored by: EMC / Isilon Storage Division
2015-02-11 08:52:29 +00:00
ngie
259bd5c13f MFC r275907:
r275907 (by ngie):

  Fix building/installing tests when TESTSBASE != /usr/tests

  The work in r258233 hardcoded the assumption that tests was the last component
  of the tests tree by pushing tests as an explicit prefix for the paths in
  BSD.tests.dist and /usr was the prefix for all tests, per BSD.usr.dist and all
  of the mtree calls used in Makefile.inc1. This assumption breaks if/when one
  provides a custom TESTSBASE "prefix", e.g. TESTSBASE=/mytests .

  One thing that r258233 did properly though was remove "/usr/tests" creation
  from BSD.usr.dist -- that should have not been there in the first place. That
  was an "oops" on my part for the work that was originally committed in r241823

  Phabric: D1301
  Reviewed by: imp
  Sponsored by: EMC / Isilon Storage Division
2015-01-20 23:39:08 +00:00
bapt
624238bb5e install-info is also needed for installworld so add it to the bootstrap tools
Add BPATH to the installworld path to ensure using installworld works if
install-info is not in base
2015-01-02 23:13:04 +00:00
bapt
44b8a6e1e8 Make texinfo a bootstrap tools this fixes cross building when makeinfo is not \
available on the host

Differential Revision:	https://reviews.freebsd.org/D1410
Submitted by:	ngie (initial patch)
Reviewed by:	ngie, imp
MFC after:	1 week
2015-01-02 21:16:13 +00:00
bapt
54309b420b MFC: r276052,r276053
Build selective portions of gnu/usr.bin/texinfo as part of build-tools to
ensure that building on a host without makeinfo (i.e. a host where
make delete-old -DWITHOUT_INFO was run), then building with MK_INFO == yes
doesn't manifest in build errors when building info pages

This manifested itself like the following when I was build testing an MFC
change on stable/10:

  makeinfo --no-split -I /usr/src/gnu/lib/libregex/doc -I /usr/src/gnu/lib/libregex/doc regex.texi  -o regex.info
  makeinfo: not found
  *** [regex.info] Error code 127

make[6]: stopped in /usr/src/gnu/lib/libregex/doc
1 error
2015-01-02 18:27:32 +00:00
ngie
c090fc5172 MFC r275867:
Fix sporadic build failures due to race when running make installworld
  when strip gets replaced at install time by adding it to ITOOLS for the
  default usr.bin/xinstall STRIP_CMD

  This will fix the failure noted in this Jenkins build step:
  https://jenkins.freebsd.org/job/Build-UFS-image/688/

  This will also fix the issue reported by alfred@ dealing with installing on
  targets that differ from build hosts (e.g. installing on i386/i386 when built
  on amd64/amd64)

  Sponsored by: EMC / Isilon Storage Division
2014-12-27 17:20:24 +00:00
ngie
cf14b8acec MFC r275622:
Add makewhatis to ITOOLS if MK_MAN != no

  This will fix installation with differing host targets in installworld, so
  one can build i386/i386 on an amd64 host, then install to an i386/i386 target

  Reported by: alfred
  Phabric: D1280
2014-12-22 02:22:01 +00:00
brooks
67bd86774a MFC r274806:
Add a guard against attempting to invoke the buildenv target with -j# as
that silently exits rather than doing something useful.

Sponsored by:	DARPA, AFRL
2014-12-02 19:58:26 +00:00
rodrigc
0475e04762 MFC r272484:
Add dependencies to various libraries to libzfs and libzpool.

Submitted by:	sef
2014-11-29 08:33:54 +00:00
dteske
7230e71362 MFC r274116:
Add new libraries/utilities for data throughput visualization.
dpv(3): dialog progress view library
dpv(1): stream data from stdin or multiple paths with dialog progress view
figpar(3): configuration file parsing library

MFC r274120, r274121, r274123, r274124, r274144, r274146, r274159, r274192,
r274203, r274209, r274226, r274270, and r274851: Fixes following r274116

Reviews:        D714
Relnotes:       New libdpv/libfigpar and dpv(1) utility
Reviewed by:    jelischer, shurd
Discussed at:   MeetBSD California 2014 Vendor/Dev Summit
Discussed on:   -current
Thanks to:      ngie, ian, jelischer, shurd, bapt
2014-11-25 13:47:53 +00:00
ian
8f1520bd13 MFC r262626, r262626, r264979, r265154, r265162, r265163, r267319, r270863,
r270991, r271045:

  Enhancements related to compiling FDT data...

 - Use proper include path for dtc as well as cpp.
 - Call cpp with -P to avoid printing line markings.
 - Allow FDT_DTS_FILE to be a list, either in the makedtb target, or in a
   kernel config file.
 - Add the dts include directory to the -I list when doing arm builds.
 - Invoke make_dtb with MACHINE defined for cross building friendliness.
 - Allow the make_dtb script to work outside of a "make buildkernel"
   context by setting MACHINE from uname -m if it's not set already.
 - Use sh -c '...' to launch the dtb build scripts with env prepended,
   otherwise it tries to treat the env var stuff as a script file name.
2014-10-27 00:47:55 +00:00
ngie
cbb305020c MFC r272053:
Have distrib-dirs, distribution, hier, hierarchy, redistribute, and reinstall
  depend on the .MAKE special target

  This will allow users to do something like the following to print out the
  results of the running the simulated make target with bmake, like some of the
  other top-level make targets in Makefile.inc1:

    % make -f Makefile.inc1 -n distribution TARGET=i386 TARGET_ARCH=i386

  Sponsored by: EMC / Isilon Storage Division
2014-10-23 01:06:00 +00:00
emaste
884e0cd091 MFC improved vt(4) font generation
r266851: Add VGAROM 8x8, 8x14 and 8x16 fonts for vt(4)

  These are converted from syscons(4) cp437 fonts.

r267306: Add vgarom font source

  These are in 'GNU Unifont' format, and are converted from syscons(4)
  cp437 fonts.

r267400: Add thin versions of VGAROM 8x8 and 8x16 fonts for vt(4)

  These are converted from syscons(4) cp437-thin-8x* fonts.

r267423: Build vt(4) fonts during buildworld

  vtfontcvt(8) is now built during buildworld, so can be used as a
  bootstrap tool to create vt(4) fonts from source .hex or .bdf font
  files, rather than having uuencoded binary fonts in the tree.

r267578: Add glyphs from converted syscons iso* fonts

  This consists of the unique glyphs from the following font files in
  /usr/share/syscons/fonts:

  iso*.fnt     ISO-8859-1 West European
  iso02*.fnt   ISO-8859-2 Central European
  iso04*.fnt   ISO-8859-4 Baltic
  iso05*.fnt   ISO-8859-5 Cyrillic
  iso07*.fnt   ISO-8859-7 Greek
  iso08*.fnt   ISO-8859-8 Hebrew
  iso09*.fnt   ISO-8859-9 Turkish
  iso15*.fnt   ISO-8859-15 West European

r268022: Rename the WITHOUT_VT_SUPPORT knob to WITHOUT_VT

  The _SUPPORT knobs have a consistent meaning which differs from the
  behaviour controlled by this knob.  As the knob is opt-out and has not
  appeared in a release the impact should be low.

Approved by:	re
Sponsored by:	The FreeBSD Foundation
2014-09-09 20:36:56 +00:00
ngie
f4fd8ca123 MFC r270027:
tmconfig compilation when MK_ATM == yes and MK_BSNMP == no

 Makefile.inc1:
 Always compile gensnmptree with bootstrap-tools when MK_BSNMP != no
 instead of depending on a potentially stale tool installed on the build host

 sbin/atm/atmconfig/Makefile:
 - Always remove oid.h to avoid cluttering up the build/src tree.
 - Consolidate all of the RESCUE/MK_BSNMP != no logic under one
 conditional to improve readability
 - Remove unnecessary ${.OBJDIR} prefixing for oid.h and use ${.TARGET} instead
   of spelling out oid.h
 - Add a missing DPADD for ${LIBCRYPTO} when compiled MK_BSNMP == yes and
   MK_OPENSSL == yes and not compiling for /rescue/rescue

 sbin/atm/atmconfig/main.c:
 Change #ifndef RESCUE to #ifdef WITH_BSNMP in main.c to make it
 clear that we're compiling bsnmp support into atmconfig
2014-08-29 18:26:55 +00:00
ian
a6a20ea907 Revert r270079 which was MFC of r269688, build libohash while bootstrapping.
The changes to split the ohash code out of m4 into its own library haven't
been MFC'd, so this change was causing an error during bootstrap when
building stable-10.

Submitted by:	Dai Sieh <dsieh@dsieh.com>
Pointy hat to:	ian
2014-08-25 17:31:06 +00:00
ian
b7f4763aaf MFC r260401
Remove aicasm as a build dependency.  It made sense when the ahc and ahd
  drivers and their firmware were under active development, but those days
  have passed.  The firmware now exists in pre-compiled form, no longer
  dependent on it's sources or on aicasm.  If you wish to rebuild the
  firmware from source, the glue still exists under the 'make firmware'
  target in sys/modules/aic7xxx.

  This also fixes the problem introduced with r257777 et al with building
  kernels the old fashioned way in sys/$arch/compile/$CONFIG when the
  ahc/ahd drivers were included.
2014-08-21 17:18:21 +00:00
ian
febf3f5203 MFC r257637, r257730, r257734, r257777, r257825, r257838, r257873:
Changes to how the aicasm tool is built.  This series of changes results
in the aicasm tool being built as part of the tools stages of world and
kernel builds.

Most of these changes will ultimately be undone when r260401 is MFC'd,
but it will leave in place the new kernel-build-tool machinery (KTMAKE
stuff) in case a new special kernel tool ever comes along.
2014-08-21 14:56:57 +00:00
ian
c4195049f5 MFC r266473,267331,267511:
Use an intermediate target to associate with _SUBDIR which is marked .MAKE
  this allows make -n to do tree walks as expected without
  doing anything else (as intended).
  Use prefix _sub. to help avoid conflict with any real target.

  Put the test suite in its own tests.txz distribution file.
  Force all the contents of /usr/tests to go into a separate distribution
  file so that users of binary releases can easily choose to not install

  Create a mechanism for providing fine-grained build order dependencies
  during SUBDIR_PARALLEL builds.  This augments the coarse .WAIT mechanism,
  which is still useful if you've got a situation such as "almost everything
  depends on A and B".
2014-08-19 23:33:51 +00:00
ian
93369e5cce MFC r269688: m4 now requires libohash, build it when bootstrapping. 2014-08-17 02:40:44 +00:00
roberto
cb8cf293f9 MFC r269662:
10 has a new flex (2.5.37) and the config.h for unbound has been updated to
take this into account. Alas it breaks source upgrade from any version of
9 because flex is not built as a bootstrap-tools (it would be for older
versions).

That means "libunbound/configlexer.c" is built with the old flex but using
config.h for the new one. Build is thus broken going from 9.* to 10.

Make flex a bootstrap-tools entry if host is less than 1000033 to take into
account the flex update in 10.

Tested on both 9.2-RC3 and 9.3 by myself and dim@. Running buildworld in
head but as both 10 and 11 has the new flex, it will not matter.

Reviewed by:    imp
Approved by:    des, imp
MFC after:      1 week
Phabric:        D554
2014-08-14 12:16:03 +00:00
rpaulo
4313c083af MFC r269744
Run dtrace in 32-bit mode when compiling 32-bit libraries.
2014-08-13 06:45:02 +00:00
dim
f9d311d90a MFC r268957:
Run mtree for BSD.tests.dist during make xdev-install, if the tests are
enabled (which they are in the default configuration).  Otherwise, it
will fail because ${XDDESTDIR}/usr/include/atf-c does not exist.
2014-07-24 20:16:45 +00:00
bdrewery
f6034d31b7 MFC r267599:
- Add a LOCAL_ITOOLS to allow adding additional tools required for the
    installworld and distributeworld targets

PR:		179562
2014-06-24 15:57:48 +00:00
delphij
c49d771309 MFC r266520:
Explicitly link libzfs against libavl as it is done in OpenSolaris
(4543:12bb2876a62e).  Without this, some third party applications
may break because the lack of AVL related symbols.

FreeBSD base system are not affected because the FreeBSD ZFS command
line tools were all linked against libavl and thus hide the underlying
issue.

PR:	bin/183081
2014-05-27 18:22:52 +00:00
ian
5f95900ee1 MFC 263949, 265063: Add library dependencies for a couple bootstrap libs
to fix build failures for high -jN values when building with gcc.
2014-05-26 22:27:14 +00:00
ian
6c4033c89f MFC 262614, 262625, 262626, 262627, 262682, 262714, 262725, 262736
Integrate device-tree upstream files into the build process:
  (1) Invoke cpp to bring in files via #include (although the old
      /include/ stuff is supported still).
  (2) bring in files from either vendor tree or freebsd-custom files
      when building.
  (3) move all dts* files from sys/boot/fdt/dts to
      sys/boot/fdt/dts/${MACHINE} as appropriate.
  (4) encode all the magic to do the build in sys/tools/fdt/make_dtb.sh
      so that the different places in the tree use the exact same logic.
  (5) switch back to gpl dtc by default. the bsdl one in the tree has
      significant issues not easily addressed by those unfamiliar with
      the code.

  Only try to build the static dtb when we're building a static dtb.

  Use proper include path for dtc as well as cpp.

  Fix syntax errors (missing ; other minor glitches) in existing dts files.
2014-05-16 15:56:34 +00:00
thomas
69470d28bf MFC rev. 265260:
Add appropriate quoting to allow building with a KERNCONFDIR containing
spaces.

PR:		kern/162736
2014-05-11 20:44:58 +00:00
bapt
e7708e06f4 MFC: r263881, r263952, r263983, r264068, r264090, r264131
Some xdev fixes:

- if TARGET_ARCH is not defined and XDEV_ARCH is defined then early define
  TARGET_ARCH to the valud of XDEV_ARCH: This allow the xdev-build target
  to be able to correctly chose the compiler it needs to build
- Allow overwriting XDTP to allow a user to not chose where the xdev env will
  live in
- Fix build for gcc only xdev (like ia64) by providing the proper -B to the
  toolchain and not relying on gcc being installed already in base
- Fix TOOLS_PREFIX so the generated toolchain has the right default sysroot when
  installed intead of getting the DESTDIR one
- Fix supporting DESTDIR
- Also overwrite CXX (needed for cross building c++ libraries with clang) and
  CPP (needed to cross build some libraries when gcc is the target default
  compiler but gcc is not installed on the building host)
- Prevent XDTP from being a relative path:
  XDTP is used as the default SYSROOT for clang and thus should be an absolute path.
- Respect default CC
2014-04-12 15:06:15 +00:00
asomers
2ab6848d63 MFC r263429
Fix kern/187712: config(8) does not respect KERNCONFDIR.
The impact of this bug is that you cannot build a kernel if both of the
following are true:
1) The kernel config file is in a non-default location
2) The kernel config file uses the "include" statement from config(5).

usr.sbin/config/main.c
usr.sbin/config/config.8
usr.sbin/config/config.h
usr.sbin/config/lang.l
	Added a "-I path" option to config(8).  By analogy to cc(1), it adds
	an extra path in which the "include" statement will search for
	files.

Makefile.inc1
        Pass "-I ${KERNCONFDIR}" to config(8).
2014-04-10 19:51:33 +00:00
dim
20b24a4adb Turn off warnings for building aicasm. Various versions of yacc exist,
which can result in different warnings-as-errors in this tool, but these
are all completely harmless.

This is a direct commit to stable/7, stable/8, stable/9 and stable/10,
since this kernel build tool has already been removed in head.
2014-03-23 14:18:40 +00:00