pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
libuuid-32: compat32 package for libuuid
Module Name: pkgsrc-wip
Committed By: Naveen Narayanan <zerous@nocebo.space>
Pushed By: zerous
Date: Fri Jul 19 11:25:49 2019 +0200
Changeset: e00b4290d81bcf8c430e51bcd04d30d9ce95ff7d
Added Files:
libuuid-32/DESCR
libuuid-32/Makefile
libuuid-32/Makefile.common
libuuid-32/PLIST
libuuid-32/buildlink3.mk
libuuid-32/builtin.mk
libuuid-32/distinfo
libuuid-32/patches/patch-Makefile.in
libuuid-32/patches/patch-configure
libuuid-32/patches/patch-include_c.h
libuuid-32/patches/patch-include_ttyutils.h
libuuid-32/patches/patch-lib_ismounted.c
libuuid-32/patches/patch-lib_randutils.c
libuuid-32/patches/patch-libuuid_src_gen__uuid.c
Log Message:
libuuid-32: compat32 package for libuuid
The UUID library is used to generate unique identifiers for objects
that may be accessible beyond the local system. This library
generates UUIDs compatible with those created by the Open Software
Foundation (OSF) Distributed Computing Environment (DCE) utility
uuidgen.
The UUIDs generated by this library can be reasonably expected to be
unique within a system, and unique across all systems. They could
be used, for instance, to generate unique HTTP cookies across multiple
web servers without communication between the servers, and without fear
of a name clash.
From util-linux-ng.
This package is intended to crosscompile libuuid for i386 on amd64.
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=e00b4290d81bcf8c430e51bcd04d30d9ce95ff7d
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
libuuid-32/DESCR | 15 ++++
libuuid-32/Makefile | 17 ++++
libuuid-32/Makefile.common | 38 +++++++++
libuuid-32/PLIST | 22 ++++++
libuuid-32/buildlink3.mk | 14 ++++
libuuid-32/builtin.mk | 98 ++++++++++++++++++++++++
libuuid-32/distinfo | 13 ++++
libuuid-32/patches/patch-Makefile.in | 54 +++++++++++++
libuuid-32/patches/patch-configure | 96 +++++++++++++++++++++++
libuuid-32/patches/patch-include_c.h | 17 ++++
libuuid-32/patches/patch-include_ttyutils.h | 53 +++++++++++++
libuuid-32/patches/patch-lib_ismounted.c | 18 +++++
libuuid-32/patches/patch-lib_randutils.c | 18 +++++
libuuid-32/patches/patch-libuuid_src_gen__uuid.c | 54 +++++++++++++
14 files changed, 527 insertions(+)
diffs:
diff --git a/libuuid-32/DESCR b/libuuid-32/DESCR
new file mode 100644
index 0000000000..8a65564ba9
--- /dev/null
+++ b/libuuid-32/DESCR
@@ -0,0 +1,15 @@
+The UUID library is used to generate unique identifiers for objects
+that may be accessible beyond the local system. This library
+generates UUIDs compatible with those created by the Open Software
+Foundation (OSF) Distributed Computing Environment (DCE) utility
+uuidgen.
+
+The UUIDs generated by this library can be reasonably expected to be
+unique within a system, and unique across all systems. They could
+be used, for instance, to generate unique HTTP cookies across multiple
+web servers without communication between the servers, and without fear
+of a name clash.
+
+From util-linux-ng.
+
+This package is intended to crosscompile libuuid for i386 on amd64.
diff --git a/libuuid-32/Makefile b/libuuid-32/Makefile
new file mode 100644
index 0000000000..b2d2ea9242
--- /dev/null
+++ b/libuuid-32/Makefile
@@ -0,0 +1,17 @@
+# $NetBSD: Makefile,v 1.23 2017/12/12 20:56:09 maya Exp $
+
+.include "Makefile.common"
+
+PKGNAME= compat32_${DISTNAME:S/util-linux/libuuid/}
+CATEGORIES= devel
+COMMENT= Generate unique identifiers for objects
+LICENSE= modified-bsd
+
+CFLAGS+= -m32
+GNU_CONFIGURE_PREFIX= ${PREFIX}/emul/netbsd32/
+CONFIGURE_ARGS+= --enable-libuuid
+CONFIGURE_ARGS+= --enable-uuidgen
+
+PKGCONFIG_OVERRIDE+= libuuid/uuid.pc.in
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/libuuid-32/Makefile.common b/libuuid-32/Makefile.common
new file mode 100644
index 0000000000..386614dc32
--- /dev/null
+++ b/libuuid-32/Makefile.common
@@ -0,0 +1,38 @@
+# $NetBSD: Makefile.common,v 1.5 2018/11/04 16:51:30 bsiegert Exp $
+# used by devel/libblkid/Makefile
+# used by devel/libuuid/Makefile
+# used by x11/mcookie/Makefile
+
+DISTNAME= util-linux-2.32.1
+MASTER_SITES= https://www.kernel.org/pub/linux/utils/util-linux/v${PKGVERSION_NOREV:R}/
+EXTRACT_SUFX= .tar.xz
+EXTRACT_USING= bsdtar
+
+MAINTAINER?= pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE= https://github.com/karelzak/util-linux
+
+DISTINFO_FILE= ${.CURDIR}/../../devel/libuuid/distinfo
+PATCHDIR= ${.CURDIR}/../../devel/libuuid/patches
+
+USE_GCC_RUNTIME= yes
+USE_LIBTOOL= yes
+USE_TOOLS+= pkg-config
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS+= --disable-all-programs
+CONFIGURE_ARGS+= --disable-bash-completion
+CONFIGURE_ARGS+= --without-ncurses
+CONFIGURE_ARGS+= --without-ncursesw
+
+# netbsd libintl lacks _nl_expand_alias, resulting in NLS being
+# disabled. for consistency, disable for all
+CONFIGURE_ARGS+= --disable-nls
+
+TEST_TARGET= check
+
+.include "../../mk/bsd.fast.prefs.mk"
+
+# XXX PR pkg/52877: configure is broken on netbsd6
+.if (${OPSYS} == "NetBSD" && !empty(OS_VERSION:M[0123456].*))
+USE_TOOLS+= ksh
+CONFIG_SHELL= ksh
+.endif
diff --git a/libuuid-32/PLIST b/libuuid-32/PLIST
new file mode 100644
index 0000000000..8eae7d3227
--- /dev/null
+++ b/libuuid-32/PLIST
@@ -0,0 +1,22 @@
+@comment $NetBSD$
+emul/netbsd32/bin/uuidgen
+emul/netbsd32/include/uuid/uuid.h
+emul/netbsd32/lib/libuuid.la
+emul/netbsd32/lib/pkgconfig/uuid.pc
+emul/netbsd32/man/man1/uuidgen.1
+emul/netbsd32/man/man3/uuid.3
+emul/netbsd32/man/man3/uuid_clear.3
+emul/netbsd32/man/man3/uuid_compare.3
+emul/netbsd32/man/man3/uuid_copy.3
+emul/netbsd32/man/man3/uuid_generate.3
+emul/netbsd32/man/man3/uuid_generate_random.3
+emul/netbsd32/man/man3/uuid_generate_time.3
+emul/netbsd32/man/man3/uuid_generate_time_safe.3
+emul/netbsd32/man/man3/uuid_is_null.3
+emul/netbsd32/man/man3/uuid_parse.3
+emul/netbsd32/man/man3/uuid_time.3
+emul/netbsd32/man/man3/uuid_unparse.3
+@pkgdir emul/netbsd32/share/bash-completion/completions
+@pkgdir emul/netbsd32/sbin
+@pkgdir emul/netbsd32/man/man8
+@pkgdir emul/netbsd32/man/man5
diff --git a/libuuid-32/buildlink3.mk b/libuuid-32/buildlink3.mk
new file mode 100644
index 0000000000..ec37062566
--- /dev/null
+++ b/libuuid-32/buildlink3.mk
@@ -0,0 +1,14 @@
+# $NetBSD: buildlink3.mk,v 1.1.1.1 2011/01/08 20:40:33 markd Exp $
+
+BUILDLINK_TREE+= compat32_libuuid
+
+.if !defined(COMPAT32_LIBUUID_BUILDLINK3_MK)
+COMPAT32_LIBUUID_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.compat32_libuuid+= compat32_libuuid>=2.18
+BUILDLINK_PKGSRCDIR.compat32_libuuid?= ../../wip/libuuid-32
+BUILDLINK_LIBDIRS.compat32_libuuid= emul/netbsd32/lib
+BUILDLINK_INCDIRS.compat32_libuuid= emul/netbsd32/include/uuid
+.endif # COMPAT32_LIBUUID_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -compat32_libuuid
diff --git a/libuuid-32/builtin.mk b/libuuid-32/builtin.mk
new file mode 100644
index 0000000000..3ed7440e35
--- /dev/null
+++ b/libuuid-32/builtin.mk
@@ -0,0 +1,98 @@
+# $NetBSD: builtin.mk,v 1.10 2018/11/06 09:38:54 markd Exp $
+
+BUILTIN_PKG:= libuuid
+
+BUILTIN_FIND_FILES_VAR= UUID_PC
+BUILTIN_FIND_FILES.UUID_PC= /usr/lib/pkgconfig/uuid.pc
+BUILTIN_FIND_HEADERS_VAR= H_UUID
+BUILTIN_FIND_HEADERS.H_UUID= uuid/uuid.h
+BUILTIN_FIND_GREP.H_UUID= uuid_generate
+BUILTIN_FIND_LIBS:= uuid
+
+.include "../../mk/buildlink3/bsd.builtin.mk"
+
+##
+## Determine if there is a built-in implementation of the package and
+## set IS_BUILTIN.<pkg> appropriately ("yes" or "no").
+##
+.if !defined(IS_BUILTIN.libuuid)
+IS_BUILTIN.libuuid= no
+. if (${OPSYS} == "Darwin" || !empty(BUILTIN_LIB_FOUND.uuid:M[yY][eE][sS])) \
+ && empty(H_UUID:M__nonexistent__)
+IS_BUILTIN.libuuid= yes
+. endif
+.endif
+MAKEVARS+= IS_BUILTIN.libuuid
+
+###
+### If there is a built-in implementation, then set BUILTIN_PKG.<pkg> to
+### a package name to represent the built-in package.
+###
+.if !defined(BUILTIN_PKG.libuuid) && \
+ !empty(IS_BUILTIN.libuuid:M[yY][eE][sS])
+. if empty(UUID_PC:M__nonexistent__)
+BUILTIN_VERSION.libuuid!= ${SED} -n -e 's/Version: //p' ${UUID_PC}
+BUILTIN_PKG.libuuid= libuuid-${BUILTIN_VERSION.libuuid}
+. else
+BUILTIN_PKG.libuuid= libuuid-2.18 # whatever, as long as it is big enough
+. endif
+.endif
+
+###
+### Determine whether we should use the built-in implementation if it
+### exists, and set USE_BUILTIN.<pkg> appropriate ("yes" or "no").
+###
+.if !defined(USE_BUILTIN.libuuid)
+. if ${PREFER.libuuid} == "pkgsrc"
+USE_BUILTIN.libuuid= no
+. else
+USE_BUILTIN.libuuid= ${IS_BUILTIN.libuuid}
+. if defined(BUILTIN_PKG.libuuid) && \
+ !empty(IS_BUILTIN.libuuid:M[yY][eE][sS])
+USE_BUILTIN.libuuid= yes
+. for _dep_ in ${BUILDLINK_API_DEPENDS.libuuid}
+. if !empty(USE_BUILTIN.libuuid:M[yY][eE][sS])
+USE_BUILTIN.libuuid!= \
+ if ${PKG_ADMIN} pmatch ${_dep_:Q} ${BUILTIN_PKG.libuuid:Q}; then \
+ ${ECHO} yes; \
+ else \
+ ${ECHO} no; \
+ fi
+. endif
+. endfor
+. endif
+. endif
+.endif
+MAKEVARS+= USE_BUILTIN.libuuid
+
+###
+### The section below only applies if we are not including this file
+### solely to determine whether a built-in implementation exists.
+###
+CHECK_BUILTIN.libuuid?= no
+.if !empty(CHECK_BUILTIN.libuuid:M[nN][oO])
+. if !empty(USE_BUILTIN.libuuid:M[yY][eE][sS])
+BUILDLINK_TARGETS+= libuuid-fake-pc
+
+. if ${OPSYS} == "SunOS"
+BUILDLINK_PASSTHRU_DIRS+= /lib
+LIBUUID_LDADD= -L/lib
+. endif
+
+libuuid-fake-pc:
+ ${RUN} \
+ ${MKDIR} ${BUILDLINK_DIR}/lib/pkgconfig; \
+ src=${UUID_PC}; \
+ dst=${BUILDLINK_DIR}/lib/pkgconfig/uuid.pc; \
+ if ${TEST} -f $${src}; then \
+ ${LN} -sf $${src} $${dst}; \
+ else \
+ { ${ECHO} "Name: uuid"; \
+ ${ECHO} "Description: Universally unique id library"; \
+ ${ECHO} "Version: ${BUILTIN_VERSION.libuuid}"; \
+ ${ECHO} "Libs: -L/usr/lib -luuid ${LIBUUID_LDADD}"; \
+ ${ECHO} "Cflags: -I/usr/include"; \
+ } >$${dst} ;\
+ fi
+. endif
+.endif # CHECK_BUILTIN.libuuid
diff --git a/libuuid-32/distinfo b/libuuid-32/distinfo
new file mode 100644
index 0000000000..c0c83bdc77
--- /dev/null
+++ b/libuuid-32/distinfo
@@ -0,0 +1,13 @@
+$NetBSD: distinfo,v 1.20 2018/08/29 12:25:52 adam Exp $
+
+SHA1 (util-linux-2.32.1.tar.xz) = de9271fb93fb651d21c027e2efb0cf0ac80f2e9a
+RMD160 (util-linux-2.32.1.tar.xz) = bf61cb460eabcfdb90909dbcfd8e64bb9097ce65
+SHA512 (util-linux-2.32.1.tar.xz) = 267fedae24a874ee4dc558081f6b8d07b33b955b0635f3348f021c111c17f2e95c01b2cbf909fe13c6ca448cbcf23c658c75f72f25749aa65e99f68fabb94698
+Size (util-linux-2.32.1.tar.xz) = 4561088 bytes
+SHA1 (patch-Makefile.in) = ace0b141c2fbda821c0f14c385fed698bb5f5423
+SHA1 (patch-configure) = 400904ae2e58b717e990ba26c111b90bc8f240d1
+SHA1 (patch-include_c.h) = 4596369e4b742329be513952c66d1fa3705de017
+SHA1 (patch-include_ttyutils.h) = fa2b253d568e5aface99727c397d3c4c892b2c93
+SHA1 (patch-lib_ismounted.c) = 11f5148020dba2a22e1fbe4882fe423dfb11ad73
+SHA1 (patch-lib_randutils.c) = 422e94d9bdaf6a77894b79d67285fd8a0cb1d05a
+SHA1 (patch-libuuid_src_gen__uuid.c) = d15aa418ab497e2e3634c62633d2f3212f1b42be
diff --git a/libuuid-32/patches/patch-Makefile.in b/libuuid-32/patches/patch-Makefile.in
new file mode 100644
index 0000000000..d5c123586a
--- /dev/null
+++ b/libuuid-32/patches/patch-Makefile.in
@@ -0,0 +1,54 @@
+$NetBSD: patch-Makefile.in,v 1.3 2018/08/29 12:25:52 adam Exp $
+
+Linker script depends on non-portable constructs.
+Do not compile setproctitle; it conflicts with NetBSD and is not needed.
+Do not build common libraries.
+Do not install terminal-colors.d.5.
+
+--- Makefile.in.orig 2018-07-16 10:34:43.000000000 +0000
++++ Makefile.in
+@@ -186,7 +186,7 @@ check_PROGRAMS = test_blkdev$(EXEEXT) te
+
+ @BUILD_LIBUUID_TRUE@am__append_15 = test_uuid_parser
+ @BUILD_LIBUUID_TRUE@am__append_16 = libuuid.la
+-@BUILD_LIBUUID_TRUE@@HAVE_VSCRIPT_TRUE@am__append_17 = libuuid_la_LDFLAGS += $(VSCRIPT_LDFLAGS),$(top_srcdir)/libuuid/src/libuuid.sym
++@BUILD_LIBUUID_TRUE@@HAVE_VSCRIPT_COMPLEX_TRUE@am__append_17 = libuuid_la_LDFLAGS += $(VSCRIPT_LDFLAGS),$(top_srcdir)/libuuid/src/libuuid.sym
+ @BUILD_LIBUUID_TRUE@am__append_18 = libuuid/src/libuuid.sym \
+ @BUILD_LIBUUID_TRUE@ libuuid/COPYING
+ @BUILD_LIBUUID_TRUE@am__append_19 = install-exec-hook-libuuid
+@@ -204,7 +204,7 @@ check_PROGRAMS = test_blkdev$(EXEEXT) te
+
+ @BUILD_LIBBLKID_TRUE@@BUILD_LIBUUID_TRUE@am__append_25 = libuuid.la
+ @BUILD_LIBBLKID_TRUE@@BUILD_LIBUUID_TRUE@am__append_26 = -I$(ul_libuuid_incdir)
+-@BUILD_LIBBLKID_TRUE@@HAVE_VSCRIPT_TRUE@am__append_27 = $(VSCRIPT_LDFLAGS),$(top_srcdir)/libblkid/src/libblkid.sym
++@BUILD_LIBBLKID_TRUE@@HAVE_VSCRIPT_COMPLEX_TRUE@am__append_27 = $(VSCRIPT_LDFLAGS),$(top_srcdir)/libblkid/src/libblkid.sym
+ @BUILD_LIBBLKID_TRUE@am__append_28 = libblkid/src/libblkid.sym \
+ @BUILD_LIBBLKID_TRUE@ libblkid/COPYING
+ @BUILD_LIBBLKID_TESTS_TRUE@@BUILD_LIBBLKID_TRUE@am__append_29 = \
+@@ -1032,7 +1032,7 @@ am__libcommon_la_SOURCES_DIST = lib/blkd
+ lib/fileutils.c lib/ismounted.c lib/color-names.c lib/mangle.c \
+ lib/match.c lib/mbsalign.c lib/mbsedit.c lib/md5.c lib/pager.c \
+ lib/parse-date.y lib/path.c lib/pwdutils.c lib/randutils.c \
+- lib/setproctitle.c lib/strutils.c lib/timeutils.c \
++ lib/strutils.c lib/timeutils.c \
+ lib/ttyutils.c lib/exec_shell.c lib/strv.c lib/sha1.c \
+ lib/signames.c lib/linux_version.c lib/loopdev.c \
+ lib/plymouth-ctrl.c lib/langinfo.c lib/cpuset.c \
+@@ -1055,7 +1055,7 @@ am_libcommon_la_OBJECTS = lib/libcommon_
+ lib/libcommon_la-md5.lo lib/libcommon_la-pager.lo \
+ lib/libcommon_la-parse-date.lo lib/libcommon_la-path.lo \
+ lib/libcommon_la-pwdutils.lo lib/libcommon_la-randutils.lo \
+- lib/libcommon_la-setproctitle.lo lib/libcommon_la-strutils.lo \
++ lib/libcommon_la-strutils.lo \
+ lib/libcommon_la-timeutils.lo lib/libcommon_la-ttyutils.lo \
+ lib/libcommon_la-exec_shell.lo lib/libcommon_la-strv.lo \
+ lib/libcommon_la-sha1.lo lib/libcommon_la-signames.lo \
+@@ -3827,7 +3827,7 @@ dist_noinst_HEADERS = include/all-io.h i
+ include/timer.h include/timeutils.h include/ttyutils.h \
+ include/widechar.h include/xalloc.h
+ noinst_LTLIBRARIES = libcommon.la libtcolors.la
+-dist_man_MANS = lib/terminal-colors.d.5 $(am__append_14) \
++dist_man_MANS = $(am__append_14) \
+ $(am__append_38) $(am__append_78) $(am__append_80) \
+ $(am__append_82) $(am__append_84) $(am__append_86) \
+ $(am__append_88) $(am__append_90) $(am__append_92) \
diff --git a/libuuid-32/patches/patch-configure b/libuuid-32/patches/patch-configure
new file mode 100644
index 0000000000..d024f401eb
--- /dev/null
+++ b/libuuid-32/patches/patch-configure
@@ -0,0 +1,96 @@
+$NetBSD: patch-configure,v 1.8 2018/08/29 12:25:52 adam Exp $
+
+Add --disable-uuidgen and --disable-mcookie.
+Shell portability.
+
+--- configure.orig 2017-10-19 11:10:01.000000000 +0000
++++ configure
+@@ -1250,6 +1250,7 @@ enable_zramctl
+ enable_fsck
+ enable_partx
+ enable_uuidd
++enable_uuidgen
+ enable_mountpoint
+ enable_fallocate
+ enable_unshare
+@@ -1269,6 +1270,7 @@ enable_lslogins
+ enable_wdctl
+ enable_cal
+ enable_logger
++enable_mcookie
+ enable_switch_root
+ enable_pivot_root
+ enable_lsmem
+@@ -2024,6 +2026,7 @@ Optional Features:
+ --disable-fsck do not build fsck
+ --disable-partx do not build addpart, delpart, partx
+ --disable-uuidd do not build the uuid daemon
++ --disable-uuidgen do not build uuidgen
+ --disable-mountpoint do not build mountpoint
+ --disable-fallocate do not build fallocate
+ --disable-unshare do not build unshare
+@@ -2043,6 +2046,7 @@ Optional Features:
+ --disable-wdctl do not build wdctl
+ --disable-cal do not build cal
+ --disable-logger do not build logger
++ --disable-mcookie do not build mcookie
+ --disable-switch_root do not build switch_root
+ --disable-pivot_root do not build pivot_root
+ --disable-lsmem do not build lsmem
+@@ -23311,17 +23315,22 @@ fi
+
+
+
++# Check whether --enable-uuidgen was given.
++if test "${enable_uuidgen+set}" = set; then :
++ enableval=$enable_uuidgen;
++else
+
+ if test "x$ul_default_estate" != x; then
+ enable_uuidgen=$ul_default_estate
+- build_uuidgen=yes
+- if test "x$ul_default_estate" = xno; then
+- build_uuidgen=no
++ else
++ enable_uuidgen=check
+ fi
+-else
++fi
+
++if test "x$enable_uuidgen" = xno; then
++ build_uuidgen=no
++else
+ build_uuidgen=yes
+- enable_uuidgen=check
+ fi
+
+
+@@ -25956,17 +25965,23 @@ fi
+
+
+
++# Check whether --enable-mcookie was given.
++if test "${enable_mcookie+set}" = set; then :
++ enableval=$enable_mcookie;
++else
+
+ if test "x$ul_default_estate" != x; then
+ enable_mcookie=$ul_default_estate
+- build_mcookie=yes
+- if test "x$ul_default_estate" = xno; then
+- build_mcookie=no
++ else
++ enable_mcookie=check
+ fi
+-else
+
++fi
++
++if test "x$enable_mcookie" = xno; then
++ build_mcookie=no
++else
+ build_mcookie=yes
+- enable_mcookie=yes
+ fi
+
+ if test "x$build_mcookie" = xyes; then
diff --git a/libuuid-32/patches/patch-include_c.h b/libuuid-32/patches/patch-include_c.h
new file mode 100644
index 0000000000..18dc082fb2
--- /dev/null
+++ b/libuuid-32/patches/patch-include_c.h
@@ -0,0 +1,17 @@
+$NetBSD: patch-include_c.h,v 1.1 2018/01/02 10:24:06 jperkin Exp $
+
+Add NAME_MAX compat.
+
+--- include/c.h.orig 2017-09-27 09:05:13.694361539 +0000
++++ include/c.h
+@@ -29,6 +29,10 @@
+ # define LOGIN_NAME_MAX 256
+ #endif
+
++#ifndef NAME_MAX
++# define NAME_MAX PATH_MAX
++#endif
++
+ /*
+ * Compiler-specific stuff
+ */
diff --git a/libuuid-32/patches/patch-include_ttyutils.h b/libuuid-32/patches/patch-include_ttyutils.h
new file mode 100644
index 0000000000..e78c946c83
--- /dev/null
+++ b/libuuid-32/patches/patch-include_ttyutils.h
@@ -0,0 +1,53 @@
+$NetBSD: patch-include_ttyutils.h,v 1.1 2017/12/08 08:03:35 adam Exp $
+
+Define values if missing.
+
+--- include/ttyutils.h.orig 2016-11-02 12:57:31.535167960 +0000
++++ include/ttyutils.h
+@@ -60,6 +60,18 @@ extern int get_terminal_name(const char
+ static inline void reset_virtual_console(struct termios *tp, int flags)
+ {
+ /* Use defaults of <sys/ttydefaults.h> for base settings */
++#ifndef TTYDEF_IFLAG
++#define TTYDEF_IFLAG (BRKINT | ICRNL | IMAXBEL | IXON | IXANY)
++#endif
++#ifndef TTYDEF_OFLAG
++#define TTYDEF_OFLAG (OPOST | ONLCR /*| OXTABS*/)
++#endif
++#ifndef TTYDEF_LFLAG
++#define TTYDEF_LFLAG (ECHO | ICANON | ISIG | IEXTEN | ECHOE|ECHOKE|ECHOCTL)
++#endif
++#ifndef TTYDEF_CFLAG
++#define TTYDEF_CFLAG (CREAD | CS8 | HUPCL)
++#endif
+ tp->c_iflag |= TTYDEF_IFLAG;
+ tp->c_oflag |= TTYDEF_OFLAG;
+ tp->c_lflag |= TTYDEF_LFLAG;
+@@ -114,6 +126,13 @@ static inline void reset_virtual_console
+ # define FFDLY 0
+ #endif
+
++#ifndef TAB0
++#define TAB0 0
++#endif
++#ifndef TABDLY
++#define TABDLY 0
++#endif
++
+ tp->c_iflag |= (BRKINT | ICRNL | IMAXBEL);
+ tp->c_iflag &= ~(IGNBRK | INLCR | IGNCR | IXOFF | IUCLC | IXANY | ISTRIP);
+ tp->c_oflag |= (OPOST | ONLCR | NL0 | CR0 | TAB0 | BS0 | VT0 | FF0);
+@@ -158,7 +177,13 @@ static inline void reset_virtual_console
+ tp->c_cc[VSTOP] = CSTOP;
+ tp->c_cc[VSUSP] = CSUSP;
+ tp->c_cc[VEOL] = _POSIX_VDISABLE;
++#ifndef CREPRINT
++#define CREPRINT ('r' & 037)
++#endif
+ tp->c_cc[VREPRINT] = CREPRINT;
++#ifndef CDISCARD
++#define CDISCARD ('o' & 037)
++#endif
+ tp->c_cc[VDISCARD] = CDISCARD;
+ tp->c_cc[VWERASE] = CWERASE;
+ tp->c_cc[VLNEXT] = CLNEXT;
diff --git a/libuuid-32/patches/patch-lib_ismounted.c b/libuuid-32/patches/patch-lib_ismounted.c
new file mode 100644
index 0000000000..42e4dbc861
--- /dev/null
+++ b/libuuid-32/patches/patch-lib_ismounted.c
@@ -0,0 +1,18 @@
+$NetBSD: patch-lib_ismounted.c,v 1.1 2017/12/08 08:03:35 adam Exp $
+
+Fix build on NetBSD.
+
+--- lib/ismounted.c.orig 2016-11-02 12:57:31.000000000 +0000
++++ lib/ismounted.c
+@@ -214,7 +214,11 @@ static int check_mntent(const char *file
+ static int check_getmntinfo(const char *file, int *mount_flags,
+ char *mtpt, int mtlen)
+ {
++#ifdef __NetBSD__
++ struct statvfs *mp;
++#else
+ struct statfs *mp;
++#endif
+ int len, n;
+ const char *s1;
+ char *s2;
diff --git a/libuuid-32/patches/patch-lib_randutils.c b/libuuid-32/patches/patch-lib_randutils.c
new file mode 100644
index 0000000000..929f530ce0
--- /dev/null
+++ b/libuuid-32/patches/patch-lib_randutils.c
@@ -0,0 +1,18 @@
+$NetBSD: patch-lib_randutils.c,v 1.5 2017/12/08 08:03:35 adam Exp $
+
+O_CLOEXEC is not available on every platform (e.g. MacOS X < 10.7). It
+was introduced in POSIX 2008.
+
+--- lib/randutils.c.orig 2017-10-02 09:30:08.000000000 +0000
++++ lib/randutils.c
+@@ -72,6 +72,10 @@ static void crank_random(void)
+ rand();
+ }
+
++#if !defined(O_CLOEXEC)
++#define O_CLOEXEC 0
++#endif
++
+ int random_get_fd(void)
+ {
+ int i, fd;
diff --git a/libuuid-32/patches/patch-libuuid_src_gen__uuid.c b/libuuid-32/patches/patch-libuuid_src_gen__uuid.c
new file mode 100644
index 0000000000..528bbea023
--- /dev/null
+++ b/libuuid-32/patches/patch-libuuid_src_gen__uuid.c
@@ -0,0 +1,54 @@
+$NetBSD: patch-libuuid_src_gen__uuid.c,v 1.1 2017/12/08 08:03:35 adam Exp $
+
+fcntl is portable, flock is not.
+Solaris does not have ifr.ifr_hwaddr.
+
+--- libuuid/src/gen_uuid.c.orig 2017-09-27 09:05:13.000000000 +0000
++++ libuuid/src/gen_uuid.c
+@@ -172,7 +172,7 @@ static int get_node_id(unsigned char *no
+ for (i = 0; i < n; i+= ifreq_size(*ifrp) ) {
+ ifrp = (struct ifreq *)((char *) ifc.ifc_buf+i);
+ strncpy(ifr.ifr_name, ifrp->ifr_name, IFNAMSIZ);
+-#ifdef SIOCGIFHWADDR
++#if defined(SIOCGIFHWADDR) && !defined(__sun)
+ if (ioctl(sd, SIOCGIFHWADDR, &ifr) < 0)
+ continue;
+ a = (unsigned char *) &ifr.ifr_hwaddr.sa_data;
+@@ -227,12 +227,17 @@ static int get_clock(uint32_t *clock_hig
+ THREAD_LOCAL int state_fd = -2;
+ THREAD_LOCAL FILE *state_f;
+ THREAD_LOCAL uint16_t clock_seq;
++ struct flock lock;
+ struct timeval tv;
+ uint64_t clock_reg;
+ mode_t save_umask;
+ int len;
+ int ret = 0;
+
++ lock.l_whence = SEEK_SET;
++ lock.l_start = 0;
++ lock.l_len = 0;
++
+ if (state_fd == -1)
+ ret = -1;
+
+@@ -253,7 +258,8 @@ static int get_clock(uint32_t *clock_hig
+ }
+ if (state_fd >= 0) {
+ rewind(state_f);
+- while (flock(state_fd, LOCK_EX) < 0) {
++ lock.l_type = F_WRLCK;
++ while (fcntl(state_fd, F_SETLKW, &lock) < 0) {
+ if ((errno == EAGAIN) || (errno == EINTR))
+ continue;
+ fclose(state_f);
+@@ -325,7 +331,8 @@ try_again:
+ fflush(state_f);
+ }
+ rewind(state_f);
+- flock(state_fd, LOCK_UN);
++ lock.l_type = F_UNLCK;
++ fcntl(state_fd, F_SETLK, &lock);
+ }
+
+ *clock_high = clock_reg >> 32;
Home |
Main Index |
Thread Index |
Old Index