git: c5e0b035d9eb - stable/14 - libutil: move ftime to libutil

From: Mariusz Zaborski <oshogbo_at_FreeBSD.org>
Date: Fri, 28 Jun 2024 10:17:15 UTC
The branch stable/14 has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=c5e0b035d9eb14e73fc17899cd007a31e0d1edc8

commit c5e0b035d9eb14e73fc17899cd007a31e0d1edc8
Author:     Mariusz Zaborski <oshogbo@FreeBSD.org>
AuthorDate: 2024-05-29 12:32:16 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-06-28 10:17:52 +0000

    libutil: move ftime to libutil
    
    It seems that there are still some applications that use ftime(3)
    (for example, science/siconos and sysutils/lcdproc). The issue
    is that we don't build libcompat as a shared library anymore.
    The easiest solution is to move it to libutil, until we
    deprecate it for good.
    
    This solution was proposed by kib@ in
    https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=257789.
    
    PR:             257789
    MFC after:      1 month
    Reviewed by:    kib (ages ago)
    Differential Revision:  https://reviews.freebsd.org/D39994
    
    (cherry picked from commit bb421be6c1174fad837973acc5e4a7bade4489db)
---
 lib/libcompat/Makefile                 | 7 +------
 lib/libutil/Makefile                   | 6 +++---
 lib/{libcompat/4.1 => libutil}/ftime.3 | 4 ++--
 lib/{libcompat/4.1 => libutil}/ftime.c | 2 ++
 sys/sys/timeb.h                        | 2 +-
 5 files changed, 9 insertions(+), 12 deletions(-)

diff --git a/lib/libcompat/Makefile b/lib/libcompat/Makefile
index 7c99556e7513..e30e120c3d41 100644
--- a/lib/libcompat/Makefile
+++ b/lib/libcompat/Makefile
@@ -7,12 +7,7 @@ NO_PIC=
 
 WARNS?=	0
 
-.PATH:	${.CURDIR}/4.1 ${.CURDIR}/4.3 ${.CURDIR}/4.4
-
-# compat 4.1 sources
-SRCS+=	ftime.c
-
-MAN+=	4.1/ftime.3
+.PATH:	${.CURDIR}/4.3 ${.CURDIR}/4.4
 
 # compat 4.3 sources
 SRCS+=	re_comp.c rexec.c
diff --git a/lib/libutil/Makefile b/lib/libutil/Makefile
index 889a81747c82..5bce5c158958 100644
--- a/lib/libutil/Makefile
+++ b/lib/libutil/Makefile
@@ -12,7 +12,7 @@ LIB=	util
 SHLIB_MAJOR= 9
 
 SRCS=	_secure_path.c auth.c cpuset.c expand_number.c flopen.c fparseln.c \
-	getlocalbase.c  gr_util.c \
+	ftime.c getlocalbase.c gr_util.c \
 	hexdump.c humanize_number.c kinfo_getfile.c \
 	kinfo_getallproc.c kinfo_getproc.c kinfo_getvmmap.c \
 	kinfo_getvmobject.c kld.c \
@@ -30,8 +30,8 @@ CFLAGS+= -DINET6
 
 CFLAGS+= -I${.CURDIR} -I${SRCTOP}/lib/libc/gen/
 
-MAN+=	cpuset.3 expand_number.3 flopen.3 fparseln.3 getlocalbase.3 hexdump.3 \
-	humanize_number.3 kinfo_getallproc.3 kinfo_getfile.3 \
+MAN+=	cpuset.3 expand_number.3 flopen.3 fparseln.3 ftime.3 getlocalbase.3 \
+	hexdump.3 humanize_number.3 kinfo_getallproc.3 kinfo_getfile.3 \
 	kinfo_getproc.3 kinfo_getvmmap.3 kinfo_getvmobject.3 kld.3 \
 	login_auth.3 login_cap.3 \
 	login_class.3 login_ok.3 login_times.3 login_tty.3 pidfile.3 \
diff --git a/lib/libcompat/4.1/ftime.3 b/lib/libutil/ftime.3
similarity index 98%
rename from lib/libcompat/4.1/ftime.3
rename to lib/libutil/ftime.3
index 48eb465aed31..dbed25317115 100644
--- a/lib/libcompat/4.1/ftime.3
+++ b/lib/libutil/ftime.3
@@ -27,14 +27,14 @@
 .\"
 .\"     @(#)ftime.3	8.1 (Berkeley) 6/4/93
 .\"
-.Dd August 4, 2018
+.Dd May 28, 2024
 .Dt FTIME 3
 .Os
 .Sh NAME
 .Nm ftime
 .Nd get date and time
 .Sh LIBRARY
-.Lb libcompat
+.Lb libuitl
 .Sh SYNOPSIS
 .In sys/types.h
 .In sys/timeb.h
diff --git a/lib/libcompat/4.1/ftime.c b/lib/libutil/ftime.c
similarity index 99%
rename from lib/libcompat/4.1/ftime.c
rename to lib/libutil/ftime.c
index 5ea57bca40fd..b31fca907883 100644
--- a/lib/libcompat/4.1/ftime.c
+++ b/lib/libutil/ftime.c
@@ -33,6 +33,8 @@
 #include <sys/cdefs.h>
 #include <sys/types.h>
 #include <sys/time.h>
+
+#define _IN_LIBUITL
 #include <sys/timeb.h>
 
 int
diff --git a/sys/sys/timeb.h b/sys/sys/timeb.h
index 952a5e83b8a7..853541e27ae6 100644
--- a/sys/sys/timeb.h
+++ b/sys/sys/timeb.h
@@ -39,7 +39,7 @@
 #ifndef _SYS_TIMEB_H_
 #define _SYS_TIMEB_H_
 
-#ifdef __GNUC__
+#if defined(__GNUC__) && !defined(_IN_LIBUITL)
 #warning "this file includes <sys/timeb.h> which is deprecated"
 #endif