Commit Graph

152 Commits

Author SHA1 Message Date
fair e1134b1863 Patched per PR 7283; this causes shared libraries which depend on
other shared libraries to load against the ones just built when
DESTDIR is set (i.e. -L${DESTDIR}${LIBDIR} ), rather than what's
installed in /usr/lib (previous behavior definitely violated the
Principle of Least Astonishment!).
1999-03-30 09:30:43 +00:00
drochner cf3c9d73cd add missing parts of the "mips"->"mipse?" transition 1999-02-24 14:42:36 +00:00
christos 7054064487 Add sparc/elf bits. 1999-02-14 19:12:09 +00:00
lukem 41510f9a2b for MKSHARE=no, set MKDOC=no MKMAN=no MKNLS=no, and for MKMAN=no, set
MKCATPAGES=no.  this simplifies various tests.
1999-02-12 12:38:44 +00:00
lukem 497d11782a * Add support for MKDOC MKLINKLIB MKLINT MKMAN MKNLS MKOBJ MKPIC MKPICINSTALL
MKPROFILE MKSHARE, which default to `yes' unless an equivalent NOxxx
  variable is defined.
* Add MKCATPAGES, which if "no" prevents catpages from being built or installed

Users should use "MKxxx=no" instead of "NOxxx=" in /etc/mk.conf, because
this allows easy override on the make(1) command line (e.g 'make MKSHARE=yes'
to override MKSHARE=no in /etc/mk.conf).
1999-02-12 01:10:06 +00:00
christos f16578a952 PR/2936: Brian C. Grayson: Avoid truncating precious files when installing
and the filesystem is full. Added ${RENAME} flag to install, which when set
to -r installs on a temporary file and then renames to the final destination.
${RENAME} is currently set to nothing in bsd.own.mk, but one can turn it
on in /etc/mk.conf.
1999-02-04 11:58:30 +00:00
thorpej adab608611 When installing a shared library, run /sbin/ldconfig -m ${LIBDIR} if
DESTDIR is not set and the object format is a.out.
1998-12-02 22:52:21 +00:00
erh 36f7c92000 Don't do the version check if we can't find the script. 1998-11-30 23:34:44 +00:00
erh 792cde2d0d Add ability to use either a file or the sets files when checking library version numbers. Added -d, -s and -f flags for check dir, check sets and check file. Suggested by Simon Burge. 1998-11-12 05:39:45 +00:00
erh 14b0d1f276 Add a checkver target to bsd.lib.mk. This target executes the checkver script to find installed shared libraries with major/minor versions that are too big. The realinstall target now depends upon this target so this check is done whenever a library is installed. The check may be disabled by setting NOCHECKVER. 1998-11-07 09:40:35 +00:00
jonathan e66cc6b3b1 Set SHLIB_LD{START,END}FILE to crt{begin,end}S.o for all ELF ports. 1998-11-05 00:52:02 +00:00
wrstuden 922332701f Make lintlib generation work with PATH'd source. We should pull in the
real source, not the implied names, so that we find things we PATH in from
other directories.
1998-10-07 17:49:15 +00:00
christos ddb60058ff Use preserve flag in install. 1998-09-28 08:13:37 +00:00
tv 1428a599bf Rethink the origins of LDSTATIC. Instead, use an option NOLINKLIB, which
builds and installs only what is necessary to link and run binaries, when
the library is not externally useable.
- NOPIC: Create and link against a static library.
- PIC: Create, link against, and install a shared object.
- PIC+LDSTATIC: Create and link against a static library; create and
  install a shared object.
1998-09-13 23:25:18 +00:00
tv aefeb9110b Fix the .c.a brokenness with libbfd the "right" way - nuke everything but
*o from .ALLSRC.
1998-08-22 18:59:40 +00:00
lukem 24bd0530c9 add distclean as a synonym for cleandir 1998-08-09 14:46:19 +00:00
christos 62017450ca fix lint library rule bug; use ${.ALLSRC} as suggested. 1998-05-02 15:19:04 +00:00
tv 8ab6713503 Fix symlinks creation in the build directory: create the symlinks there,
not in ${DESTDIR}.
1998-04-17 13:34:55 +00:00
tv aea014c22a Braindead pmake conditionals. 1998-04-15 12:07:10 +00:00
tv 820dd24a68 Create the ELF symbolic links in the build tree, too. Needed for libamu
and egcs libcc1 to make sure linking is done against the correct shared
object.
1998-04-15 02:39:53 +00:00
tv 7484409ac2 Compare ${LDSTATIC} against ""; don't check for definition. Make this
DTRT on setups with a global setting of LDSTATIC= (nothing)
1998-04-15 01:38:27 +00:00
tv c97729d6b8 Also build a static library regardless of NOSTATICLIB if LDSTATIC is
defined.  In situations where a "private library" is being built, a static
library is needed to link binaries statically (LDSTATIC=-static).
1998-04-12 21:22:20 +00:00
tv 854cea27cc New flag, NOSTATICLIB, prevents build and install of the standard static
library unless NOPIC is set.
1998-04-09 00:51:06 +00:00
tv 482063559a .y.c <sys.mk> rule fixes. Don't create a y.tab.h file unless asked for,
and use smarter creation of the header file.
1998-04-09 00:32:31 +00:00
tv 875f72aa79 Revert. This broke too much in the build tree, and a better solution
needs to be created.  (The existing situation breaks a lot too.)
1998-04-01 16:58:33 +00:00
tv 755c261508 Fix .y rules to DTRT with possibly generated .h files. See mail on
tech-toolchain for a very detailed explanation of this.  In short, add
a .y.h rule identical to the .y.c rule and make the .y.c rule rename
the .h file; also, clean the .h file in CLEANFILES.
1998-04-01 15:23:36 +00:00
jonathan 6fbfecba04 Use the new binutils-compatible ld commandline syntax to build
shared-library .so files on both ELf and  a.out platforms.
1998-03-07 02:02:58 +00:00
jonathan 5e0e8cec39 More table-driven changes for different toolchains:
* new bsd.own.mk variable OBJECT_FMT with values "a.out" or "ELF".
  * use OBJECT_FMT in Makefile tests that depend on toolchain.
  * Add new bsd.own.mk variable NOSHLIB that, if set indicates a given
    port doesnt yet do shared libraries. Set on powerpc.
  * Document new feature-test variables in src/share/mk/bsd.README.
Tested on i386, mips, fakedup Alpha environment.
1998-02-23 10:09:31 +00:00
jonathan b947725fbb Fix dyslexic typo. 1998-02-18 08:14:31 +00:00
jonathan 4cbc9ecd8e Make bsd.lib.mk rules to build ELF vs a.out shlibs more table-driven.
No more .if in solib link rule.
1998-02-18 03:14:31 +00:00
cgd 70fa7e3060 kill a couple of (insignificant but) bogus extra spaces 1997-12-24 05:15:54 +00:00
thorpej 42b5acd98e Fix .c.ln rule: use CPPFLAGS, not CFLAGS. 1997-11-05 05:34:24 +00:00
gwr 0919e2346b Use LORDER, TSORT 1997-11-04 20:33:11 +00:00
lukem 513a06e6f5 remove lint rules for objective c as lint can't cope 1997-10-30 07:25:32 +00:00
lukem 55209d604d add default rules for Objective C sources (`.m' suffix):
- sys.mk:
	add ${OBJC} and ${OBJCFLAGS} (equivalent to ${CC} and
	${CFLAGS} respectively), and ${COMPILE.m} and ${LINK.m} rules
