mirror of
https://github.com/systemd/systemd.git
synced 2024-11-25 03:03:34 +08:00
build-sys: initial support ALTLinux
Hi all! I added basic support for ALTLinux. Please see patch or http://git.altlinux.org/people/shaba/packages/systemd.git?p=systemd.git;a=shortlog;h=refs/heads/altlinux Thanks.
This commit is contained in:
parent
8d7cb6e068
commit
a338bab5d0
10
configure.ac
10
configure.ac
@ -269,7 +269,7 @@ AM_CONDITIONAL(HAVE_XSLTPROC, test x"$XSLTPROC" != x)
|
||||
|
||||
AC_PATH_PROG([M4], [m4])
|
||||
|
||||
AC_ARG_WITH(distro, AS_HELP_STRING([--with-distro=DISTRO],[Specify the distribution to target: One of fedora, suse, debian, ubuntu, arch, gentoo, slackware or other]))
|
||||
AC_ARG_WITH(distro, AS_HELP_STRING([--with-distro=DISTRO],[Specify the distribution to target: One of fedora, suse, debian, ubuntu, arch, gentoo, slackware, altlinux or other]))
|
||||
if test "z$with_distro" = "z"; then
|
||||
if test "$cross_compiling" = yes; then
|
||||
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)])
|
||||
@ -281,6 +281,7 @@ if test "z$with_distro" = "z"; then
|
||||
test -f "/etc/gentoo-release" && with_distro="gentoo"
|
||||
test -f "/etc/slackware-version" && with_distro="slackware"
|
||||
test -f "/etc/frugalware-release" && with_distro="frugalware"
|
||||
test -f "/etc/altlinux-release" && with_distro="altlinux"
|
||||
if test "x`lsb_release -is 2>/dev/null`" = "xUbuntu"; then
|
||||
with_distro="ubuntu"
|
||||
fi
|
||||
@ -362,6 +363,12 @@ case $with_distro in
|
||||
AC_DEFINE(TARGET_FRUGALWARE, [], [Target is Frugalware])
|
||||
M4_DISTRO_FLAG=-DTARGET_FRUGALWARE=1
|
||||
;;
|
||||
altlinux)
|
||||
SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
|
||||
SYSTEM_SYSVRCND_PATH=/etc/rc.d
|
||||
AC_DEFINE(TARGET_ALTLINUX, [], [Target is ALTLinux])
|
||||
M4_DISTRO_FLAG=-DTARGET_ALTLINUX=1
|
||||
;;
|
||||
other)
|
||||
AS_IF([test "x$with_syslog_service" = "x"],
|
||||
[AC_MSG_ERROR([With --distro=other, you must pass --with-syslog-service= to configure])])
|
||||
@ -418,6 +425,7 @@ AM_CONDITIONAL(TARGET_ARCH, test x"$with_distro" = xarch)
|
||||
AM_CONDITIONAL(TARGET_GENTOO, test x"$with_distro" = xgentoo)
|
||||
AM_CONDITIONAL(TARGET_SLACKWARE, test x"$with_distro" = xslackware)
|
||||
AM_CONDITIONAL(TARGET_FRUGALWARE, test x"$with_distro" = xfrugalware)
|
||||
AM_CONDITIONAL(TARGET_ALTLINUX, test x"$with_distro" = xaltlinux)
|
||||
|
||||
AC_DEFINE_UNQUOTED(SPECIAL_SYSLOG_SERVICE, ["$SPECIAL_SYSLOG_SERVICE"], [Syslog service name])
|
||||
|
||||
|
@ -30,7 +30,7 @@
|
||||
#include "util.h"
|
||||
#include "log.h"
|
||||
|
||||
#if defined(TARGET_FEDORA)
|
||||
#if defined(TARGET_FEDORA) || defined(TARGET_ALTLINUX)
|
||||
#define FILENAME "/etc/sysconfig/network"
|
||||
#elif defined(TARGET_SUSE) || defined(TARGET_SLACKWARE) || defined(TARGET_FRUGALWARE)
|
||||
#define FILENAME "/etc/HOSTNAME"
|
||||
@ -87,7 +87,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)
|
||||
#if defined(TARGET_FEDORA) || defined(TARGET_ARCH) || defined(TARGET_GENTOO) || defined(TARGET_ALTLINUX)
|
||||
int r;
|
||||
FILE *f;
|
||||
|
||||
|
@ -155,6 +155,16 @@ int locale_setup(void) {
|
||||
log_warning("Failed to read /etc/rc.conf: %s", strerror(-r));
|
||||
}
|
||||
|
||||
#elif defined(TARGET_ALTLINUX)
|
||||
if (r <= 0 &&
|
||||
(r = parse_env_file("/etc/sysconfig/i18n", NEWLINE,
|
||||
"LANG", &variables[VARIABLE_LANG],
|
||||
NULL)) < 0) {
|
||||
|
||||
if (r != -ENOENT)
|
||||
log_warning("Failed to read /etc/sysconfig/i18n: %s", strerror(-r));
|
||||
}
|
||||
|
||||
#elif defined(TARGET_GENTOO)
|
||||
/* Gentoo's openrc expects locale variables in /etc/env.d/
|
||||
* These files are later compiled by env-update into shell
|
||||
|
15
src/util.c
15
src/util.c
@ -3017,6 +3017,21 @@ void status_welcome(void) {
|
||||
if (!ansi_color)
|
||||
const_color = "1;34"; /* Light Blue for Gentoo */
|
||||
|
||||
#elif defined(TARGET_ALTLINUX)
|
||||
|
||||
if (!pretty_name) {
|
||||
if ((r = read_one_line_file("/etc/altlinux-release", &pretty_name)) < 0) {
|
||||
|
||||
if (r != -ENOENT)
|
||||
log_warning("Failed to read /etc/altlinux-release: %s", strerror(-r));
|
||||
} else
|
||||
truncate_nl(pretty_name);
|
||||
}
|
||||
|
||||
if (!ansi_color)
|
||||
const_color = "0;36"; /* Cyan for ALTLinux */
|
||||
|
||||
|
||||
#elif defined(TARGET_DEBIAN)
|
||||
|
||||
if (!pretty_name) {
|
||||
|
@ -280,6 +280,24 @@ int main(int argc, char **argv) {
|
||||
if (r != -ENOENT)
|
||||
log_warning("Failed to read /etc/sysconfig/font: %s", strerror(-r));
|
||||
}
|
||||
|
||||
#elif defined(TARGET_ALTLINUX)
|
||||
if ((r = parse_env_file("/etc/sysconfig/keyboard", NEWLINE,
|
||||
"KEYTABLE", &vc_keymap,
|
||||
NULL)) < 0) {
|
||||
|
||||
if (r != -ENOENT)
|
||||
log_warning("Failed to read /etc/sysconfig/keyboard: %s", strerror(-r));
|
||||
}
|
||||
|
||||
if ((r = parse_env_file("/etc/sysconfig/consolefont", NEWLINE,
|
||||
"SYSFONT", &vc_font,
|
||||
NULL)) < 0) {
|
||||
|
||||
if (r != -ENOENT)
|
||||
log_warning("Failed to read /etc/sysconfig/console: %s", strerror(-r));
|
||||
}
|
||||
|
||||
#elif defined(TARGET_GENTOO)
|
||||
if ((r = parse_env_file("/etc/rc.conf", NEWLINE,
|
||||
"unicode", &vc_unicode,
|
||||
|
@ -20,6 +20,9 @@ Names=runlevel5.target
|
||||
m4_ifdef(`TARGET_SUSE',
|
||||
Names=runlevel5.target
|
||||
)m4_dnl
|
||||
m4_ifdef(`TARGET_ALTLINUX',
|
||||
Names=runlevel5.target
|
||||
)m4_dnl
|
||||
AllowIsolate=yes
|
||||
|
||||
[Install]
|
||||
|
@ -20,6 +20,9 @@ Names=runlevel3.target
|
||||
m4_ifdef(`TARGET_SUSE',
|
||||
Names=runlevel3.target
|
||||
)m4_dnl
|
||||
m4_ifdef(`TARGET_ALTLINUX',
|
||||
Names=runlevel3.target
|
||||
)m4_dnl
|
||||
m4_ifdef(`TARGET_DEBIAN',
|
||||
m4_ifdef(`TARGET_UBUNTU',
|
||||
m4_dnl On Debian/Ubuntu Runlevel 2, 3, 4 and 5 are multi-user
|
||||
|
Loading…
Reference in New Issue
Block a user