---- systemd-37/configure.ac.orig 2011-10-11 20:46:33.000000000 +0200
-+++ systemd-37/configure.ac 2011-11-26 15:07:34.443334839 +0100
-@@ -361,6 +361,7 @@
- AC_MSG_WARN([Target distribution cannot be reliably detected when cross-compiling. You should specify it with --with-distro (see $0 --help for recognized distros)])
- else
- test -f "/etc/redhat-release" && with_distro="fedora"
-+ test -f "/etc/pld-release" && with_distro="pld"
- test -f "/etc/SuSE-release" && with_distro="suse"
- test -f "/etc/debian_version" && with_distro="debian"
- test -f "/etc/arch-release" && with_distro="arch"
-@@ -369,6 +369,12 @@ case $with_distro in
- M4_DISTRO_FLAG=-DTARGET_MANDRIVA=1
- have_plymouth=true
- ;;
-+ pld)
-+ SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
-+ SYSTEM_SYSVRCND_PATH=/etc/rc.d
-+ AC_DEFINE(TARGET_PLD, [], [Target is PLD Linux])
-+ M4_DISTRO_FLAG=-DTARGET_PLD=1
-+ ;;
- meego)
- SYSTEM_SYSVINIT_PATH=
- SYSTEM_SYSVRCND_PATH=
-@@ -503,6 +509,7 @@
- fi
-
- AM_CONDITIONAL(TARGET_FEDORA, test x"$with_distro" = xfedora)
-+AM_CONDITIONAL(TARGET_PLD, test x"$with_distro" = xpld)
- AM_CONDITIONAL(TARGET_SUSE, test x"$with_distro" = xsuse)
- AM_CONDITIONAL(TARGET_DEBIAN, test x"$with_distro" = xdebian)
- AM_CONDITIONAL(TARGET_UBUNTU, test x"$with_distro" = xubuntu)
---- systemd-37/Makefile.am.orig 2011-10-11 20:46:33.000000000 +0200
-+++ systemd-37/Makefile.am 2011-11-26 15:07:34.443334839 +0100
-@@ -115,6 +115,12 @@
+diff --git a/Makefile.am b/Makefile.am
+index 170465a..bce467d 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -115,6 +115,12 @@ AM_CPPFLAGS += \
-DKBD_SETFONT=\"/usr/bin/setfont\" \
-DDEFAULT_FONT=\"LatArCyrHeb-16\"
else
AM_CPPFLAGS += \
-DKBD_LOADKEYS=\"/bin/loadkeys\" \
-DKBD_SETFONT=\"/bin/setfont\" \
-@@ -125,6 +131,7 @@
+@@ -132,6 +138,7 @@ endif
endif
endif
endif
rootbin_PROGRAMS = \
systemd \
-@@ -1949,6 +1955,23 @@
- $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
- ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
- rm -f rc-local.service && \
+@@ -381,6 +388,14 @@
+ systemd-rc-local-generator
+ endif
+
++if TARGET_PLD
++dist_systemunit_DATA += \
++ units/pld/prefdm.service \
++ units/pld/halt-local.service
++systemgenerator_PROGRAMS += \
++ systemd-rc-local-generator
++endif
++
+ if TARGET_MANDRIVA
+ dist_systemunit_DATA += \
+ units/mandriva/prefdm.service \
+@@ -1992,6 +1999,23 @@ if TARGET_FEDORA
+ $(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
+ endif
+
++if TARGET_PLD
++ $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
++ ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
++ rm -f rc-local.service && \
+ $(LN_S) $(systemunitdir)/rc-local.service rc-local.service )
+ ( cd $(DESTDIR)$(systemunitdir)/final.target.wants && \
+ rm -f halt-local.service && \
+ $(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
+endif
+
-+if TARGET_PLD
-+ $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
-+ ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
-+ rm -f rc-local.service && \
- $(LN_S) $(systemunitdir)/rc-local.service rc-local.service )
+ if TARGET_MANDRIVA
+ $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
( cd $(DESTDIR)$(systemunitdir)/final.target.wants && \
- rm -f halt-local.service && \
-diff -ur systemd-37orig/src/fsck.c systemd-37/src/fsck.c
---- systemd-37orig/src/fsck.c 2011-09-23 17:17:15.000000000 +0200
-+++ systemd-37/src/fsck.c 2011-11-26 15:44:19.573328437 +0100
-@@ -127,7 +127,7 @@
+diff --git a/configure.ac b/configure.ac
+index 596a32a..f701bfd 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -448,6 +449,12 @@ case $with_distro in
+ M4_DEFINES=-DTARGET_MANDRIVA=1
+ have_plymouth=yes
+ ;;
++ pld)
++ SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
++ SYSTEM_SYSVRCND_PATH=/etc/rc.d
++ AC_DEFINE(TARGET_PLD, [], [Target is PLD Linux])
++ M4_DISTRO_FLAG=-DTARGET_PLD=1
++ ;;
+ meego)
+ SYSTEM_SYSVINIT_PATH=
+ SYSTEM_SYSVRCND_PATH=
+@@ -510,6 +517,7 @@ if test -n "$enable_plymouth"; then
+ fi
+
+ AM_CONDITIONAL(TARGET_FEDORA, test x"$with_distro" = xfedora)
++AM_CONDITIONAL(TARGET_PLD, test x"$with_distro" = xpld)
+ AM_CONDITIONAL(TARGET_SUSE, test x"$with_distro" = xsuse)
+ AM_CONDITIONAL(TARGET_DEBIAN, test x"$with_distro" = xdebian)
+ AM_CONDITIONAL(TARGET_UBUNTU, test x"$with_distro" = xubuntu)
+diff --git a/src/fsck/fsck.c b/src/fsck/fsck.c
+index 3477ba1..d32718d 100644
+--- a/src/fsck/fsck.c
++++ b/src/fsck/fsck.c
+@@ -127,7 +127,7 @@ static int parse_proc_cmdline(void) {
arg_skip = true;
else if (startswith(w, "fsck.mode"))
log_warning("Invalid fsck.mode= parameter. Ignoring.");
--#if defined(TARGET_FEDORA) || defined(TARGET_MANDRIVA)
-+#if defined(TARGET_FEDORA) || defined(TARGET_PLD) || defined(TARGET_MANDRIVA)
+-#if defined(TARGET_FEDORA) || defined(TARGET_MANDRIVA) || defined(TARGET_MAGEIA)
++#if defined(TARGET_FEDORA) || defined(TARGET_PLD) || defined(TARGET_MANDRIVA) || defined(TARGET_MAGEIA)
else if (strneq(w, "fastboot", l))
arg_skip = true;
else if (strneq(w, "forcefsck", l))
-diff -ur systemd-37orig/src/hostname-setup.c systemd-37/src/hostname-setup.c
---- systemd-37orig/src/hostname-setup.c 2011-11-26 13:04:04.000000000 +0100
-+++ systemd-37/src/hostname-setup.c 2011-11-26 15:48:30.890005881 +0100
+diff --git a/src/core/hostname-setup.c b/src/core/hostname-setup.c
+index 2c2f10c..754f0c7 100644
+--- a/src/core/hostname-setup.c
++++ b/src/core/hostname-setup.c
@@ -30,7 +30,7 @@
#include "util.h"
#include "log.h"
--#if defined(TARGET_FEDORA) || defined(TARGET_ALTLINUX) || defined(TARGET_MANDRIVA) || defined(TARGET_MEEGO)
-+#if defined(TARGET_FEDORA) || defined(TARGET_PLD) || defined(TARGET_ALTLINUX) || defined(TARGET_MANDRIVA) || defined(TARGET_MEEGO)
+-#if defined(TARGET_FEDORA) || defined(TARGET_ALTLINUX) || defined(TARGET_MANDRIVA) || defined(TARGET_MEEGO) || defined(TARGET_MAGEIA)
++#if defined(TARGET_FEDORA) || defined(TARGET_PLD) || defined(TARGET_ALTLINUX) || defined(TARGET_MANDRIVA) || defined(TARGET_MEEGO) || defined(TARGET_MAGEIA)
#define FILENAME "/etc/sysconfig/network"
#elif defined(TARGET_SUSE) || defined(TARGET_SLACKWARE)
#define FILENAME "/etc/HOSTNAME"
-@@ -64,7 +64,7 @@
+@@ -64,7 +64,7 @@ static int read_and_strip_hostname(const char *path, char **hn) {
static int read_distro_hostname(char **hn) {
--#if defined(TARGET_FEDORA) || defined(TARGET_ARCH) || defined(TARGET_GENTOO) || defined(TARGET_ALTLINUX) || defined(TARGET_MANDRIVA) || defined(TARGET_MEEGO)
-+#if defined(TARGET_FEDORA) || defined(TARGET_PLD) || defined(TARGET_ARCH) || defined(TARGET_GENTOO) || defined(TARGET_ALTLINUX) || defined(TARGET_MANDRIVA) || defined(TARGET_MEEGO)
+-#if defined(TARGET_FEDORA) || defined(TARGET_ARCH) || defined(TARGET_GENTOO) || defined(TARGET_ALTLINUX) || defined(TARGET_MANDRIVA) || defined(TARGET_MEEGO) || defined(TARGET_MAGEIA)
++#if defined(TARGET_FEDORA) || defined(TARGET_PLD) || defined(TARGET_ARCH) || defined(TARGET_GENTOO) || defined(TARGET_ALTLINUX) || defined(TARGET_MANDRIVA) || defined(TARGET_MEEGO) || defined(TARGET_MAGEIA)
int r;
FILE *f;
-diff -ur systemd-37orig/src/locale-setup.c systemd-37/src/locale-setup.c
---- systemd-37orig/src/locale-setup.c 2011-09-23 17:16:34.000000000 +0200
-+++ systemd-37/src/locale-setup.c 2011-11-26 15:47:40.906672674 +0100
-@@ -74,7 +74,7 @@
+diff --git a/src/core/locale-setup.c b/src/core/locale-setup.c
+index 7f692e9..0a45854 100644
+--- a/src/core/locale-setup.c
++++ b/src/core/locale-setup.c
+@@ -74,7 +74,7 @@ int locale_setup(void) {
if (detect_container(NULL) <= 0)
if ((r = parse_env_file("/proc/cmdline", WHITESPACE,
"LANG", &variables[VARIABLE_LANG],
#endif
"locale.LANG", &variables[VARIABLE_LANG],
-@@ -121,7 +121,7 @@
+@@ -121,7 +121,7 @@ int locale_setup(void) {
log_warning("Failed to read /etc/locale.conf: %s", strerror(-r));
}
if (r <= 0 &&
(r = parse_env_file("/etc/sysconfig/i18n", NEWLINE,
"LANG", &variables[VARIABLE_LANG],
-diff -ur systemd-37orig/src/systemctl.c systemd-37/src/systemctl.c
---- systemd-37orig/src/systemctl.c 2011-10-11 03:17:42.000000000 +0200
-+++ systemd-37/src/systemctl.c 2011-11-26 15:42:15.089997670 +0100
-@@ -3443,7 +3443,7 @@
+diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
+index 298cb4e..cec3974 100644
+--- a/src/systemctl/systemctl.c
++++ b/src/systemctl/systemctl.c
+@@ -3460,7 +3460,7 @@ finish:
static int enable_sysv_units(char **args) {
int r = 0;
--#if defined (HAVE_SYSV_COMPAT) && (defined(TARGET_FEDORA) || defined(TARGET_MANDRIVA) || defined(TARGET_SUSE) || defined(TARGET_MEEGO) || defined(TARGET_ALTLINUX))
-+#if defined (HAVE_SYSV_COMPAT) && (defined(TARGET_FEDORA) || defined(TARGET_PLD) || defined(TARGET_MANDRIVA) || defined(TARGET_SUSE) || defined(TARGET_MEEGO) || defined(TARGET_ALTLINUX))
+-#if defined (HAVE_SYSV_COMPAT) && (defined(TARGET_FEDORA) || defined(TARGET_MANDRIVA) || defined(TARGET_SUSE) || defined(TARGET_MEEGO) || defined(TARGET_ALTLINUX) || defined(TARGET_MAGEIA))
++#if defined (HAVE_SYSV_COMPAT) && (defined(TARGET_FEDORA) || defined(TARGET_PLD) || defined(TARGET_MANDRIVA) || defined(TARGET_SUSE) || defined(TARGET_MEEGO) || defined(TARGET_ALTLINUX) || defined(TARGET_MAGEIA))
const char *verb = args[0];
unsigned f = 1, t = 1;
LookupPaths paths;
-diff -ur systemd-37orig/src/timedated.c systemd-37/src/timedated.c
---- systemd-37orig/src/timedated.c 2011-10-11 04:22:35.000000000 +0200
-+++ systemd-37/src/timedated.c 2011-11-26 15:44:03.823326808 +0100
-@@ -174,7 +174,7 @@
+diff --git a/src/timedate/timedated.c b/src/timedate/timedated.c
+index 16f54b5..758b9df 100644
+--- a/src/timedate/timedated.c
++++ b/src/timedate/timedated.c
+@@ -174,7 +174,7 @@ static int read_data(void) {
if (r != -ENOENT)
log_warning("Failed to read /etc/timezone: %s", strerror(-r));
r = parse_env_file("/etc/sysconfig/clock", NEWLINE,
"ZONE", &zone,
NULL);
-diff -ur systemd-37orig/src/util.c systemd-37/src/util.c
---- systemd-37orig/src/util.c 2011-10-11 03:17:51.000000000 +0200
-+++ systemd-37/src/util.c 2011-11-26 15:46:57.579996731 +0100
-@@ -3599,6 +3599,19 @@
- const_color = "0;34"; /* Blue for Fedora */
- }
-
-+#elif defined(TARGET_PLD)
-+
-+ if (!pretty_name) {
-+ if ((r = read_one_line_file("/etc/pld-release", &pretty_name)) < 0) {
-+
-+ if (r != -ENOENT)
-+ log_warning("Failed to read /etc/pld-release: %s", strerror(-r));
-+ }
-+ }
-+
-+ if (!ansi_color)
-+ const_color = "0;32"; /* Green for PLD */
-+
- #elif defined(TARGET_SUSE)
-
- if (!pretty_name) {
-diff -ur systemd-37orig/src/vconsole-setup.c systemd-37/src/vconsole-setup.c
---- systemd-37orig/src/vconsole-setup.c 2011-09-28 04:34:17.000000000 +0200
-+++ systemd-37/src/vconsole-setup.c 2011-11-26 15:42:54.143324363 +0100
-@@ -230,7 +230,7 @@
+diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c
+index 9196789..1d1a916 100644
+--- a/src/vconsole/vconsole-setup.c
++++ b/src/vconsole/vconsole-setup.c
+@@ -230,7 +230,7 @@ int main(int argc, char **argv) {
}
if (r <= 0) {
-#if defined(TARGET_FEDORA) || defined(TARGET_MEEGO)
+#if defined(TARGET_FEDORA) || defined(TARGET_PLD) || defined(TARGET_MEEGO)
- if ((r = parse_env_file("/etc/sysconfig/i18n", NEWLINE,
+ r = parse_env_file("/etc/sysconfig/i18n", NEWLINE,
"SYSFONT", &vc_font,
"SYSFONTACM", &vc_font_map,
-diff -ur systemd-37orig/units/console-shell.service.m4 systemd-37/units/console-shell.service.m4
---- systemd-37orig/units/console-shell.service.m4 2011-09-21 00:48:26.000000000 +0200
-+++ systemd-37/units/console-shell.service.m4 2011-11-26 15:49:15.266671820 +0100
-@@ -11,6 +11,9 @@
+diff --git a/units/console-shell.service.m4.in b/units/console-shell.service.m4.in
+index 02adc84..a9f31fd 100644
+--- a/units/console-shell.service.m4.in
++++ b/units/console-shell.service.m4.in
+@@ -11,6 +11,9 @@ After=systemd-user-sessions.service plymouth-quit-wait.service
m4_ifdef(`TARGET_FEDORA',
After=rc-local.service
)m4_dnl
m4_ifdef(`TARGET_ARCH',
After=rc-local.service
)m4_dnl
-diff -ur systemd-37orig/units/getty@.service.m4 systemd-37/units/getty@.service.m4
---- systemd-37orig/units/getty@.service.m4 2011-08-31 14:33:29.000000000 +0200
-+++ systemd-37/units/getty@.service.m4 2011-11-26 15:49:07.480001391 +0100
-@@ -12,6 +12,9 @@
+diff --git a/units/getty@.service.m4 b/units/getty@.service.m4
+index d2a145d..cae4ae5 100644
+--- a/units/getty@.service.m4
++++ b/units/getty@.service.m4
+@@ -12,6 +12,9 @@ After=dev-%i.device systemd-user-sessions.service plymouth-quit-wait.service
m4_ifdef(`TARGET_FEDORA',
After=rc-local.service
)m4_dnl
m4_ifdef(`TARGET_ARCH',
After=rc-local.service
)m4_dnl
-diff -ur systemd-37orig/units/rescue.service.m4 systemd-37/units/rescue.service.m4
---- systemd-37orig/units/rescue.service.m4 2011-09-23 01:45:34.000000000 +0200
-+++ systemd-37/units/rescue.service.m4 2011-11-26 15:50:48.323334353 +0100
-@@ -25,10 +25,13 @@
- m4_ifdef(`TARGET_MANDRIVA',
+diff --git a/units/rescue.service.m4.in b/units/rescue.service.m4.in
+index 7dd8a22..5a9c363 100644
+--- a/units/rescue.service.m4.in
++++ b/units/rescue.service.m4.in
+@@ -22,6 +22,9 @@ ExecStartPre=-/bin/echo 'Welcome to rescue mode. Use "systemctl default" or ^D t
+ m4_ifdef(`TARGET_FEDORA',
`EnvironmentFile=/etc/sysconfig/init
ExecStart=-/bin/bash -c "exec ${SINGLE}"',
+m4_ifdef(`TARGET_PLD',
+`EnvironmentFile=/etc/sysconfig/init
+ExecStart=-/bin/bash -c "exec ${SINGLE}"',
+ m4_ifdef(`TARGET_MANDRIVA',
+ `EnvironmentFile=/etc/sysconfig/init
+ ExecStart=-/bin/bash -c "exec ${SINGLE}"',
+@@ -31,7 +34,7 @@ ExecStart=-/bin/bash -c "exec ${SINGLE}"',
m4_ifdef(`TARGET_MEEGO',
`EnvironmentFile=/etc/sysconfig/init
ExecStart=-/bin/bash -c "exec ${SINGLE}"',
--`ExecStart=-/sbin/sulogin')))
-+`ExecStart=-/sbin/sulogin'))))
- ExecStopPost=-/bin/systemctl --fail --no-block default
+-`ExecStart=-/sbin/sulogin'))))
++`ExecStart=-/sbin/sulogin')))))
+ ExecStopPost=-@SYSTEMCTL@ --fail --no-block default
StandardInput=tty-force
StandardOutput=inherit
-diff -ur systemd-37orig/units/serial-getty@.service.m4 systemd-37/units/serial-getty@.service.m4
---- systemd-37orig/units/serial-getty@.service.m4 2011-05-18 00:13:05.000000000 +0200
-+++ systemd-37/units/serial-getty@.service.m4 2011-11-26 15:48:58.076667457 +0100
-@@ -12,6 +12,9 @@
+diff --git a/units/serial-getty@.service.m4 b/units/serial-getty@.service.m4
+index e5f0ca6..69b7fc2 100644
+--- a/units/serial-getty@.service.m4
++++ b/units/serial-getty@.service.m4
+@@ -12,6 +12,9 @@ After=dev-%i.device systemd-user-sessions.service plymouth-quit-wait.service
m4_ifdef(`TARGET_FEDORA',
After=rc-local.service
)m4_dnl
m4_ifdef(`TARGET_ARCH',
After=rc-local.service
)m4_dnl
+diff --git a/src/rc-local-generator/rc-local-generator.c b/src/rc-local-generator/rc-local-generator.c
+index ac6424a..a247c25 100644
+--- a/src/rc-local-generator/rc-local-generator.c
++++ b/src/rc-local-generator/rc-local-generator.c
+@@ -27,7 +27,7 @@
+ #include "util.h"
+ #include "mkdir.h"
+
+-#if defined(TARGET_FEDORA) || defined(TARGET_MANDRIVA) || defined(TARGET_MAGEIA)
++#if defined(TARGET_FEDORA) || defined(TARGET_PLD) || defined(TARGET_MANDRIVA) || defined(TARGET_MAGEIA)
+ #define SCRIPT_PATH_START "/etc/rc.d/rc.local"
+ #elif defined(TARGET_SUSE)
+ #define SCRIPT_PATH_START "/etc/init.d/boot.local"
+--- /dev/null
++++ b/units/pld/halt-local.service
+@@ -0,0 +1,20 @@
++# This file is part of systemd.
++#
++# systemd is free software; you can redistribute it and/or modify it
++# under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2 of the License, or
++# (at your option) any later version.
++
++[Unit]
++Description=/sbin/halt.local Compatibility
++ConditionFileIsExecutable=/sbin/halt.local
++DefaultDependencies=no
++After=shutdown.target
++Before=final.target
++
++[Service]
++Type=oneshot
++ExecStart=/sbin/halt.local
++TimeoutSec=0
++StandardOutput=tty
++RemainAfterExit=yes
+--- /dev/null
++++ b/units/pld/prefdm.service
+@@ -0,0 +1,20 @@
++# This file is part of systemd.
++#
++# systemd is free software; you can redistribute it and/or modify it
++# under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2 of the License, or
++# (at your option) any later version.
++
++[Unit]
++Description=Display Manager
++After=livesys-late.service rc-local.service systemd-user-sessions.service acpid.service
++
++# Do not stop plymouth, it is done in prefdm if required
++Conflicts=plymouth-quit.service
++After=plymouth-quit.service
++
++[Service]
++ExecStart=/etc/X11/xinit/prefdm -nodaemon
++Restart=always
++RestartSec=0
++IgnoreSIGPIPE=no