summaryrefslogtreecommitdiff
path: root/tasks
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2016-03-05 12:51:42 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2016-03-07 06:42:57 +0100
commitc384dc577bd32f3315bacb410fc31610b41f742c (patch)
tree903aaed00f4b82d5e1eada2bd4fea8a7f3387ded /tasks
parent68d4e79f35039b31ae835e82241a567b0ad66aa8 (diff)
rework menu based config system
After the addition of bare metal toolchains the menu system allowed to create non-valid configurations. I reworked it so we can also add other operating system support if we wish. So first you choose your operating system, then your architecture and endianess, after that your embedded system, emulator or generic device and then you choose your task you want to run. Tasks may be toolchain, a new appliance/application or some preconfigured sets of packages and configurations as kodi, mpd, firefox and more. The tasks are limited to a plausible choice of hardware and software. Deduplicate CPU configuration. You don't wanna compile Kodi for a H8/300 microcontroller ;)
Diffstat (limited to 'tasks')
-rw-r--r--tasks/000-new5
-rw-r--r--tasks/001-toolchain5
-rw-r--r--tasks/002-mpd48
-rw-r--r--tasks/003-kodi41
-rw-r--r--tasks/004-development25
-rw-r--r--tasks/005-firefox31
-rw-r--r--tasks/006-test9
7 files changed, 164 insertions, 0 deletions
diff --git a/tasks/000-new b/tasks/000-new
new file mode 100644
index 000000000..5ebe90e7e
--- /dev/null
+++ b/tasks/000-new
@@ -0,0 +1,5 @@
+config ADK_APPLIANCE_NEW
+ bool "create a new appliance"
+ help
+ Create a new appliance from scratch.
+
diff --git a/tasks/001-toolchain b/tasks/001-toolchain
new file mode 100644
index 000000000..48b544a90
--- /dev/null
+++ b/tasks/001-toolchain
@@ -0,0 +1,5 @@
+config ADK_APPLIANCE_TOOLCHAIN
+ bool "create a toolchain"
+ help
+ Create a toolchain.
+
diff --git a/tasks/002-mpd b/tasks/002-mpd
new file mode 100644
index 000000000..683e6cd80
--- /dev/null
+++ b/tasks/002-mpd
@@ -0,0 +1,48 @@
+config ADK_APPLIANCE_MPD
+ bool "music player daemon appliance"
+ depends on ADK_TARGET_OS_LINUX
+ select ADK_PACKAGE_MPD
+ select ADK_PACKAGE_MPD_WITH_ALSA
+ select ADK_PACKAGE_MPD_WITH_MP3
+ select ADK_PACKAGE_MPD_WITH_MP4
+ select ADK_PACKAGE_MPD_WITH_OGG
+ select ADK_PACKAGE_MPD_WITH_OPUS
+ select ADK_PACKAGE_MPD_WITH_FLAC
+ select ADK_PACKAGE_MPD_WITH_WAV
+ select ADK_PACKAGE_MPD_WITH_MMS
+ select ADK_PACKAGE_MPD_WITH_FFMPEG
+ select ADK_PACKAGE_MPD_WITH_SHOUT
+ select ADK_PACKAGE_MPD_WITH_CURL
+ select ADK_PACKAGE_MPD_WITH_SAMPLERATE
+ select ADK_PACKAGE_MPD_WITH_SNDFILE
+ select ADK_PACKAGE_MPD_WITH_HTTPD
+ select ADK_PACKAGE_CIFS_UTILS
+ select ADK_PACKAGE_LIBMPDCLIENT
+ select ADK_PACKAGE_MPC
+ select ADK_PACKAGE_DROPBEAR
+ select ADK_PACKAGE_DROPBEAR_WITH_UTMP
+ select ADK_PACKAGE_FFPROBE
+ select ADK_PACKAGE_LIBFFMPEG
+ select ADK_PACKAGE_LIBFFMPEG_WITH_AAC
+ select ADK_PACKAGE_LIBFFMPEG_WITH_MP3
+ select ADK_PACKAGE_LIBFFMPEG_WITH_VORBIS
+ select ADK_PACKAGE_E2FSCK
+ select ADK_PACKAGE_ALSA_UTILS
+ select BUSYBOX_NTPD
+ select BUSYBOX_WATCHDOG
+ select ADK_RUNTIME_START_SERVICES
+ select ADK_RUNTIME_START_DROPBEAR
+ select ADK_RUNTIME_START_BUSYBOX_NTPD
+ select ADK_RUNTIME_START_BUSYBOX_SYSLOGD
+ select ADK_RUNTIME_START_MPD
+ select ADK_KERNEL_USB_HID
+ select ADK_TARGET_USB_KEYBOARD
+ select ADK_TARGET_USB_MOUSE
+ select ADK_KERNEL_INPUT_KEYBOARD
+ select ADK_KERNEL_INPUT_MOUSE
+ select ADK_KERNEL_INPUT_EVDEV
+ select ADK_RUNTIME_HOSTNAME mpdbox
+ select ADK_KERNEL_USB_STORAGE m
+ help
+ Create a small music player daemon appliance.
+
diff --git a/tasks/003-kodi b/tasks/003-kodi
new file mode 100644
index 000000000..064c4e5a8
--- /dev/null
+++ b/tasks/003-kodi
@@ -0,0 +1,41 @@
+config ADK_APPLIANCE_KODI
+ bool "kodi multimedia appliance"
+ depends on ADK_TARGET_OS_LINUX && (\
+ ADK_TARGET_SYSTEM_RASPBERRY_PI || \
+ ADK_TARGET_SYSTEM_RASPBERRY_PI2 || \
+ ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 )
+ select ADK_PACKAGE_GLIBC if ADK_TARGET_LIB_GLIBC
+ select ADK_PACKAGE_GLIBC_GCONV if ADK_TARGET_LIB_GLIBC
+ select ADK_PACKAGE_LIBICONV if ADK_TARGET_LIB_UCLIBC_NG
+ select ADK_TARGET_LIBICONV if ADK_TARGET_LIB_UCLIBC_NG
+ select ADK_PACKAGE_KODI
+ select ADK_PACKAGE_PYTHON2
+ select ADK_PACKAGE_PYTHON2_MOD_ZLIB # required for YouTube Addon
+ select ADK_PACKAGE_PYTHON2_MOD_SSL # required for YouTube Addon
+ select ADK_PACKAGE_PYTHON2_MOD_EXPAT # required for Mediathek Addon
+ select ADK_PACKAGE_CURL
+ select ADK_PACKAGE_CURL_WITH_LIBRESSL
+ select ADK_PACKAGE_DROPBEAR
+ select ADK_PACKAGE_DROPBEAR_WITH_UTMP
+ select ADK_PACKAGE_E2FSCK
+ select BUSYBOX_NTPD
+ select BUSYBOX_WATCHDOG
+ select ADK_RUNTIME_START_SERVICES
+ select ADK_RUNTIME_START_DROPBEAR
+ select ADK_RUNTIME_START_BUSYBOX_NTPD
+ select ADK_RUNTIME_START_BUSYBOX_SYSLOGD
+ select ADK_RUNTIME_START_BUSYBOX_WATCHDOG
+ select ADK_RUNTIME_START_KODI m
+ select ADK_KERNEL_INPUT_EVDEV m
+ select ADK_KERNEL_USB_HID m
+ select ADK_TARGET_USB_KEYBOARD
+ select ADK_TARGET_USB_MOUSE
+ select ADK_RUNTIME_HOSTNAME kodibox
+ select ADK_PACKAGE_BCM28XX_BOOTLOADER_EXTRA if ADK_TARGET_BOARD_BCM28XX
+ select ADK_PACKAGE_BCM28XX_VC_LIBS if ADK_TARGET_BOARD_BCM28XX
+ select ADK_PACKAGE_BCM28XX_VC_GL_LIBS if ADK_TARGET_BOARD_BCM28XX
+ select ADK_KERNEL_PREEMPT__LL # for better performance and no sound problems
+ help
+ Create a small kodi multimedia appliance. Please enable additional features
+ in Package/Multimedia
+
diff --git a/tasks/004-development b/tasks/004-development
new file mode 100644
index 000000000..e7d22d73a
--- /dev/null
+++ b/tasks/004-development
@@ -0,0 +1,25 @@
+config ADK_APPLIANCE_DEVELOPMENT
+ bool "development appliance"
+ depends on ADK_TARGET_OS_LINUX
+ select ADK_PACKAGE_GCC
+ select ADK_PACKAGE_GXX
+ select ADK_PACKAGE_BINUTILS
+ select ADK_PACKAGE_MAKE
+ select ADK_PACKAGE_GDB
+ select ADK_PACKAGE_BISON
+ select ADK_PACKAGE_FLEX
+ select ADK_PACKAGE_PKGCONF
+ select ADK_PACKAGE_AUTOCONF
+ select ADK_PACKAGE_AUTOMAKE
+ select ADK_PACKAGE_LIBTOOL
+ select ADK_PACKAGE_GLIBC_DEV if ADK_TARGET_LIB_GLIBC
+ select ADK_PACKAGE_MUSL_DEV if ADK_TARGET_LIB_MUSL
+ select ADK_PACKAGE_UCLIBC_NG_DEV if ADK_TARGET_LIB_UCLIBC_NG
+ select ADK_PACKAGE_GIT
+ select ADK_PACKAGE_OPENSSH
+ select ADK_PACKAGE_OPENSSH_CLIENT
+ select ADK_PACKAGE_WGET
+ help
+ If you want to develop software on your target, choose this
+ appliance, so gcc, binutils and co will be selected.
+
diff --git a/tasks/005-firefox b/tasks/005-firefox
new file mode 100644
index 000000000..364ab6686
--- /dev/null
+++ b/tasks/005-firefox
@@ -0,0 +1,31 @@
+config ADK_APPLIANCE_FIREFOX
+ bool "firefox kiosk appliance"
+ depends on ADK_TARGET_OS_LINUX && ( \
+ ADK_TARGET_SYSTEM_LEMOTE_YEELONG || \
+ ADK_TARGET_SYSTEM_IBM_X40 )
+ select ADK_TARGET_LIB_GLIBC
+ select ADK_PACKAGE_GLIBC
+ select ADK_PACKAGE_FIREFOX
+ select ADK_PACKAGE_XORG_SERVER
+ select ADK_PACKAGE_FONT_MISC_MISC
+ select ADK_PACKAGE_XINIT
+ select ADK_PACKAGE_KBD
+ select ADK_PACKAGE_DROPBEAR
+ select ADK_PACKAGE_DROPBEAR_WITH_UTMP
+ select ADK_PACKAGE_E2FSCK
+ select ADK_PACKAGE_XDOTOOL
+ select BUSYBOX_NTPD
+ select ADK_RUNTIME_START_SERVICES
+ select ADK_RUNTIME_START_DROPBEAR
+ select ADK_RUNTIME_START_BUSYBOX_NTPD
+ select ADK_RUNTIME_START_BUSYBOX_SYSLOGD
+ select ADK_RUNTIME_START_FIREFOX
+ select ADK_RUNTIME_START_KBD
+ select ADK_KERNEL_INPUT_EVDEV m
+ select ADK_KERNEL_USB_HID m
+ select ADK_TARGET_USB_KEYBOARD
+ select ADK_TARGET_USB_MOUSE
+ select ADK_RUNTIME_HOSTNAME firefoxbox
+ help
+ Create a small firefox kiosk appliance.
+
diff --git a/tasks/006-test b/tasks/006-test
new file mode 100644
index 000000000..9ba6561fd
--- /dev/null
+++ b/tasks/006-test
@@ -0,0 +1,9 @@
+config ADK_APPLIANCE_TEST
+ bool "automatic test system appliance"
+ depends on ADK_TARGET_OS_LINUX
+ select ADK_PACKAGE_ADKTEST
+ select ADK_RUNTIME_START_SERVICES
+ select ADK_RUNTIME_START_ADKTEST
+ help
+ Create a small appliance for automatic testing.
+