- bsd.sys.mk:
	add .m, .m.o, and .m.ln rules (as per the C rules in sys.mk).
	it's here, rather than in sys.mk, because `.m' isn't
	exclusively used for Objective C files.
- bsd.lib.mk:
	add .m.o, .m.po, .m.so, and .m.ln rules (as per C)
1997-10-28 12:40:16 +00:00
mycroft 1e9e92665f Several changes:
* Allow bsd.man.mk to be included separately.
* Always include bsd.own.mk and bsd.obj.mk.
* Include bsd.man.mk and bsd.nls.mk even if NOMAN or NONLS; just turn off
building of the affected files instead.
* Require bsd.subdir.mk to be included explicitly.
(Will make appropriate changes to Makefiles shortly.)
1997-10-11 08:16:24 +00:00
pk 19d4236655 Put `-DPIC' back in CPICFLAGS (a.out section); at least one C source
file (sparc/include/profile.h) relies on this.
1997-06-04 08:38:45 +00:00
cjs 7a66732d34 Back out BUILDDIR and NOINSTALL changes. 1997-05-31 21:21:13 +00:00
cjs c6a0de99f8 Add NOINSTALL option for libraries that are used only during the build
of a program, and not installed into the final system.
1997-05-30 01:54:42 +00:00
veego 933397a44f Fix pr#3679 a little different.
Remove the '-nostdlib' flag for ELF systems and keep it for a.out systems.
1997-05-29 15:37:11 +00:00
veego 2fbf728651 Add '-nostdlib -L${BUILDDIR}/usr/lib' for ${LDADD} so it links a shared
library with the correct shared library.
1997-05-28 11:16:19 +00:00
mycroft d5e3cfc07a Add a missing / in SHLIB_LD*FILE. 1997-05-27 18:51:12 +00:00
cjs 058d54e069 Always look in usr/lib for crtbegin/crtend; LIBDIR is the destination
directory of the library we're currently compiling.
1997-05-27 18:21:16 +00:00
cjs 2fc3406301 Re-add other folks' changes that I accidently reverted when I did my
build system changes commit.
1997-05-27 17:45:57 +00:00
cjs 5fd7ce7066 These updates to the build allow building against include files
and libs in the object tree, if you use a separate object tree,
while maintaining backward compatability with other build methods.
See the notes in src/share/mk/bsd.README for full details. Note
that the `make includes' target now only installs the include files
in the build directory (if you use one--otherwise they go in DESTDIR
just like before); `make install' will install include files in
DESTDIR.
1997-05-26 03:55:19 +00:00
jonathan 346af6eeff More table-driven changes: split CPICFLAGS into separate flags, to
support the two different incompatible rules for build .so files from
.S source on both NetBSD and binutils toolchains:

	 ${CPP} | ${AS} for syscalls
	 ${CC}   	for non-syscalls
for which the different toolchains's ${AS}  requires diffferent flags.
1997-05-24 01:42:36 +00:00
mycroft a9b9dbd457 Do LINKS and SYMLINKS after FILES and INCS. 1997-05-17 16:43:31 +00:00
mycroft e30142d40d Remove unneeded .SUFFIXES lines, and move .s and .S closer to .o to give the
right preferences.
1997-05-17 02:01:07 +00:00
mycroft 3ae4ef8d4c Fix typo in previous. 1997-05-09 13:40:34 +00:00
mycroft 4e5d05c9cc Automatically add the .c files corresponding to .l and .y files to DPSRCS.
Automatically add DPSRCS to CLEANFILES.
1997-05-09 13:25:46 +00:00