Commit Graph

31 Commits

Author SHA1 Message Date
Kris Kennaway
d510ecb42b Bring in the WARNS directive from NetBSD, localized in a new bsd.sys.mk
to avoid polluting sys.mk.  This directive controls the addition of
compiler warning flags to CFLAGS in a relatively compiler-neutral manner.

The idea is that WARNS can be set in Makefile.inc or in individual
Makefiles as they become clean, to prevent the introduction of new
warnings in the code.  -Werror is added by default
2001-05-19 23:18:21 +00:00
Kris Kennaway
14d4db66bf Overhaul the MACHINE_CPU behaviour:
* Rip out MACHINE_CPU stuff from sys.mk and include a new <bsd.cpu.mk>
  after we pull in /etc/make.conf.  We need to do it afterwards so we can
  react to the user setting of the:

* CPUTYPE variable, which contains the CPU type which the user wants to
  optimize for.  For example, if you want your binaries to only run on an
  i686-class machine (or higher), set this to i686.  If you want to support
  running binaries on a variety of CPU generations, set this to the lowest
  common denominator.  Supported values are listed in make.conf.

* bsd.cpu.mk does the expansion of CPUTYPE into MACHINE_CPU using the
  (hopefully) correct unordered list of CPU types which should be used on
  that CPU.  For example, an AMD k6 CPU wants any of the following:
    k6 k5 i586 i486 i386
  This is still an unordered list so the client makefile logic is simple -
  client makefiles need to test for the various elements of the set in
  decreasing order of priority using ${MACHINE_CPU:M<foo>}, as before.
  The various MACHINE_CPU lists are believed to be correct, but should be
  checked.

* If NO_CPU_CFLAGS is not defined, add relevant gcc compiler optimization
  settings by default (e.g. -karch=k6 for CPUTYPE=k6, etc).  Release
  builders and developers of third-party software need to make sure not to
  enable CPU-specific optimization when generating code intended to be
  portable.  We probably need to move to an /etc/world.conf to allow the
  optimization stuff to be applied separately to world/kernel and external
  compilations, but it's not any worse a problem than it was before.

* Add coverage for the ia64/itanium MACHINE_ARCH/CPUTYPE.

* Add CPUTYPE support for all of the CPU types supported by FreeBSD and gcc
  (only i386, alpha and ia64 first, since those are the minimally-working
  ports.  Other architecture porters, please feel free to add the relevant
  gunk for your platform).

