Commit Graph

150 Commits

Author SHA1 Message Date
cgd 3ca5f41d59 clean up substantially. Transform clean, depend, cleandir targets from ::
to :, so they can be used e.g. with <bsd.prog.mk>.  Standardize variable
names used to configure kernel libraries.

Variables used by these Makefile.inc's are:

S		must be set to the top of the 'sys' tree.
${LIB}DST	may be set to the location of the directory where library
		objects are to be built.  Defaults to ${.OBJDIR}/lib/${lib}.
${LIB}_AS	may be set to 'obj' to build a object from the library's
		object files.  (Otherwise, a library will be built.)
		Defaults to 'library'.
${LIB}MISCMAKEFLAGS
		Miscellaneous flags to be passed to the library's Makefile when
		building.  See library's Makefile for more details about
		supported flags and their default values.

(where LIB is KERN, SA, or Z, and lib is kern, sa, or z, depending on which
library's Makefile.inc is being discussed.)
1997-01-23 22:29:07 +00:00
cgd d867ed50cc add strchr() to libkern. strchr.c copied from libc's "index.c", but with
appropriate definitions so that it'll build strchr(), and so that it builds
correctly in libkern (needed to #define NULL).
1997-01-18 02:33:38 +00:00
christos 3463f39651 PR/2981: use ${VAR:Q} instead of '${VAR}' to avoid quoting problems 1996-12-26 21:32:37 +00:00
fvdl 8f3917c76e Move _MCOUNT_DECL prototype back here again (grmbl). 1996-12-07 12:58:25 +00:00
fvdl 4827ca5603 Remove _MCOUNT_DECL prototype declaration of _mcount() again; move it
to <machine/profile.h>
1996-12-05 10:18:46 +00:00
fvdl 1a260961e0 Add prototype for _mcount, to make this compile with warnings on. 1996-12-04 00:04:40 +00:00
thorpej 15dc36463a We use C flavors of the quad support functions in libkern. 1996-12-03 19:35:42 +00:00
jtc 6621382048 Sync with libc 1996-11-30 02:06:27 +00:00
pk 87e006459e sync with libc source: remove DEFS.h 1996-11-18 22:50:28 +00:00
pk fa80fdb243 Remove `chmod 444's. 1996-11-18 22:48:59 +00:00
cgd 458e5a37c9 include libkern.h, not types.h, to get prototype. (libkern.h includes types.h) 1996-11-13 19:30:39 +00:00
matthias eb8718eafb * Pull up files from lib/libc/arch/ns32/string.
* DEFS.h and setjmp.S are no longer in use.
1996-11-07 07:36:05 +00:00
cgd bba547e063 second and third args to scanc() (string and table) are not and should not
be modified.  Make them 'const'.
1996-10-24 23:50:31 +00:00
cgd 311fcee75f when casting const pointers, preserve const qualifiers. (-Wcast-qual) 1996-10-24 23:45:32 +00:00
cgd e6d0f7439f copy down changes from libc 1996-10-17 04:26:20 +00:00
cgd f929fef799 pull down from libc 1996-10-17 01:41:35 +00:00
ws 5804d3f648 PowerPC port 1996-09-30 16:34:14 +00:00
ws d67d39b37c Allow compilation of libkern as library for standalone programs 1996-09-30 15:54:35 +00:00
cgd f4888b894a label changes, pulled down from libc 1996-09-26 23:04:30 +00:00
ghudson a08c3a1feb Handle relative paths to the source directory if they begin with a '.'. 1996-09-23 05:00:45 +00:00
cgd 788923c1ab add a missing #else, pointed out by Wolfgang Solfrank 1996-09-22 16:23:31 +00:00
mycroft 79e03b2967 Pass $STRIP to the sub-make. 1996-09-09 18:03:46 +00:00
thorpej 0794023752 RCS id police. 1996-08-30 17:43:56 +00:00
cgd bdbfa48c0b Add machine-independent assertion-checking support. macros are:
assert()	which always does assertion checking
			unless "NDEBUG" is defined.

	KASSERT()	which does assertion checking if DIAGNOSTIC
			is defined.

	KDASSERT()	which does assertion checking if DEBUG is
			define.  This macro exists for compatibility
			with existing ports' assertion checking macros.
			(Assertion checking is not typically an
			"expensive" operation, and DIAGNOSTIC should be
			used for inexpensive consistency checks.)
1996-08-27 00:44:20 +00:00
cgd fb6d196140 fix up for new libkern path specs 1996-08-21 19:18:47 +00:00
jtc 030f7ba872 Added to libkern in preparation for change from b* to mem*. 1996-08-15 22:59:11 +00:00
mycroft 811315ca92 Add anchors so that only exactly `-I. is modified. 1996-08-10 04:01:29 +00:00
mycroft 9c5b0780c0 Convert the -I. to -I${.OBJDIR}, so that the `machine symlink is available. 1996-08-10 03:00:51 +00:00
mycroft 44f440543f We dont need to pass down COMPATDIR and KERNDIR. 1996-08-08 15:15:16 +00:00
mycroft 3f0b5a641e Run the child make in the source directory, so that nothing here needs to be
changed when the compile directory is outside the source tree.
1996-08-08 15:06:39 +00:00
cgd a906c164d2 frob the mask so that only the low set bit is set, to avoid lossage. 1996-07-15 05:20:19 +00:00
cgd 3f38b4d7ad add an assembly version of ffs(), copied down from libc 1996-07-15 03:13:41 +00:00
abrown de7ece6ce5 Prevent recursive invocation of mcount() while in kernel by setting profiling
state to BUSY while in mcount(). This allows profiling to work when mcount()
calls a profiled routine (for example, udiv on the SPARC).
1996-06-29 14:30:32 +00:00
cgd e1078396e5 copy down from libkern:
>use p->hashfraction when doing non-time-critical calculations, rather than
>using HASHFRACTION directly.  in time-critical calculations, if HASHFRACTION
>is a power of two, check that p->hashfraction == HASHFRACTION and if so do
>the calculation with the compiled-in value so that the compiler can optimize
>out (potentially) expensive divisions.  if p->hashfraction != HASHFRACTION,
>actually do the division.  This has the result that on machines with slow
>division, the division can be optimized out of the common case, but that
>if HASHFRACTION changes from the compiled-in value (for whatever reason),
>profiling will still work.  Changes suggested by Chris Torek.
1996-06-12 04:16:53 +00:00
cgd 352d972c94 locc() is unused. Remove it from the machine-independent kernel interface. 1996-06-10 15:33:33 +00:00
cgd efd9d2dc7f Copy from libkern:
Add some casts so that we're not bitten by type promotions on 64-bit
systems.  Not a great concern since the only 64-bit system currently
supported by NetBSD (Alpha) uses assembly versions of these routines.
1996-05-29 23:39:30 +00:00
mrg 663808dfc5 use ' not " when passing variables to a sub-make. pr#1199/pr#1296 1996-05-20 17:23:25 +00:00
mycroft 540f9550c0 Make `make depend' work for libraries. 1996-05-11 16:11:30 +00:00
scottr ba554befe5 Make sure we clean up libkern.o and libkern.po, too. Closes PRs 1951
and 2387.
1996-05-10 21:27:32 +00:00
mark d4fcd14ee3 No longer needed. The netbsd config for gcc/arm has been fixed to generate
correct profiling code.
1996-04-26 20:07:43 +00:00
mark 39b959c810 Added copyright message. 1996-04-26 20:05:28 +00:00
christos 0ca6a87952 Remove memset.c; it is not currently used, and .c files should belong in
the MI portion of libkern. When/if we move to use mem* routines in the kernel
we can add it to the MI portion/write a memset.s.
1996-04-23 23:05:22 +00:00
cgd 4a134a0780 don't include user-land headers in libkern files when compiling for
the kernel.
1996-04-18 02:19:59 +00:00
cgd 1813cc71d0 don't include user-land headers in libkern files when compiling for
the kernel.  memset.c does not belong here.  it either belongs in
the MI libkern directory, or does not belong in libkern at all.
1996-04-18 02:19:07 +00:00
cgd 55afd9912f don't get rid of the -D_KERNEL in KERNCPPFLAGS 1996-04-18 02:14:48 +00:00
cgd a5dc646be0 use assembly version of strcat (copied down from libc) 1996-04-18 01:53:04 +00:00
cgd eccf43e127 files copied from libc 1996-04-17 22:46:34 +00:00
cgd e70b1375c9 add strncasecmp.c to ports' libkern Makefile.inc's. When adding a new
source file to libkern, it should be added to _ALL_ ports makefiles if
it is machine-independent and used by machine-independent code (in
this case adosfs).  (There are several arguments that say that
strncasecmp should not be in libkern at all, and i think they're
good ones, but as long as ADOSFS needs it to link, it has to be here
for all architectures.)
1996-04-13 01:17:27 +00:00
christos fb901eb966 - Add missing prototypes
- Bring prototypes into scope
- Correct prototype for skpc
1996-03-14 18:52:03 +00:00
scottr e494b8793f Back out previous change. 1996-03-11 05:46:51 +00:00