184 Commits

Author SHA1 Message Date
jfieber
3fb9ff7e6c Fix incorrect handling of .cxx files in default rules. 1996-06-03 13:26:16 +00:00
phk
f395b616d3 Avoid a ton of "mv" when making libs by using -O to ld.
Make lex rules reentrant.
1996-05-28 16:20:13 +00:00
phk
a6c3d6a661 Make some rules reentrant, and mark the onces that cannot be. 1996-05-09 13:01:44 +00:00
jdp
34e576f18f Add "-x" to the linker command for building shared libraries. This
eliminates many local symbols that could not be removed by the "ld -r -x"
steps on the individual object files.  It makes shared libraries
substantially smaller -- almost 11%, in the case of libc.so.3.0.
1996-04-21 17:45:38 +00:00
wosch
d73e6b35cd delete LIBDIR?= LINTLIBDIR?= LIBGRP?= LIBOWN?= LIBMODE?= SHLIBDIR?=
BINGRP?= BINOWN?= BINMODE?=
1996-03-24 00:21:04 +00:00
jdp
2216580a16 Back out my previous change, which caused c++rt0.o to be linked into
every shared library, until I can diagnose the problems it is causing
for certain programs such as awk and groff.
1996-01-21 17:26:25 +00:00
jdp
2b13f2a1dc Always link /usr/lib/c++rt0.o into a shared library. CPLUSPLUSLIB is no
longer necessary, and can be removed from Makefiles.
1996-01-17 00:03:08 +00:00
bde
7c8043e4e7 Don't run `ranlib -t' at install time. Our ld has never looked at the
timestamp on __.SYMDEF like ranlib.1 says it does, so changing the
timestamp has no benefits, and changing it breaks smart installs.
1995-10-09 05:09:37 +00:00
wollman
6db5ef09ae Compress manual pages (if desired) in the obj directory rather
than in the installation destination.  Should make release-building
substantially faster.  The msun Makefile changes simple adapt to the new
scheme.
1995-10-02 20:02:05 +00:00
dg
e8ffa878fc Use lorder/tsort for shared libraries. It might help group things better.
Suggested by Garrett Wollman.
1995-08-02 22:31:52 +00:00
nate
4405cff2a7 Do what should have been done in v1.14
*Really* strip out unused local symbols from shared objects.

This was a typo on my part caused by an assumption that the profiled
libraries stripped symbols that same way as the non-profiled libraries.

Cut-n-Paste strikes again.

Obtained from: NetBSD
1995-03-28 17:54:11 +00:00
phk
6ba3ecf5d2 "make distribute" have changed, beware if you use it. 1995-02-25 20:51:14 +00:00
bde
c68c6ddc37 More complete implementation of SUBDIR for programs, libraries and kmods.
`depend' wasn't supported.  This seems to have only broken `make depend'
in gnu/usr.bin/ld.

bsd.prog.mk:
Build the man pages in ${MANDEPEND} at build time.
1995-02-08 21:35:31 +00:00
jkh
c4cad71414 Add LN_FLAGS to all the places it makes sense. 1995-01-30 07:22:02 +00:00
wollman
867341c82f Slightly more complete implementation of SUBDIR for libraries. 1995-01-14 22:18:15 +00:00
wollman
8d8fef4caf Add SUBDIR facility to bsd.lib.mk like in bsd.prog.mk. 1995-01-14 22:14:54 +00:00
jkh
f89d36730c Change DISTRIBUTION names. Also make bsd.doc.mk go to doc distribution,
not bin.  Hmmm.
1995-01-14 07:51:10 +00:00
ache
675d939995 Remove INSTALL, now into sys.mk 1995-01-04 22:32:40 +00:00
ache
2f0989e5fa Remove -T from ar, nm fixed now 1994-12-28 00:49:58 +00:00
ache
b1afaf0aff Add T option back to ar until nm will be fixed. Sorry, nate. 1994-12-24 10:07:51 +00:00
nate
1daa60a210 Strip out unused local symbols from shared objects, and no longer
truncate archive members to 15 characters since it's no longer
necessary.
1994-12-23 22:50:45 +00:00
bde
f1b917b022 This change was actually made in the previous revision:
Define SHLIBDIR?= ${LIBDIR} and install shared libraries in
${DESTDIR}${SHLIBDIR} instead of in ${DESTDIR}${LIBDIR}.
SHLIBDIR may be defined in /etc/make.conf to override the
default of /usr/lib (I use /lib).  Other changes are required
for non-default shared library directories to actually work
(ld* and crtso have too many hard-coded paths).

