SHA256
1
0
forked from pool/systemd

Accepting request 573381 from home:fbui:systemd:Factory

- Switch to Meson build system
  Some rearrangement in the file list was also needed. That was
  probably due to the upgrade of rpm.

- Import commit 0a5600eb7f8263c7c79fec0d85cc159d54aba636
  2a181fc6f insserv-generator: make it build with meson
  7b0401da4 build-sys: don't build networkctl if networkd is disabled

- Don't build-require selinux for the mini package

- Drop libgcrypt.m4
  The mini package builds fine without it so it doesn't seem necessary
  anymore.

- Import commit 846d838c37865da60eba48090e570e959291399f
  b1e0a348d fileio: include sys/mman.h
  f1fa784cb meson: update header file to detect memfd_create()
  8838ba7ec meson: define _GNU_SOURCE to detect copy_file_range() (#7734)
  531a00c84 Restore "restore /var/run and /var/lock bind mount if they aren't symlink""
  (the 3 first commits make systemd build against glibc 2.27)

- Import commit 3f421e4fbf6fcb31d74caf729435868ba8824483
  7fb9ea39a Revert "restore /var/run and /var/lock bind mount if they aren't symlink"
  23ce1207a meson.build: make docdir configurable (#8068)
- Import commit 0a5600eb7f8263c7c79fec0d85cc159d54aba636

OBS-URL: https://build.opensuse.org/request/show/573381
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=1009
This commit is contained in:
Franck Bui 2018-02-06 15:23:04 +00:00 committed by Git OBS Bridge
parent 404fe218b3
commit 4ba6d39d93
7 changed files with 291 additions and 325 deletions

View File

@ -0,0 +1,41 @@
From 1cbe23da27e68bd3c7ca2a2fe6007d9a53533de9 Mon Sep 17 00:00:00 2001
From: Franck Bui <fbui@suse.com>
Date: Fri, 2 Feb 2018 17:58:19 +0100
Subject: [PATCH 1/1] compat-rules: make path_id_compat build with meson
---
src/udev/compat/meson.build | 11 +++++++++++
src/udev/meson.build | 2 ++
2 files changed, 13 insertions(+)
create mode 100644 src/udev/compat/meson.build
diff --git a/src/udev/compat/meson.build b/src/udev/compat/meson.build
new file mode 100644
index 000000000..0d77da2e1
--- /dev/null
+++ b/src/udev/compat/meson.build
@@ -0,0 +1,11 @@
+foreach prog : ['path_id_compat.c']
+
+ executable(prog.split('.')[0],
+ prog,
+ include_directories : includes,
+ c_args : ['-DLOG_REALM=LOG_REALM_UDEV'],
+ link_with : [libudev_internal],
+ install_rpath : udev_rpath,
+ install : true,
+ install_dir : udevlibexecdir)
+endforeach
diff --git a/src/udev/meson.build b/src/udev/meson.build
index 13cd26bb8..4aa431ecc 100644
--- a/src/udev/meson.build
+++ b/src/udev/meson.build
@@ -151,3 +151,5 @@ install_data(udev_pc,
meson.add_install_script('sh', '-c',
mkdir_p.format(join_paths(sysconfdir, 'udev/rules.d')))
+
+subdir('compat')
--
2.15.1

View File

@ -1,123 +0,0 @@
dnl Autoconf macros for libgcrypt
dnl Copyright (C) 2002, 2004 Free Software Foundation, Inc.
dnl
dnl This file is free software; as a special exception the author gives
dnl unlimited permission to copy and/or distribute it, with or without
dnl modifications, as long as this notice is preserved.
dnl
dnl This file is distributed in the hope that it will be useful, but
dnl WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
dnl implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
dnl AM_PATH_LIBGCRYPT([MINIMUM-VERSION,
dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
dnl Test for libgcrypt and define LIBGCRYPT_CFLAGS and LIBGCRYPT_LIBS.
dnl MINIMUN-VERSION is a string with the version number optionalliy prefixed
dnl with the API version to also check the API compatibility. Example:
dnl a MINIMUN-VERSION of 1:1.2.5 won't pass the test unless the installed
dnl version of libgcrypt is at least 1.2.5 *and* the API number is 1. Using
dnl this features allows to prevent build against newer versions of libgcrypt
dnl with a changed API.
dnl
AC_DEFUN([AM_PATH_LIBGCRYPT],
[ AC_ARG_WITH(libgcrypt-prefix,
AC_HELP_STRING([--with-libgcrypt-prefix=PFX],
[prefix where LIBGCRYPT is installed (optional)]),
libgcrypt_config_prefix="$withval", libgcrypt_config_prefix="")
if test x$libgcrypt_config_prefix != x ; then
if test x${LIBGCRYPT_CONFIG+set} != xset ; then
LIBGCRYPT_CONFIG=$libgcrypt_config_prefix/bin/libgcrypt-config
fi
fi
AC_PATH_TOOL(LIBGCRYPT_CONFIG, libgcrypt-config, no)
tmp=ifelse([$1], ,1:1.2.0,$1)
if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then
req_libgcrypt_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'`
min_libgcrypt_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'`
else
req_libgcrypt_api=0
min_libgcrypt_version="$tmp"
fi
AC_MSG_CHECKING(for LIBGCRYPT - version >= $min_libgcrypt_version)
ok=no
if test "$LIBGCRYPT_CONFIG" != "no" ; then
req_major=`echo $min_libgcrypt_version | \
sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
req_minor=`echo $min_libgcrypt_version | \
sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'`
req_micro=`echo $min_libgcrypt_version | \
sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'`
libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version`
major=`echo $libgcrypt_config_version | \
sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
minor=`echo $libgcrypt_config_version | \
sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'`
micro=`echo $libgcrypt_config_version | \
sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'`
if test "$major" -gt "$req_major"; then
ok=yes
else
if test "$major" -eq "$req_major"; then
if test "$minor" -gt "$req_minor"; then
ok=yes
else
if test "$minor" -eq "$req_minor"; then
if test "$micro" -ge "$req_micro"; then
ok=yes
fi
fi
fi
fi
fi
fi
if test $ok = yes; then
AC_MSG_RESULT([yes ($libgcrypt_config_version)])
else
AC_MSG_RESULT(no)
fi
if test $ok = yes; then
# If we have a recent libgcrypt, we should also check that the
# API is compatible
if test "$req_libgcrypt_api" -gt 0 ; then
tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0`
if test "$tmp" -gt 0 ; then
AC_MSG_CHECKING([LIBGCRYPT API version])
if test "$req_libgcrypt_api" -eq "$tmp" ; then
AC_MSG_RESULT([okay])
else
ok=no
AC_MSG_RESULT([does not match. want=$req_libgcrypt_api got=$tmp])
fi
fi
fi
fi
if test $ok = yes; then
LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags`
LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs`
ifelse([$2], , :, [$2])
if test x"$host" != x ; then
libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none`
if test x"$libgcrypt_config_host" != xnone ; then
if test x"$libgcrypt_config_host" != x"$host" ; then
AC_MSG_WARN([[
***
*** The config script $LIBGCRYPT_CONFIG was
*** built for $libgcrypt_config_host and thus may not match the
*** used host $host.
*** You may want to use the configure option --with-libgcrypt-prefix
*** to specify a matching config script.
***]])
fi
fi
fi
else
LIBGCRYPT_CFLAGS=""
LIBGCRYPT_LIBS=""
ifelse([$3], , :, [$3])
fi
AC_SUBST(LIBGCRYPT_CFLAGS)
AC_SUBST(LIBGCRYPT_LIBS)
])

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:99fb2aa924449a90db2431507c82cb778a7563e22de08f1ac8e9e77c30c06fc3
size 3353804
oid sha256:67c4157ca16b0e7ee1d02b11463df889aac4f25f682388357da029125eb3e367
size 3353968

View File

@ -1,3 +1,52 @@
-------------------------------------------------------------------
Tue Feb 6 15:12:42 UTC 2018 - fbui@suse.com
- Switch to Meson build system
Some rearrangement in the file list was also needed. That was
probably due to the upgrade of rpm.
-------------------------------------------------------------------
Tue Feb 6 14:54:57 UTC 2018 - fbui@suse.com
- Import commit 0a5600eb7f8263c7c79fec0d85cc159d54aba636
2a181fc6f insserv-generator: make it build with meson
7b0401da4 build-sys: don't build networkctl if networkd is disabled
-------------------------------------------------------------------
Tue Feb 6 09:27:59 UTC 2018 - fbui@suse.com
- Don't build-require selinux for the mini package
-------------------------------------------------------------------
Tue Feb 6 08:56:33 UTC 2018 - fbui@suse.com
- Drop libgcrypt.m4
The mini package builds fine without it so it doesn't seem necessary
anymore.
-------------------------------------------------------------------
Mon Feb 5 20:25:31 UTC 2018 - fbui@suse.com
- Import commit 846d838c37865da60eba48090e570e959291399f
b1e0a348d fileio: include sys/mman.h
f1fa784cb meson: update header file to detect memfd_create()
8838ba7ec meson: define _GNU_SOURCE to detect copy_file_range() (#7734)
531a00c84 Restore "restore /var/run and /var/lock bind mount if they aren't symlink""
(the 3 first commits make systemd build against glibc 2.27)
-------------------------------------------------------------------
Mon Feb 5 10:01:37 UTC 2018 - fbui@suse.com
- Import commit 3f421e4fbf6fcb31d74caf729435868ba8824483
7fb9ea39a Revert "restore /var/run and /var/lock bind mount if they aren't symlink"
23ce1207a meson.build: make docdir configurable (#8068)
-------------------------------------------------------------------
Fri Feb 2 08:56:04 UTC 2018 - fbui@suse.com

View File

@ -69,6 +69,7 @@ BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0
BuildRequires: pkgconfig(liblz4)
BuildRequires: pkgconfig(liblzma)
BuildRequires: pkgconfig(libqrencode)
BuildRequires: pkgconfig(libselinux) >= 2.1.9
%endif
BuildRequires: fdupes
BuildRequires: gperf
@ -76,8 +77,8 @@ BuildRequires: intltool
BuildRequires: libacl-devel
BuildRequires: libcap-devel
BuildRequires: libmount-devel >= 2.27.1
BuildRequires: libsepol-devel
BuildRequires: libtool
BuildRequires: m4
BuildRequires: meson >= 0.43
BuildRequires: pam-devel
# regenerate_initrd_post macro is expanded during build, hence this
# BR. Also this macro was introduced since version 12.4.
@ -87,8 +88,6 @@ BuildRequires: pkgconfig(blkid) >= 2.26
BuildRequires: pkgconfig(libkmod) >= 15
BuildRequires: pkgconfig(libpci) >= 3
BuildRequires: pkgconfig(libpcre)
BuildRequires: pkgconfig(libselinux) >= 2.1.9
BuildRequires: pkgconfig(libsepol)
%if %{with importd}
BuildRequires: pkgconfig(bzip2)
BuildRequires: pkgconfig(libcurl)
@ -144,7 +143,6 @@ Source1: %{name}-rpmlintrc
Source2: systemd-user
Source3: systemd-sysv-convert
Source6: baselibs.conf
Source7: libgcrypt.m4
Source11: after-local.service
Source12: systemd-sysv-install
Source14: kbd-model-map.legacy
@ -162,8 +160,7 @@ Source1065: udev-remount-tmpfs
# broken in upstream and need an urgent fix. Even in this case, the
# patches are temporary and should be removed as soon as a fix is
# merged by upstream.
# Empty
Patch1: 0001-compat-rules-make-path_id_compat-build-with-meson.patch
%description
Systemd is a system and service manager, compatible with SysV and LSB
@ -408,64 +405,53 @@ Some systemd commands offer bash completion, but it is an optional dependency.
%prep
%setup -q -n systemd-%{version}
# %autopatch -p1
# only needed for bootstrap
%if 0%{?bootstrap}
cp %{SOURCE7} m4/
%endif
%autopatch -p1
%build
./autogen.sh
# keep split-usr until all packages have moved their systemd rules to /usr
%configure \
--docdir=%{_docdir}/systemd \
--with-pamlibdir=/%{_lib}/security \
--with-dbuspolicydir=%{_sysconfdir}/dbus-1/system.d \
--with-dbussessionservicedir=%{_datadir}/dbus-1/services \
--with-dbussystemservicedir=%{_datadir}/dbus-1/system-services \
--with-certificate-root=%{_sysconfdir}/pki/systemd \
%meson \
-Ddocdir=%{_docdir}/systemd \
-Drootprefix=/usr \
-Dsplit-usr=true \
-Dpamlibdir=/%{_lib}/security \
-Drpmmacrosdir=%{_prefix}/lib/rpm/macros.d \
-Dcertificate-root=%{_sysconfdir}/pki/systemd \
-Ddefault-hierarchy=hybrid \
-Ddefault-kill-user-processes=false \
-Drc-local=/etc/init.d/boot.local \
-Dhalt-local=/etc/init.d/halt.local \
-Ddebug-shell=/bin/bash \
-Dselinux=auto \
-Dapparmor=auto \
-Dsmack=false \
-Dima=false \
%if 0%{?bootstrap}
--disable-myhostname \
--disable-manpages \
-Dman=false \
-Dhtml=false \
-Dmyhostname=false \
%endif
--enable-selinux \
--enable-split-usr \
--disable-static \
--disable-lto \
--disable-tests \
--without-kill-user-processes \
--with-default-hierarchy=hybrid \
--with-rc-local-script-path-start=/etc/init.d/boot.local \
--with-rc-local-script-path-stop=/etc/init.d/halt.local \
--with-debug-shell=/bin/bash \
--disable-smack \
--disable-ima \
--disable-adm-group \
--disable-wheel-group \
--disable-ldconfig \
--disable-gshadow \
%if %{without networkd}
--disable-networkd \
%endif
%if %{without machined}
--disable-machined \
%endif
%if %{without sysvcompat}
--with-sysvinit-path= \
--with-sysvrcnd-path= \
-Dnetworkd=false \
%endif
%if %{without resolved}
--disable-resolved \
-Dresolve=false \
%endif
--disable-kdbus
%if %{without machined}
-Dmachined=false \
%endif
%if %{without sysvcompat}
-Dsysvinit-path= \
-Dsysvrcnd-path= \
%endif
-Dadm-group=false \
-Dwheel-group=false \
-Dgshadow=false \
-Dldconfig=false
%make_build V=e
%meson_build
%install
%make_install
find %{buildroot} -type f -name '*.la' -delete
%meson_install
# move to %{_lib}
%if ! 0%{?bootstrap}
@ -481,13 +467,12 @@ ln -sf %{_bindir}/systemd-ask-password %{buildroot}/bin/systemd-ask-password
ln -sf %{_bindir}/systemctl %{buildroot}/bin/systemctl
ln -sf %{_prefix}/lib/systemd/systemd-udevd %{buildroot}/sbin/udevd
install -m755 -D %{S:1065} %{buildroot}/%{_prefix}/lib/udev/remount-tmpfs
mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/sysv-convert
mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/migrated
install -m0755 -D %{S:3} %{buildroot}/%{_sbindir}/systemd-sysv-convert
install -m0755 -D %{S:12} %{buildroot}/%{_prefix}/lib/systemd/systemd-sysv-install
install -m0755 -D %{S:1065} %{buildroot}/%{_prefix}/lib/udev/remount-tmpfs
# Package the scripts used to fix all packaging issues. Also drop the
# "scripts-{systemd/udev}" prefix which is used because osc doesn't
@ -529,10 +514,6 @@ cat << EOF > %{buildroot}%{_libexecdir}/modules-load.d/sg.conf
sg
EOF
# Remove .so file for the shared library, it's not supposed to be
# used.
rm %{buildroot}%{_libexecdir}/systemd/libsystemd-shared.so
# do not ship sysctl defaults in systemd package, will be part of
# aaa_base (in procps for now)
rm -f %{buildroot}%{_prefix}/lib/sysctl.d/50-default.conf
@ -902,14 +883,16 @@ fi
%dir %{_prefix}/lib/systemd
%dir %{_prefix}/lib/systemd/user
%dir %{_prefix}/lib/systemd/system
%exclude %{_prefix}/lib/systemd/systemd-journal-gatewayd
%exclude %{_prefix}/lib/systemd/systemd-journal-remote
%exclude %{_prefix}/lib/systemd/systemd-journal-upload
%exclude %{_prefix}/lib/systemd/systemd-sysv*
%exclude %{_prefix}/lib/systemd/systemd-udevd
%if %{with journal_remote}
%exclude %{_prefix}/lib/systemd/system/systemd-journal-gatewayd.*
%exclude %{_prefix}/lib/systemd/system/systemd-journal-remote.*
%exclude %{_prefix}/lib/systemd/system/systemd-journal-upload.*
%exclude %{_prefix}/lib/systemd/systemd-journal-gatewayd
%exclude %{_prefix}/lib/systemd/systemd-journal-remote
%exclude %{_prefix}/lib/systemd/systemd-journal-upload
%endif
%exclude %{_prefix}/lib/systemd/systemd-sysv*
%exclude %{_prefix}/lib/systemd/systemd-udevd
%exclude %{_prefix}/lib/systemd/system/systemd-udev*.*
%exclude %{_prefix}/lib/systemd/system/*.target.wants/systemd-udev*.*
%exclude %{_prefix}/lib/systemd/system/initrd-udevadm-cleanup-db.service
@ -963,11 +946,13 @@ fi
%{_libexecdir}/modules-load.d/sg.conf
%{_libexecdir}/sysusers.d/
%exclude %{_libexecdir}/sysusers.d/systemd-remote.conf
%dir %{_sysconfdir}/tmpfiles.d
%{_libexecdir}/tmpfiles.d/
%if %{with journal_remote}
%exclude %{_libexecdir}/sysusers.d/systemd-remote.conf
%exclude %{_libexecdir}/tmpfiles.d/systemd-remote.conf
%endif
%{_libexecdir}/environment.d/
@ -981,12 +966,12 @@ fi
%dir %{_sysconfdir}/X11/xinit
%dir %{_sysconfdir}/X11/xinit/xinitrc.d
%dir %{_sysconfdir}/X11/xorg.conf.d
%dir %{_sysconfdir}/dbus-1
%dir %{_sysconfdir}/dbus-1/system.d
%dir %{_sysconfdir}/systemd
%dir %{_sysconfdir}/systemd/system
%dir %{_sysconfdir}/systemd/user
%if %{with networkd}
%dir %{_sysconfdir}/systemd/network
%endif
%dir %{_sysconfdir}/xdg/systemd
%{_sysconfdir}/xdg/systemd/user
%{_sysconfdir}/X11/xinit/xinitrc.d/50-systemd-user.sh
@ -1001,27 +986,33 @@ fi
%if %{with resolved}
%config(noreplace) %{_sysconfdir}/systemd/resolved.conf
%endif
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.locale1.conf
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.login1.conf
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.systemd1.conf
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.hostname1.conf
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.timedate1.conf
%dir %{_datadir}/dbus-1
%dir %{_datadir}/dbus-1/system.d
%dir %{_datadir}/dbus-1/services
%dir %{_datadir}/dbus-1/system-services
%{_datadir}/dbus-1/system.d/org.freedesktop.locale1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.login1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.systemd1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.hostname1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.timedate1.conf
%if %{with machined}
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.machine1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.machine1.conf
%endif
%if %{with networkd}
%{_sysconfdir}/systemd/system/dbus-org.freedesktop.network1.service
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.network1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.network1.conf
%endif
%if %{with resolved}
%{_sysconfdir}/systemd/system/dbus-org.freedesktop.resolve1.service
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.resolve1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.resolve1.conf
%endif
%if %{with importd}
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.import1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.import1.conf
%endif
# Some files created by us.
# Some files created at runtime.
%ghost %config(noreplace) %{_sysconfdir}/X11/xorg.conf.d/00-keyboard.conf
%ghost %config(noreplace) %{_sysconfdir}/vconsole.conf
%ghost %config(noreplace) %{_sysconfdir}/locale.conf
@ -1032,31 +1023,13 @@ fi
%ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel4.target
%ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel5.target
%{_prefix}/lib/systemd/system/org.freedesktop.systemd1.busname
%{_prefix}/lib/systemd/system/org.freedesktop.locale1.busname
%{_prefix}/lib/systemd/system/org.freedesktop.login1.busname
%{_prefix}/lib/systemd/system/org.freedesktop.hostname1.busname
%{_prefix}/lib/systemd/system/org.freedesktop.timedate1.busname
%if %{with networkd}
%{_prefix}/lib/systemd/system/org.freedesktop.network1.busname
%endif
%if %{with resolved}
%{_prefix}/lib/systemd/system/org.freedesktop.resolve1.busname
%endif
%if %{with machined}
%{_prefix}/lib/systemd/system/org.freedesktop.machine1.busname
%endif
%if %{with importd}
%{_prefix}/lib/systemd/system/org.freedesktop.import1.busname
%endif
%{_datadir}/systemd
%{_datadir}/factory
%exclude %{_datadir}/systemd/gatewayd
%dir %{_datadir}/dbus-1
%dir %{_datadir}/dbus-1/services
%dir %{_datadir}/dbus-1/system-services
%if %{with journal_remote}
%exclude %{_datadir}/systemd/gatewayd
%endif
%{_datadir}/dbus-1/services/org.freedesktop.systemd1.service
%{_datadir}/dbus-1/system-services/org.freedesktop.systemd1.service
%{_datadir}/dbus-1/system-services/org.freedesktop.locale1.service
@ -1206,7 +1179,9 @@ fi
%{_prefix}/lib/systemd/system/sockets.target.wants/systemd-udev*.socket
%dir %{_prefix}/lib/systemd/network
%{_prefix}/lib/systemd/network/*.link
%if %{with networkd}
%{_prefix}/lib/systemd/network/*.network
%endif
%{_datadir}/pkgconfig/udev.pc
%files -n libsystemd0%{?mini}

View File

@ -1,3 +1,52 @@
-------------------------------------------------------------------
Tue Feb 6 15:12:42 UTC 2018 - fbui@suse.com
- Switch to Meson build system
Some rearrangement in the file list was also needed. That was
probably due to the upgrade of rpm.
-------------------------------------------------------------------
Tue Feb 6 14:54:57 UTC 2018 - fbui@suse.com
- Import commit 0a5600eb7f8263c7c79fec0d85cc159d54aba636
2a181fc6f insserv-generator: make it build with meson
7b0401da4 build-sys: don't build networkctl if networkd is disabled
-------------------------------------------------------------------
Tue Feb 6 09:27:59 UTC 2018 - fbui@suse.com
- Don't build-require selinux for the mini package
-------------------------------------------------------------------
Tue Feb 6 08:56:33 UTC 2018 - fbui@suse.com
- Drop libgcrypt.m4
The mini package builds fine without it so it doesn't seem necessary
anymore.
-------------------------------------------------------------------
Mon Feb 5 20:25:31 UTC 2018 - fbui@suse.com
- Import commit 846d838c37865da60eba48090e570e959291399f
b1e0a348d fileio: include sys/mman.h
f1fa784cb meson: update header file to detect memfd_create()
8838ba7ec meson: define _GNU_SOURCE to detect copy_file_range() (#7734)
531a00c84 Restore "restore /var/run and /var/lock bind mount if they aren't symlink""
(the 3 first commits make systemd build against glibc 2.27)
-------------------------------------------------------------------
Mon Feb 5 10:01:37 UTC 2018 - fbui@suse.com
- Import commit 3f421e4fbf6fcb31d74caf729435868ba8824483
7fb9ea39a Revert "restore /var/run and /var/lock bind mount if they aren't symlink"
23ce1207a meson.build: make docdir configurable (#8068)
-------------------------------------------------------------------
Fri Feb 2 08:56:04 UTC 2018 - fbui@suse.com

View File

@ -67,6 +67,7 @@ BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0
BuildRequires: pkgconfig(liblz4)
BuildRequires: pkgconfig(liblzma)
BuildRequires: pkgconfig(libqrencode)
BuildRequires: pkgconfig(libselinux) >= 2.1.9
%endif
BuildRequires: fdupes
BuildRequires: gperf
@ -74,8 +75,8 @@ BuildRequires: intltool
BuildRequires: libacl-devel
BuildRequires: libcap-devel
BuildRequires: libmount-devel >= 2.27.1
BuildRequires: libsepol-devel
BuildRequires: libtool
BuildRequires: m4
BuildRequires: meson >= 0.43
BuildRequires: pam-devel
# regenerate_initrd_post macro is expanded during build, hence this
# BR. Also this macro was introduced since version 12.4.
@ -85,8 +86,6 @@ BuildRequires: pkgconfig(blkid) >= 2.26
BuildRequires: pkgconfig(libkmod) >= 15
BuildRequires: pkgconfig(libpci) >= 3
BuildRequires: pkgconfig(libpcre)
BuildRequires: pkgconfig(libselinux) >= 2.1.9
BuildRequires: pkgconfig(libsepol)
%if %{with importd}
BuildRequires: pkgconfig(bzip2)
BuildRequires: pkgconfig(libcurl)
@ -142,7 +141,6 @@ Source1: %{name}-rpmlintrc
Source2: systemd-user
Source3: systemd-sysv-convert
Source6: baselibs.conf
Source7: libgcrypt.m4
Source11: after-local.service
Source12: systemd-sysv-install
Source14: kbd-model-map.legacy
@ -160,8 +158,7 @@ Source1065: udev-remount-tmpfs
# broken in upstream and need an urgent fix. Even in this case, the
# patches are temporary and should be removed as soon as a fix is
# merged by upstream.
# Empty
Patch1: 0001-compat-rules-make-path_id_compat-build-with-meson.patch
%description
Systemd is a system and service manager, compatible with SysV and LSB
@ -406,64 +403,53 @@ Some systemd commands offer bash completion, but it is an optional dependency.
%prep
%setup -q -n systemd-%{version}
# %autopatch -p1
# only needed for bootstrap
%if 0%{?bootstrap}
cp %{SOURCE7} m4/
%endif
%autopatch -p1
%build
./autogen.sh
# keep split-usr until all packages have moved their systemd rules to /usr
%configure \
--docdir=%{_docdir}/systemd \
--with-pamlibdir=/%{_lib}/security \
--with-dbuspolicydir=%{_sysconfdir}/dbus-1/system.d \
--with-dbussessionservicedir=%{_datadir}/dbus-1/services \
--with-dbussystemservicedir=%{_datadir}/dbus-1/system-services \
--with-certificate-root=%{_sysconfdir}/pki/systemd \
%meson \
-Ddocdir=%{_docdir}/systemd \
-Drootprefix=/usr \
-Dsplit-usr=true \
-Dpamlibdir=/%{_lib}/security \
-Drpmmacrosdir=%{_prefix}/lib/rpm/macros.d \
-Dcertificate-root=%{_sysconfdir}/pki/systemd \
-Ddefault-hierarchy=hybrid \
-Ddefault-kill-user-processes=false \
-Drc-local=/etc/init.d/boot.local \
-Dhalt-local=/etc/init.d/halt.local \
-Ddebug-shell=/bin/bash \
-Dselinux=auto \
-Dapparmor=auto \
-Dsmack=false \
-Dima=false \
%if 0%{?bootstrap}
--disable-myhostname \
--disable-manpages \
-Dman=false \
-Dhtml=false \
-Dmyhostname=false \
%endif
--enable-selinux \
--enable-split-usr \
--disable-static \
--disable-lto \
--disable-tests \
--without-kill-user-processes \
--with-default-hierarchy=hybrid \
--with-rc-local-script-path-start=/etc/init.d/boot.local \
--with-rc-local-script-path-stop=/etc/init.d/halt.local \
--with-debug-shell=/bin/bash \
--disable-smack \
--disable-ima \
--disable-adm-group \
--disable-wheel-group \
--disable-ldconfig \
--disable-gshadow \
%if %{without networkd}
--disable-networkd \
%endif
%if %{without machined}
--disable-machined \
%endif
%if %{without sysvcompat}
--with-sysvinit-path= \
--with-sysvrcnd-path= \
-Dnetworkd=false \
%endif
%if %{without resolved}
--disable-resolved \
-Dresolve=false \
%endif
--disable-kdbus
%if %{without machined}
-Dmachined=false \
%endif
%if %{without sysvcompat}
-Dsysvinit-path= \
-Dsysvrcnd-path= \
%endif
-Dadm-group=false \
-Dwheel-group=false \
-Dgshadow=false \
-Dldconfig=false
%make_build V=e
%meson_build
%install
%make_install
find %{buildroot} -type f -name '*.la' -delete
%meson_install
# move to %{_lib}
%if ! 0%{?bootstrap}
@ -479,13 +465,12 @@ ln -sf %{_bindir}/systemd-ask-password %{buildroot}/bin/systemd-ask-password
ln -sf %{_bindir}/systemctl %{buildroot}/bin/systemctl
ln -sf %{_prefix}/lib/systemd/systemd-udevd %{buildroot}/sbin/udevd
install -m755 -D %{S:1065} %{buildroot}/%{_prefix}/lib/udev/remount-tmpfs
mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/sysv-convert
mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/migrated
install -m0755 -D %{S:3} %{buildroot}/%{_sbindir}/systemd-sysv-convert
install -m0755 -D %{S:12} %{buildroot}/%{_prefix}/lib/systemd/systemd-sysv-install
install -m0755 -D %{S:1065} %{buildroot}/%{_prefix}/lib/udev/remount-tmpfs
# Package the scripts used to fix all packaging issues. Also drop the
# "scripts-{systemd/udev}" prefix which is used because osc doesn't
@ -527,10 +512,6 @@ cat << EOF > %{buildroot}%{_libexecdir}/modules-load.d/sg.conf
sg
EOF
# Remove .so file for the shared library, it's not supposed to be
# used.
rm %{buildroot}%{_libexecdir}/systemd/libsystemd-shared.so
# do not ship sysctl defaults in systemd package, will be part of
# aaa_base (in procps for now)
rm -f %{buildroot}%{_prefix}/lib/sysctl.d/50-default.conf
@ -900,14 +881,16 @@ fi
%dir %{_prefix}/lib/systemd
%dir %{_prefix}/lib/systemd/user
%dir %{_prefix}/lib/systemd/system
%exclude %{_prefix}/lib/systemd/systemd-journal-gatewayd
%exclude %{_prefix}/lib/systemd/systemd-journal-remote
%exclude %{_prefix}/lib/systemd/systemd-journal-upload
%exclude %{_prefix}/lib/systemd/systemd-sysv*
%exclude %{_prefix}/lib/systemd/systemd-udevd
%if %{with journal_remote}
%exclude %{_prefix}/lib/systemd/system/systemd-journal-gatewayd.*
%exclude %{_prefix}/lib/systemd/system/systemd-journal-remote.*
%exclude %{_prefix}/lib/systemd/system/systemd-journal-upload.*
%exclude %{_prefix}/lib/systemd/systemd-journal-gatewayd
%exclude %{_prefix}/lib/systemd/systemd-journal-remote
%exclude %{_prefix}/lib/systemd/systemd-journal-upload
%endif
%exclude %{_prefix}/lib/systemd/systemd-sysv*
%exclude %{_prefix}/lib/systemd/systemd-udevd
%exclude %{_prefix}/lib/systemd/system/systemd-udev*.*
%exclude %{_prefix}/lib/systemd/system/*.target.wants/systemd-udev*.*
%exclude %{_prefix}/lib/systemd/system/initrd-udevadm-cleanup-db.service
@ -961,11 +944,13 @@ fi
%{_libexecdir}/modules-load.d/sg.conf
%{_libexecdir}/sysusers.d/
%exclude %{_libexecdir}/sysusers.d/systemd-remote.conf
%dir %{_sysconfdir}/tmpfiles.d
%{_libexecdir}/tmpfiles.d/
%if %{with journal_remote}
%exclude %{_libexecdir}/sysusers.d/systemd-remote.conf
%exclude %{_libexecdir}/tmpfiles.d/systemd-remote.conf
%endif
%{_libexecdir}/environment.d/
@ -979,12 +964,12 @@ fi
%dir %{_sysconfdir}/X11/xinit
%dir %{_sysconfdir}/X11/xinit/xinitrc.d
%dir %{_sysconfdir}/X11/xorg.conf.d
%dir %{_sysconfdir}/dbus-1
%dir %{_sysconfdir}/dbus-1/system.d
%dir %{_sysconfdir}/systemd
%dir %{_sysconfdir}/systemd/system
%dir %{_sysconfdir}/systemd/user
%if %{with networkd}
%dir %{_sysconfdir}/systemd/network
%endif
%dir %{_sysconfdir}/xdg/systemd
%{_sysconfdir}/xdg/systemd/user
%{_sysconfdir}/X11/xinit/xinitrc.d/50-systemd-user.sh
@ -999,27 +984,33 @@ fi
%if %{with resolved}
%config(noreplace) %{_sysconfdir}/systemd/resolved.conf
%endif
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.locale1.conf
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.login1.conf
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.systemd1.conf
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.hostname1.conf
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.timedate1.conf
%dir %{_datadir}/dbus-1
%dir %{_datadir}/dbus-1/system.d
%dir %{_datadir}/dbus-1/services
%dir %{_datadir}/dbus-1/system-services
%{_datadir}/dbus-1/system.d/org.freedesktop.locale1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.login1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.systemd1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.hostname1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.timedate1.conf
%if %{with machined}
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.machine1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.machine1.conf
%endif
%if %{with networkd}
%{_sysconfdir}/systemd/system/dbus-org.freedesktop.network1.service
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.network1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.network1.conf
%endif
%if %{with resolved}
%{_sysconfdir}/systemd/system/dbus-org.freedesktop.resolve1.service
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.resolve1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.resolve1.conf
%endif
%if %{with importd}
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.import1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.import1.conf
%endif
# Some files created by us.
# Some files created at runtime.
%ghost %config(noreplace) %{_sysconfdir}/X11/xorg.conf.d/00-keyboard.conf
%ghost %config(noreplace) %{_sysconfdir}/vconsole.conf
%ghost %config(noreplace) %{_sysconfdir}/locale.conf
@ -1030,31 +1021,13 @@ fi
%ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel4.target
%ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel5.target
%{_prefix}/lib/systemd/system/org.freedesktop.systemd1.busname
%{_prefix}/lib/systemd/system/org.freedesktop.locale1.busname
%{_prefix}/lib/systemd/system/org.freedesktop.login1.busname
%{_prefix}/lib/systemd/system/org.freedesktop.hostname1.busname
%{_prefix}/lib/systemd/system/org.freedesktop.timedate1.busname
%if %{with networkd}
%{_prefix}/lib/systemd/system/org.freedesktop.network1.busname
%endif
%if %{with resolved}
%{_prefix}/lib/systemd/system/org.freedesktop.resolve1.busname
%endif
%if %{with machined}
%{_prefix}/lib/systemd/system/org.freedesktop.machine1.busname
%endif
%if %{with importd}
%{_prefix}/lib/systemd/system/org.freedesktop.import1.busname
%endif
%{_datadir}/systemd
%{_datadir}/factory
%exclude %{_datadir}/systemd/gatewayd
%dir %{_datadir}/dbus-1
%dir %{_datadir}/dbus-1/services
%dir %{_datadir}/dbus-1/system-services
%if %{with journal_remote}
%exclude %{_datadir}/systemd/gatewayd
%endif
%{_datadir}/dbus-1/services/org.freedesktop.systemd1.service
%{_datadir}/dbus-1/system-services/org.freedesktop.systemd1.service
%{_datadir}/dbus-1/system-services/org.freedesktop.locale1.service
@ -1204,7 +1177,9 @@ fi
%{_prefix}/lib/systemd/system/sockets.target.wants/systemd-udev*.socket
%dir %{_prefix}/lib/systemd/network
%{_prefix}/lib/systemd/network/*.link
%if %{with networkd}
%{_prefix}/lib/systemd/network/*.network
%endif
%{_datadir}/pkgconfig/udev.pc
%files -n libsystemd0%{?mini}