ui/ncurses: Keep track of the default boot option
[petitboot] / configure.ac
index d02c85f3c9c87df70f1825203a1e50ba63dc1d75..4151b002a35b8a2835dcf0b1ff572abd39821498 100644 (file)
@@ -76,6 +76,27 @@ AC_CHECK_LIB([devmapper], [dm_task_create],
        [AC_MSG_FAILURE([The libdevmapper development library is required by petitboot.  Try installing the package libdevmapper-dev or device-mapper-devel.])]
 )
 
+AC_ARG_ENABLE(
+       [crypt],
+       [AS_HELP_STRING(
+               [--enable-crypt],
+               [Include crypt support to enable password use [default=no]]
+       )],
+       [],
+       [enable_crypt=no]
+)
+AM_CONDITIONAL([ENABLE_CRYPT], [test "x$enable_crypt" = "xyes"])
+AS_IF([test "x$enable_crypt" = "xyes"],
+      [AC_DEFINE(CRYPT_SUPPORT, 1, [Enable crypt/password support])],
+      []
+)
+AS_IF([test "x$enable_crypt" = "xyes"],
+       AC_CHECK_LIB([crypt], [crypt],
+               [CRYPT_LIBS=-lcrypt],
+               [AC_MSG_FAILURE([shadow/crypt libs required])]
+       )
+)
+
 AC_ARG_WITH([fdt],
        AS_HELP_STRING([--without-fdt],
                [Build without libfdt (default: no)]))
@@ -303,16 +324,61 @@ AS_IF(
        ]
 )
 
+# platform choice
+AC_ARG_ENABLE(
+       [platform-all],
+       [AS_HELP_STRING(
+               [--enable-platform-all],
+               [build support for all platforms [default=no]]
+       )]
+)
+AS_IF(
+       [test "x$enable_platform_all" = "xyes"],
+       [enable_platform_arm64="yes"; enable_platform_powerpc="yes"; enable_platform_ps3="yes"]
+)
+
 AC_ARG_ENABLE(
-       [ps3],
+       [platform-auto],
        [AS_HELP_STRING(
-               [--enable-ps3],
-               [build additional programs for the PS3 game console [default=no]]
+               [--enable-platform-auto],
+               [auto detect platform support to build [default=yes]]
        )],
        [],
-       [enable_ps3=no]
+       [enable_platform_auto="yes"]
 )
-AM_CONDITIONAL([ENABLE_PS3], [test "x$enable_ps3" = "xyes"])
+AS_IF(
+       [test "x$enable_platform_auto" = "xyes"],
+       [AS_CASE([$host],
+               [aarch64-*-*],   [enable_platform_arm64="yes"],
+               [powerpc*-*-*],  [enable_platform_powerpc="yes"],
+       )]
+)
+
+AC_ARG_ENABLE(
+       [platform-arm64],
+       [AS_HELP_STRING(
+               [--enable-platform-arm64],
+               [build support for arm64 platforms [default=no]]
+       )]
+)
+AM_CONDITIONAL([PLATFORM_ARM64], [test "x$enable_platform_arm64" = "xyes"])
+
+AC_ARG_ENABLE(
+       [platform-powerpc],
+       [AS_HELP_STRING(
+               [--enable-platform-powerpc],
+               [build support for powerpc platforms [default=no]]
+       )]
+)
+AM_CONDITIONAL([PLATFORM_POWERPC], [test "x$enable_platform_powerpc" = "xyes"])
+
+AC_ARG_ENABLE(
+       [platform-ps3],
+       [AS_HELP_STRING(
+               [--enable-platform-ps3],
+               [build support for the PS3 game console [default=no]]
+       )])
+AM_CONDITIONAL([PLATFORM_PS3], [test "x$enable_platform_ps3" = "xyes"])
 
 AC_ARG_ENABLE(
        [debug],
@@ -322,7 +388,6 @@ AC_ARG_ENABLE(
        [],
        [enable_debug=check]
 )
-#AM_CONDITIONAL([ENABLE_DEBUG], [test "x$enable_debug" = "xyes"])
 
 AC_ARG_ENABLE(
        [test-valgrind],
@@ -360,6 +425,7 @@ DEFINE_HOST_PROG(PB_PLUGIN, pb-plugin, [/usr/sbin/pb-plugin])
 DEFINE_HOST_PROG(PB_EXEC, pb-exec, [/usr/sbin/pb-exec])
 DEFINE_HOST_PROG(SH, sh, [/bin/sh])
 DEFINE_HOST_PROG(SCSI_RESCAN, scsi-rescan, [/usr/sbin/scsi-rescan])
+DEFINE_HOST_PROG(DMIDECODE, dmidecode, [/sbin/dmidecode])
 
 AC_ARG_WITH(
     [tftp],
@@ -410,6 +476,7 @@ AS_IF(
  
 AC_SUBST([UDEV_LIBS])
 AC_SUBST([DEVMAPPER_LIBS])
+AC_SUBST([CRYPT_LIBS])
 AC_SUBST([FDT_LIBS])
 AC_SUBST([LIBFLASH_LIBS])
 AC_SUBST([LIBTOOL_DEPS])