]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
build-sys: Angstrom support
authorKoen Kooi <koen@dominion.thruhere.net>
Fri, 6 May 2011 07:19:08 +0000 (09:19 +0200)
committerLennart Poettering <lennart@poettering.net>
Mon, 9 May 2011 21:50:23 +0000 (23:50 +0200)
This commit consists of the initial work to include Angstrom as a ported
distribution for systemd.

Angstrom tries to follow the debian way as much as possible, but deviates
where it doesn't make sense for 'embedded'.

Makefile.am
configure.ac
src/locale-setup.c
src/service.c

index 873090e428526d0fdb3ca2ce59e77a54d6d31b52..482d53e7eb0706860b5f7dac7f114dab6fe9d49f 100644 (file)
@@ -96,6 +96,12 @@ AM_CPPFLAGS += \
        -DKBD_SETFONT=\"/bin/setfont\" \
        -DDEFAULT_FONT=\"LatArCyrHeb-16\"
 else
+if TARGET_ANGSTROM
+AM_CPPFLAGS += \
+       -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
+       -DKBD_SETFONT=\"/usr/bin/setfont\" \
+       -DDEFAULT_FONT=\"LatArCyrHeb-16\"
+else
 AM_CPPFLAGS += \
        -DKBD_LOADKEYS=\"/bin/loadkeys\" \
        -DKBD_SETFONT=\"/bin/setfont\" \
@@ -105,6 +111,7 @@ endif
 endif
 endif
 endif
+endif
 
 rootbin_PROGRAMS = \
        systemd \
index 4a56101118cf6b88c8199501d64f9c2b5c70622a..7cdc0cedf13b2ed0fec699836bd51abdf6efed31 100644 (file)
@@ -295,6 +295,7 @@ if test "z$with_distro" = "z"; then
                 test -f "/etc/altlinux-release" && with_distro="altlinux"
                 test -f "/etc/mandriva-release" && with_distro="mandriva"
                 test -f "/etc/meego-release" && with_distro="meego"
+                test -f "/etc/angstrom-version" && with_distro="angstrom"
                 if test "x`lsb_release -is 2>/dev/null`" = "xUbuntu"; then
                         with_distro="ubuntu"
                 fi
@@ -376,6 +377,11 @@ case $with_distro in
                 AC_DEFINE(TARGET_MEEGO, [], [Target is MeeGo])
                 M4_DISTRO_FLAG=-DTARGET_MEEGO=1
                ;;
+        angstrom)
+                SYSTEM_SYSVRCND_PATH=/etc
+                AC_DEFINE(TARGET_ANGSTROM, [], [Target is Ångström])
+                M4_DISTRO_FLAG=-DTARGET_ANGSTROM=1
+                ;;
         other)
                 ;;
         *)
@@ -426,6 +432,7 @@ AM_CONDITIONAL(TARGET_FRUGALWARE, test x"$with_distro" = xfrugalware)
 AM_CONDITIONAL(TARGET_ALTLINUX, test x"$with_distro" = xaltlinux)
 AM_CONDITIONAL(TARGET_MANDRIVA, test x"$with_distro" = xmandriva)
 AM_CONDITIONAL(TARGET_MEEGO, test x"$with_distro" = xmeego)
+AM_CONDITIONAL(TARGET_ANGSTROM, test x"$with_distro" = xangstrom)
 
 AM_CONDITIONAL(HAVE_PLYMOUTH, test -n "$have_plymouth")
 AM_CONDITIONAL(HAVE_SYSV_COMPAT, test "$SYSTEM_SYSV_COMPAT" = "yes")
index d9adfa33f491c4b8e8d5798de40f805e9dde75c8..33111da2187804d25215b3b85370d295fc2c0049 100644 (file)
@@ -136,7 +136,7 @@ int locale_setup(void) {
                         log_warning("Failed to read /etc/sysconfig/language: %s", strerror(-r));
         }
 
-#elif defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU)
+#elif defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) || defined(TARGET_ANGSTROM)
         if (r <= 0 &&
             (r = parse_env_file("/etc/default/locale", NEWLINE,
                                 "LANG",              &variables[VARIABLE_LANG],
index e7a5622f9c885df472715a889bac4b65a300aa84..f8267541525c486e179397a9c44bf6dc58cb3b69 100644 (file)
@@ -65,7 +65,7 @@ static const struct {
         { "boot.d", SPECIAL_SYSINIT_TARGET,   RUNLEVEL_SYSINIT },
 #endif
 
-#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) || defined(TARGET_FRUGALWARE)
+#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) || defined(TARGET_FRUGALWARE) || defined(TARGET_ANGSTROM)
         /* Debian style rcS.d */
         { "rcS.d",  SPECIAL_SYSINIT_TARGET,   RUNLEVEL_SYSINIT },
 #endif
@@ -246,7 +246,7 @@ static char *sysv_translate_name(const char *name) {
         if (!(r = new(char, strlen(name) + sizeof(".service"))))
                 return NULL;
 
-#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU)
+#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) || defined(TARGET_ANGSTROM)
         if (endswith(name, ".sh"))
                 /* Drop Debian-style .sh suffix */
                 strcpy(stpcpy(r, name) - 3, ".service");
@@ -297,7 +297,7 @@ static int sysv_translate_facility(const char *name, const char *filename, char
                 "x-display-manager",    SPECIAL_DISPLAY_MANAGER_SERVICE,
                 "null",                 NULL,
 
-#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU)
+#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) || defined(TARGET_ANGSTROM)
                 "mail-transport-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET,
 #endif
 
@@ -887,7 +887,7 @@ static int service_load_sysv_name(Service *s, const char *name) {
 
         /* For SysV services we strip the boot.*, rc.* and *.sh
          * prefixes/suffixes. */
-#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU)
+#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) || defined(TARGET_ANGSTROM)
         if (endswith(name, ".sh.service"))
                 return -ENOENT;
 #endif
@@ -914,7 +914,7 @@ static int service_load_sysv_name(Service *s, const char *name) {
 
                 r = service_load_sysv_path(s, path);
 
-#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU)
+#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) || defined(TARGET_ANGSTROM)
                 if (r >= 0 && s->meta.load_state == UNIT_STUB) {
                         /* Try Debian style *.sh source'able init scripts */
                         strcat(path, ".sh");