Alpha needs strchr.c
authormillert <millert@openbsd.org>
Sun, 4 May 1997 23:33:35 +0000 (23:33 +0000)
committermillert <millert@openbsd.org>
Sun, 4 May 1997 23:33:35 +0000 (23:33 +0000)
Fix up clean and depend targets in Makefile.inc so we can
include Makefile.inc in cases where there is already a
clean/depend target (based on a NetBSD Makefile.inc).

sys/lib/libkern/Makefile.inc
sys/lib/libkern/arch/alpha/Makefile.inc
sys/lib/libkern/libkern.h
sys/lib/libkern/strchr.c [new file with mode: 0644]

index 840bc30..b9a2903 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: Makefile.inc,v 1.5 1996/10/31 00:43:09 niklas Exp $
+#      $OpenBSD: Makefile.inc,v 1.6 1997/05/04 23:33:35 millert Exp $
 #      $NetBSD: Makefile.inc,v 1.22 1996/09/30 15:54:35 ws Exp $
 #
 #      NOTE: $S must correspond to the top of the 'sys' tree
@@ -40,11 +40,13 @@ ${KERNLIB_PROF}:    .NOTMAIN __always_make_kernlib
        @${KERNMAKE} libkern.po
 .endif
 
-clean::                .NOTMAIN __always_make_kernlib
+clean:                 .NOTMAIN cleankernlib
+cleankernlib:          .NOTMAIN __always_make_kernlib
        @echo cleaning the kern library objects
        @${KERNMAKE} clean
 
-depend::               .NOTMAIN __always_make_kernlib
+depend:                .NOTMAIN dependkernlib
+dependkernlib:                 .NOTMAIN __always_make_kernlib
        @echo depending the kern library objects
        @${KERNMAKE} depend
 
index a8db36a..ae62cf3 100644 (file)
@@ -1,10 +1,10 @@
-#      $OpenBSD: Makefile.inc,v 1.5 1996/10/31 00:43:12 niklas Exp $
+#      $OpenBSD: Makefile.inc,v 1.6 1997/05/04 23:33:41 millert Exp $
 #      $NetBSD: Makefile.inc,v 1.9 1996/08/27 00:44:24 cgd Exp $
 
 SRCS+= __main.c imax.c imin.c lmax.c lmin.c max.c min.c ulmax.c ulmin.c \
        bcmp.c bzero.S ffs.S strcat.c strcmp.c strcpy.c strlen.c strncmp.c \
        strncpy.c scanc.c skpc.c htonl.S htons.S ntohl.S ntohs.S \
-       random.c strncasecmp.c
+       random.c strncasecmp.c strchr.c
 
 # `source' files built from m4 source
 SRCS+= __divqu.S __divq.S __divlu.S __divl.S
index e43f0e4..6e948cf 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: libkern.h,v 1.9 1997/03/30 22:05:10 mickey Exp $      */
+/*     $OpenBSD: libkern.h,v 1.10 1997/05/04 23:33:38 millert Exp $    */
 /*     $NetBSD: libkern.h,v 1.7 1996/03/14 18:52:08 christos Exp $     */
 
 /*-
@@ -121,13 +121,13 @@ int        ffs __P((int));
 int     locc __P((int, char *, u_int));
 u_long  random __P((void));
 void    srandom __P((u_long));
-char   *rindex __P((const char *, int));
 int     scanc __P((u_int, const u_char *, const u_char *, int));
 int     skpc __P((int, size_t, u_char *));
 size_t  strlen __P((const char *));
 char   *strcat __P((char *, const char *));
 char   *strcpy __P((char *, const char *));
 char   *strncpy __P((char *, const char *, size_t));
+char   *strchr __P((const char *, int));
 int     strcmp __P((const char *, const char *));
 int     strncmp __P((const char *, const char *, size_t));
 int     strncasecmp __P((const char *, const char *, size_t));
diff --git a/sys/lib/libkern/strchr.c b/sys/lib/libkern/strchr.c
new file mode 100644 (file)
index 0000000..a32db3e
--- /dev/null
@@ -0,0 +1,57 @@
+/*     $OpenBSD: strchr.c,v 1.1 1997/05/04 23:33:39 millert Exp $      */
+
+/*-
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *     This product includes software developed by the University of
+ *     California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#if defined(LIBC_SCCS) && !defined(lint)
+static char *rcsid = "$OpenBSD: strchr.c,v 1.1 1997/05/04 23:33:39 millert Exp $";
+#endif /* LIBC_SCCS and not lint */
+
+#ifndef _KERNEL
+#include <string.h>
+#else
+#include <lib/libkern/libkern.h>
+#endif
+
+char *
+strchr(p, ch)
+       register const char *p, ch;
+{
+       for (;; ++p) {
+               if (*p == ch)
+                       return((char *)p);
+               if (!*p)
+                       return((char *)NULL);
+       }
+       /* NOTREACHED */
+}