Reviewed by:    jhb, obrien
2001-02-22 11:22:46 +00:00
Peter Wemm
8cc6d36435 Add bsd.kmod.mk back. 2000-05-27 00:54:45 +00:00
Peter Wemm
4bca00df4e Oops. I forgot to remove bsd.kmod.mk from the list of files installed. :-(
Submitted by:	Scott Flatman <sf@aracnet.com>
2000-05-04 18:49:49 +00:00
Peter Wemm
7f3dea244c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
David E. O'Brien
96777bea6b Create /var/db/port.mkversion rather than /var/db/pkg/.mkversion to be in
sync with bsd.port.mk rev 1.309.

Submitted by:	make world
1999-04-15 07:19:56 +00:00
Satoshi Asami
3c41f8c734 Add ${DESTDIR} to installation path. Move target to under beforeinstall:.
Submitted by:	bde
1999-03-31 23:53:50 +00:00
SADA Kenji
cca48a48e4 I'm sorry, this was already fixed in etc/mtree/BSD.var.dist.
Submitted by:	asami@FreeBSD.ORG
1999-03-31 15:38:38 +00:00
SADA Kenji
a68bcfe410 Sometimes we have to make `/var/db/pkg' directory before we create
`.mkversion' :)
Submitted by:	YAMAMOTO Shigeru <shigeru@bremen.or.jp>
1999-03-31 12:15:33 +00:00
Satoshi Asami
633df82af6 Create /var/db/pkg/.mkversion file with datestamp. 1999-03-29 23:02:29 +00:00
Satoshi Asami
218515c5f8 Make bsd.port.mk includable in two phases. bsd.port.pre.mk defines only
a few variables that could be used in the port Makefile for ".if exists()"
tests.  bsd.port.post.mk defines the rest.

Note: if you define USE_X_PREFIX or USE_IMAKE, put it before including
bsd.port.pre.mk.  These are the only two variables used in the first part.

In reality, bsd.port.pre.mk and bsd.port.post.mk just include bsd.port.mk
with special variables to turn part of it off.
1998-11-11 05:21:29 +00:00
Bruce Evans
90e137696c Fixed disordering and misformatting in previous commit.
Don't override correct default targets.

Don't use afterinstall for installing things; it is for fixups after
installing things.
1998-09-09 10:17:34 +00:00
Wolfram Schneider
e3706b10d9 bsd.docb.mk handles installing SGML/docbook documents. 1998-08-29 11:01:22 +00:00
Jordan K. Hubbard
1c43d7e198 Complete back-out of the bsd.locale.mk change.
OK'd by:	asami
1998-05-20 22:27:18 +00:00
Matthew Hunt
71e3426cdc Add bsd.locale.mk to the list of files. Whether bsd.locale.mk is
the right solution or not, bsd.port.mk is broken unless bsd.locale.mk
is installed.

Note that if LOCALE is not defined, port-building explodes:

"/usr/share/mk/bsd.locale.mk", line 135: if-less elif
"/usr/share/mk/bsd.locale.mk", line 135: Need an operator
(For each .if testing LOCALE)
1998-05-20 04:57:16 +00:00
Wolfram Schneider
32bebd8d26 Undo rev 1.11, the cd is null since NOOBJ is set.
444 -> ${SHAREMODE}
1998-01-03 14:04:55 +00:00
Peter Wemm
b97fa2ef50 Revert $FreeBSD$ to $Id$ 1997-02-22 14:13:04 +00:00
Jordan K. Hubbard
1130b656e5 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
Bruce Evans
9e72552ff0 Centralized the definition of CWARNFLAGS into bsd.kern.mk. 1996-10-08 22:09:03 +00:00
Bruce Evans
9b66eea42e Moved definitions of library names from bsd.prog.mk to a new central
file bsd.libnames.mk and include this file where necessary.  This fixes
null library names in ${DPADD}'s in library makefiles.
1996-09-05 18:05:08 +00:00
Jordan K. Hubbard
cd9a2f5c28 Bring in my changes for removing the pestilent obj links (unless you
really want them) from /usr/src.  This is the final version of the
patches, incorporating the feedback I've received from -current.
1996-06-24 04:26:21 +00:00
Wolfram Schneider
bcb1a9de55 install bsd.obj.mk
Submitted by:	Asami
1996-04-12 11:13:29 +00:00
John Fieber
e9df041096 Add bsd.sgml.mk 1995-09-08 19:27:48 +00:00
Bruce Evans
9c0dc173cc Change install' to ${INSTALL}' so that default install flags can be
specified in the top level Makefiles.
1995-07-25 00:37:58 +00:00
Rodney W. Grimes
0f9b873be7 Change install: to afterinstall: to be more consistent. 1995-05-09 10:12:16 +00:00
Bruce Evans
b57826604c Install bsd.info.mk. 1995-01-03 06:32:10 +00:00
Garrett Wollman
639a2e5035 A make system file for building LKMs, derived from bsd.prog.mk. 1994-09-14 21:59:28 +00:00
Rodney W. Grimes
ff753cd302 Add the installation of bsd.README. Realphabitize the FILES= list.
Reviewed by:	rgrimes
Submitted by:	bde
1994-09-07 09:18:44 +00:00
Jordan K. Hubbard
cc3840179b Add bsd.port* to the Makefile.
Reviewed by:
Submitted by:
1994-08-28 09:35:51 +00:00
Bruce Evans
ed575421e9 - bsd.dep.mk and bsd.own.mk have been required for some time. Install them.
- Install with group BINGRP, not BINOWN.
1994-08-20 08:25:00 +00:00
Rodney W. Grimes
afe61c1516 BSD 4.4 Lite Share Sources 1994-05-30 19:09:18 +00:00