Bruce
1994-11-14 06:28:20 +00:00
bde
e226c88111 Define `RANTOUCH?= ${RANLIB} -t' and use it instead of ${RANLIB} -t.
RANTOUCH may be defined in /etc/make.conf as
`${ECHO} skipping ${RANLIB} -t' to help stop `make install' from
changing the timestamps on unchanged libraries, thus making the
uninstalled binaries appear to be out of date...  Other changes
are required to stop install from clobbering the timestamps.
1994-11-14 04:55:39 +00:00
phk
94e55d40f9 Add a new "distribute" target. This is a variant of install, which will
put the stuff into the right "distribution".  As default things end up
in "bindist".

Normal (ie: most) makefiles know naught of this.

More commits will follow, which will direct various parts of the tree
into the distribution we want them in.

Some of the grief of being release-engineer is supposed to go away with this.
1994-11-13 21:05:28 +00:00
bde
7661c0a196 Some profiled/shared objects were being built despite NOPROFILE/NOPIC
being set.
1994-10-25 17:55:25 +00:00
wollman
208c1a5a6d Emendation to previous commit: only create static INTERNALLIBs if
INTERNALSTATICLIB is also set.
1994-09-18 22:22:32 +00:00
wollman
ddecd2f876 It turns out that occasionally you want both shared and static versions
of INTERNALLIBs, so generate both.
1994-09-18 22:06:04 +00:00
jkh
7aa31544d6 Add support for DEBUG_FLAGS. If you say something like:
make DEBUG_FLAGS=-g2

You can compile something for debugging at debugging level 2.
It will also take care not to strip the resulting executable(s).
1994-09-16 14:30:25 +00:00
bde
0be9e2c654 Use ${ECHO} instead of echo' so that make -s' is fairly quiet. 1994-08-28 15:37:40 +00:00
wollman
927d2e7853 Add support for two modifier variables which will be useful soon:
PRECIOUSLIB causes the shared library to be installed with the system
immutable flag (schg) set.  (You can add other flags for shared-library
installation by modifying SHLINSTALLFLAGS.)

INTERNALLIB disables the generation of non-shared versions of the library.
This may be of use for programs like Taylor UUCP and GCC which have large
internal libraries shared among a number of programs.
1994-08-26 18:58:10 +00:00
wollman
7d898724d7 Make the install targets obey the INSTALLFLAGS requests in the new
Makefiles.

DANGER WILL ROBINSON!

This will cause repeat installs of certain programs, such as `init' and
`rcp', to fail unless one of the two conditions is met:

	1) You are in single-user mode.
	2) Your security level is set to 0 or -1.

If you have compiled a kernel from the latest sources, your kernel
security level is set to -1 by default, which will keep `init' from
fiddling with it.  You can increase it, but not decrease it, from the
command line with the command `sysctl -w kern.securelevel=<new value>'.
I believe that -1 is the most appropriate value to use while we are still
developing the code, although when we ship it should be changed back to 0.

See init(8) for more information.
1994-08-10 02:48:08 +00:00
wollman
4b670f433d Don't pass ${LDADD} to ${AR}. Use ${ARADD} for that. 1994-08-08 15:45:55 +00:00
wollman
5a93a2fdb9 Spplat our 1.1.5 `mk' ifiles over the top of the 4.4 ones. So far
as I can tell, this is ts the right thing to do.
1994-08-04 21:09:27 +00:00
rgrimes
b0d61785ca BSD 4.4 Lite Share Sources 1994-05-30 19:09:18 +00:00