aboutsummaryrefslogtreecommitdiff
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Improve the distributeworld target in Makefile.inc1 and update the releaseNathan Whitehorn2011-03-021-2/+4
| | | | | | | | | | | | | infrastructure to use it. make distributeworld can now be used without preparing its environment first and installs games into its distribution using the regular make distribute logic instead of post-processing with a script. Also add two new targets, packageworld and packagekernel, that tar up the results of distributeworld and distributekernel (also new), respectively. Notes: svn path=/head/; revision=219177
* Fully honor KERNSRCDIR for 'make universe' if it is set.John Baldwin2011-03-011-5/+6
| | | | | | | MFC after: 1 week Notes: svn path=/head/; revision=219137
* - Add a new UNIVERSE_TARGET variable for 'make universe'. If it is set,John Baldwin2011-02-101-8/+17
| | | | | | | | | | | | | | | then that target is invoked for each architecture rather than the default action of building world and kernels for each architecture. - Add a 'make toolchains' wrapper which uses UNIVERSE_TARGET to build toolchains for all architectures. - Document JFLAG, MAKE_JUST_KERNELS, and MAKE_JUST_WORLDS variables for 'make universe'. Reviewed by: bz MFC after: 1 week Notes: svn path=/head/; revision=218524
* Setting TARGET and TARGET_ARCH needs to be done in _MAKE, not in theWarner Losh2011-02-021-2/+2
| | | | | | | TGTS rule as _MAKE is used elsewhere. This should fix make world. Notes: svn path=/head/; revision=218206
* Move the architecture guessing from Makefile.inc1 to Makefile. WeWarner Losh2011-01-311-2/+33
| | | | | | | | | | | | | need to do this because variables specified on the command line override those specified in the Makefile. This is why we also moved from TARGET to _TARGET in Makefile, and then set TARGET on the command line when we fork a submake with Makefile.inc1. This makes mips/mips work again, even without the workaround committed to lib/libc/Makefile. Notes: svn path=/head/; revision=218130
* Back out r217734. [1]Bjoern A. Zeeb2011-01-251-2/+3
| | | | | | | | | | | | Properly document what `make targets` is supposed to list to avoid further confusion given the place the target sits. Should have happened with r217125. Requested by: imp [1] Reviewed by: rwatson Notes: svn path=/head/; revision=217815
* For `make tinderbox` there is no need to print the extra commands.Bjoern A. Zeeb2011-01-231-2/+2
| | | | | | | MFC after: 5 days Notes: svn path=/head/; revision=217754
* Make `make tinderbox` work with MAKEOBJDIRPREFIX set (or in possibly otherBjoern A. Zeeb2011-01-221-1/+1
| | | | | | | | | | | combinations) by forcing FAILFILE into .CURDIR as we do for all other universe output files. [1] Similarly make FAILFILE start with "_." as well. Reviewed by: silence-on-src [1] MFC after: 6 days Notes: svn path=/head/; revision=217735
* In `make targets` print the make variable TARGETS as we expect it ratherBjoern A. Zeeb2011-01-221-1/+1
| | | | | | | | than the grammatically better sounding variant without the 'S'. This allows copy and paste and is less confusing. Notes: svn path=/head/; revision=217734
* Properly document what the top-level `make tinderbox` does.Bjoern A. Zeeb2011-01-221-1/+2
| | | | | | | | | Reviewed by: jmallett MFC After: 3 days X-MFC: build.7 only Notes: svn path=/head/; revision=217733
* Provide up-to-date estimates that are pessimal today...Warner Losh2011-01-121-1/+2
| | | | Notes: svn path=/head/; revision=217297
* Proving once again, I can't typo: fix a type.Warner Losh2011-01-111-1/+1
| | | | Notes: svn path=/head/; revision=217294
* Minor improvements in the wording of a comment. Document tinderbox target.Warner Losh2011-01-111-1/+3
| | | | Notes: svn path=/head/; revision=217273
* make targetsWarner Losh2011-01-071-1/+10
| | | | | | | | | | | | This produces a list of currently supported targets. Here "supported" means "built in make universe" on the theory that those targets are more supported than any that might work in 'make buildworld TARGET=x TARGET_ARCH=y' since the latter are less tested. Suggested by: rwatson Notes: svn path=/head/; revision=217125
* Retire TARGET_ABI.Warner Losh2011-01-071-1/+1
| | | | | | | | | | | | | | | | | | Implement MACHINE_ARCH=mips64e[lb] to build N64 images. This replaces MACHINE_ARCH=mipse[lb] TARGET_ABI=n64. MACHINE_ARCH=mipsn32e[lb] has been added, but currently requires WITHOUT_CDDL due to atomic issues in libzfs. I've not investigated this much, but implemented this to preserve as much of the TARGET_ABI functionality that I could. Since its presence doesn't affect the working cases, I've kept it in for now. Added mips64e[lb] to make universe, so more kernels build. And I think this (finally) closes the curtain on the tbemd tree. Notes: svn path=/head/; revision=217123
* When TARGET_ARCH_${kernel} gets set, it is using the host's config,Warner Losh2011-01-031-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | not the one we build as part of make world. This means that make universe will fail if building on a too-old current or any stable system prior to a few days ago in weird ways (parse errors from shell). This copes with these old systems in two ways: (1) Works around the WARNING: issue by filtering all warnings that sneak onto stdout. (2) if TARGET_ARCH_${kernel} winds up being empty, then we error out immediately with a semi-useful error message. This usually comes from config not groking -m. Ideally, we'd use a buildworld's config here, but that's tricky, so I'll leave that detail to others to fix (it has to be done post make world for the arch rather than at the top level makefile). This should make 'make universe' usable from recent 8-stable systems (recent == last few months or so) for building -current. They have -m, but spewed warnings out stdout. Older systems will now at least get a firm error early rather than a confusing error late. Notes: svn path=/head/; revision=216934
* Redirect stderr from config to /dev/null. config -m is printing lotsWarner Losh2010-12-241-2/+2
| | | | | | | | of annoying warnings when dealing with arm. The arm config files need to be fixed, but this restricts the output to a more useful place. Notes: svn path=/head/; revision=216685
* Reconnect arm to the universe build, and connect big-endian MIPS and ARMNathan Whitehorn2010-12-181-7/+29
| | | | | | | | | | and powerpc64 to universe for the first time. In general, provide (slightly hacky) knowledge of multi-architecture TARGETs to universe as well as the ability to distinguish the correct toolchain for a given kernel using config -m. Notes: svn path=/head/; revision=216520
* Pass JFLAG as JFLAG from tinderbox to universe. This gives the sameJohn Baldwin2010-12-161-1/+1
| | | | | | | | | | | | semantics for JFLAG with tinderbox as for universe. Previously doing 'make JFLAG=-j4 tinderbox' was equivalent to 'make -j4 universe' (i.e. 4 worlds in parallel) rather than 'make JFLAG=-j4 universe' (i.e. worlds in sequence, each built with -j4). MFC after: 1 month Notes: svn path=/head/; revision=216487
* Add mips back to universeWarner Losh2010-11-131-1/+1
| | | | Notes: svn path=/head/; revision=215271
* Complete the integration of tbemd branch into head.Warner Losh2010-11-101-1/+1
| | | | | | | | | | | | | | | | | | | TARGET_BIG_ENDIAN is now completely dead, except where it was originally supposed to be used (internally in the toolchain building). TARGET_ARCH has changed in three cases: (1) Little endian mips has changed to mipsel. (2) Big endian mips has changed to mipseb. (3) Big endian arm has changed to armeb. Some additional changes are needed to make 'make universe' work on arm and mips after this change, so those are commented out for now. UPDATING information will be forthcoming. Any remaining rough edges will be hammered out in -current. Notes: svn path=/head/; revision=215082
* Connect FDT infrastructure to the build system.Rafal Jaworowski2010-06-131-1/+2
| | | | | | | | Reviewed by: imp Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=209128
* For those of us mere mortals who do not aspire to the lofty heightsDoug Barton2010-03-181-0/+2
| | | | | | | | of kernel hackery, add MAKE_JUST_WORLDS so that we can take part in the 'make universe' goodnes without using unecessary time and resources. Notes: svn path=/head/; revision=205290
* Give make kernel-toolchain a one-liner here. Although documented inWarner Losh2010-03-031-0/+1
| | | | | | | build(7), many people look here for a quick reminder... Notes: svn path=/head/; revision=204661
* Back out the change to Makefile made in r202628.Ed Schouten2010-01-191-1/+1
| | | | | | | | It was just a local modification to build the i386 and amd64 more quickly. Notes: svn path=/head/; revision=202629
* Recommit r193732:Ed Schouten2010-01-191-1/+1
| | | | | | | | | | | | | | | | | | | Remove __gnu89_inline. Now that we use C99 almost everywhere, just use C99-style in the pmap code. Since the pmap code is the only consumer of __gnu89_inline, remove it from cdefs.h as well. Because the flag was only introduced 17 months ago, I don't expect any problems. Reviewed by: alc It was backed out, because it prevented us from building kernels using a 7.x compiler. Now that most people use 8.x, there is nothing that holds us back. Even if people run 7.x, they should be able to build a kernel if they run `make kernel-toolchain' or `make buildworld' first. Notes: svn path=/head/; revision=202628
* Rather than using an extra variable, only call uname if really needed andBjoern A. Zeeb2010-01-111-2/+3
| | | | | | | | | | | then directly assign the result. Submitted by: jmallett MFC after: 24 days X-MFC with: r201815 Notes: svn path=/head/; revision=202095
* Use uname -m [1] and rename BUILD_ARCH to XMACHINE[2].Bjoern A. Zeeb2010-01-091-2/+2
| | | | | | | | | Submitted by: nyan[1], imp[2] MFC after: 27 days X-MFC with: r201815 Notes: svn path=/head/; revision=201960
* To avoid hardcoding further kernel configuration names forBjoern A. Zeeb2010-01-081-11/+16
| | | | | | | | | | | | | | | | make universe, split the logic into two parts: - 1st to build worlds and generate kernel configs like LINT. - 2nd to build kernels for a given TARGET architecture correctly finding all newly generated configs, not knowing anything about LINT anymore. (*) (*) If you know better/cleaner/... ways to do this, let me know. Discussed on/with: arch, jhb, rwatson MFC after: 1 month Notes: svn path=/head/; revision=201815
* Add a new world named 'mips' to our universe.Bjoern A. Zeeb2009-04-011-1/+1
| | | | | | | Discussed with: imp Notes: svn path=/head/; revision=190628
* Implement the xdev target. When you define XDEV=arch XDEV_ARCH=arch,Warner Losh2009-03-131-1/+1
| | | | | | | | | you can build the cross development tools and install them as $XDEV-freebsd-xxx for each tool. This allows one to use autoconf to find the tools for cross building scenarios. Notes: svn path=/head/; revision=189760
* Permit digits at the beginning and end of kernel config file names forBjoern A. Zeeb2008-12-271-1/+1
| | | | | | | | | | | `make universe'. This catches a few more arm and, once enabled, mips configs and permits having local configs named like NOINET6. Reviewed by: phk MFC after: 4 weeks Notes: svn path=/head/; revision=186519
* Provide a 'tinderbox' target that compiles enough of FreeBSD thatAlfred Perlstein2008-12-011-7/+28
| | | | | | | | | | | a developer can rest reasonably assured that the tinderbox will not be broken. This target leverages most of 'universe' but will exit non-zero and output a summary at the end. "make tinderbox" Notes: svn path=/head/; revision=185499
* Change the universe target to warn the user for every world or kernel thatDag-Erling Smørgrav2008-11-241-8/+14
| | | | | | | | | | fails. The error message includes a reference to the relevant log file. Approved by: phk MFC after: 1 week Notes: svn path=/head/; revision=185250
* Back out rev. 1.352 (SVN rev 179842) as phk pointed out thatBjoern A. Zeeb2008-06-171-2/+2
| | | | | | | | SRCCONF was omitted here to be able to build non standard trees with universe as well. Notes: svn path=/head/; revision=179845
* For make universe, in addition to make.conf, also ignore aBjoern A. Zeeb2008-06-171-2/+2
| | | | | | | | | | src.conf with possibe non-default options. Reviewed by: ru MFC after: 10 days Notes: svn path=/head/; revision=179842
* Backout the change to remove sun4v.John Birrell2008-05-251-1/+1
| | | | | | | | Note that sun4v is currently broken on T2000 hardware so it's pretty much a lame duck at this point. Notes: svn path=/head/; revision=179309
* Remove sun4v from the list of arches in 'make universe'. There has beenJohn Birrell2008-05-251-1/+1
| | | | | | | | | no active development on it for over a year now and it isn't reliable under a simple buildworld. Developers can't be expected to test code targeted for it. Notes: svn path=/head/; revision=179299
* Add a knob to allow just the kernels to be built during a 'make universe'.John Birrell2008-05-231-0/+2
| | | | | | | | This is useful when wanting to retry a broken build using NOCLEAN and the buildworlds are known to have completed. Notes: svn path=/head/; revision=179232
* Mention -U and -ai arguments to mergemaster in a comment for theRobert Watson2008-04-291-1/+1
| | | | | | | | | | general mergemaster line. MFC after: 3 days Suggested by: Ben Laurie Notes: svn path=/head/; revision=178653
* Double up the necessary size of /usr/obj to 800MBPav Lucistnik2008-03-311-1/+1
| | | | | | | | | PR: misc/99735 Reported by: Philip M. Gollucci <pgollucci@p6m7g8.com>, Maxim Konovalov <maxim@macomnet.ru> Notes: svn path=/head/; revision=177794
* Add code that should catch the most common case when date/time isRuslan Ermilov2008-03-251-0/+4
| | | | | | | set incorrectly. Notes: svn path=/head/; revision=177609
* Add a note pointing to build(7) for more info.John Baldwin2008-01-301-0/+2
| | | | | | | | MFC after: 1 week Reviewed by: ru Notes: svn path=/head/; revision=175833
* We don't need to invent BSDMAKE. ${MAKE} is sufficient.Warner Losh2007-12-131-3/+2
| | | | | | | Submitted by: jmallet@ Notes: svn path=/head/; revision=174564
* Don't assume that make(1) is a bsd-like make program. It might not be. ThisWarner Losh2007-12-111-3/+5
| | | | | | | | | only matters in the early stages of bootstrapping, of course, but gnu make can't handle bsd make Makefiles at all if they use any of the 'dot' directives, which src/Makefile has in abudnance. Notes: svn path=/head/; revision=174539
* Do not bail out for cleanworld target just becauseXin LI2007-10-181-2/+2
| | | | | | | chflags is failed. Notes: svn path=/head/; revision=172744
* Expose all of {check,delete}-old{,-dirs,-files,-libs}.Dag-Erling Smørgrav2007-05-161-5/+12
| | | | | | | MFC after: 3 weeks Notes: svn path=/head/; revision=169597
* Introduce a variable TARGETS that can be set on the make command lineMarcel Moolenaar2007-04-021-1/+3
| | | | | | | | | | | | | | | | and that controls which platforms are being built as part of a "make universe". By default TARGETS is set to the 8 platforms currently being built. This variable is useful for running or re-running a "make universe" with only a selected set of platforms. This makes the universe target slightly more useful in cases the universe is limited to a developer's scope or objectives. For example, when a universe failed for a particular platform and fixes need to be tested for that particular platform then a developer can restart the universe for only that platform, even if the initial universe is still building other platforms. Notes: svn path=/head/; revision=168280
* Add arm to universe.Ruslan Ermilov2006-11-281-1/+1
| | | | Notes: svn path=/head/; revision=164709
* Remove the NO_CTF option. It would have been required to supportJohn Birrell2006-11-211-1/+1
| | | | | | | DTrace. Notes: svn path=/head/; revision=164470