summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeongik Cha <jeongik@google.com>2021-10-12 11:13:16 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-10-12 11:13:16 +0000
commit2d476c408e539d8dcf0cbb44ec5df0fe23f1fb55 (patch)
treebf64ee457f78b331d0327485c29e7533e68a0319
parentf8e8086424568985d213d03969609081ac17be98 (diff)
parent8e0bf13f0a9b2dce3bb6d6d9dbfebaa790a5664b (diff)
downloadopenwrt-prebuilts-2d476c408e539d8dcf0cbb44ec5df0fe23f1fb55.tar.gz
Build customized openwrt rootfs image am: 8e0bf13f0a
Original change: https://android-review.googlesource.com/c/platform/external/openwrt-prebuilts/+/1849633 Change-Id: If3fe07e8656c2b1a3b927560f69a3a49d3c6a496
-rw-r--r--Android.bp30
-rw-r--r--HOW_TO_GET_SOURCE_CODE2
-rw-r--r--x86/Android.bp60
-rw-r--r--x86/uci-defaults/0_network_config20
4 files changed, 112 insertions, 0 deletions
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..246741d
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,30 @@
+package {
+ default_visibility: ["//visibility:private"],
+}
+
+filegroup {
+ name: "openwrt_license_files",
+ visibility: [":__subpackages__"],
+ srcs: [
+ "LICENSE",
+ "HOW_TO_GET_SOURCE_CODE",
+ ],
+}
+
+license {
+ name: "openwrt_license",
+ visibility: [":__subpackages__"],
+ license_kinds: [
+ "SPDX-license-identifier-Apache-2.0",
+ "SPDX-license-identifier-BSD",
+ "SPDX-license-identifier-GPL-2.0",
+ "SPDX-license-identifier-GPL-3.0",
+ "SPDX-license-identifier-LGPL-2.1",
+ "SPDX-license-identifier-MIT",
+ "SPDX-license-identifier-ISC",
+ ],
+ license_text: [
+ "LICENSE",
+ "HOW_TO_GET_SOURCE_CODE",
+ ],
+} \ No newline at end of file
diff --git a/HOW_TO_GET_SOURCE_CODE b/HOW_TO_GET_SOURCE_CODE
new file mode 100644
index 0000000..9af9a78
--- /dev/null
+++ b/HOW_TO_GET_SOURCE_CODE
@@ -0,0 +1,2 @@
+https://git.openwrt.org/
+https://openwrt.org/docs/guide-developer/start \ No newline at end of file
diff --git a/x86/Android.bp b/x86/Android.bp
new file mode 100644
index 0000000..a31e692
--- /dev/null
+++ b/x86/Android.bp
@@ -0,0 +1,60 @@
+genrule {
+ name: "openwrt_customization",
+ tools: [
+ "make_f2fs",
+ "sload_f2fs",
+ ],
+ srcs: [
+ ":openwrt_license_files",
+ "kmods/*",
+ "packages/*",
+ "uci-defaults/*",
+ ],
+ out: ["customization.img"],
+ cmd: "mkdir -p $(genDir)/root/upper/etc/uci-defaults && " +
+ "mkdir -p $(genDir)/root/upper/ipks && " +
+ "cp $(in) $(genDir)/ && " +
+ "mv $(genDir)/*.ipk $(genDir)/root/upper/ipks && " +
+ "mv $(genDir)/LICENSE $(genDir)/HOW_TO_GET_SOURCE_CODE $(genDir)/root/upper && " +
+ "mv $(genDir)/0_network_config $(genDir)/root/upper/etc/uci-defaults && " +
+ "ln -s 2 $(genDir)/root/.fs_state && " +
+ "truncate -s 128M $(out) && " +
+ "$(location make_f2fs) $(out) && " +
+ "$(location sload_f2fs) -f $(genDir)/root -t / $(out)",
+}
+
+genrule {
+ name: "openwrt_rootfs_base_img",
+ srcs: [
+ "images/openwrt-21.02.0-x86-64-generic-squashfs-rootfs.img.gz",
+ ],
+ out: ["base_rootfs.img"],
+ cmd: "cp $(in) $(genDir) && gzip -d $(genDir)/* && cp $(genDir)/* $(out)",
+}
+
+genrule {
+ name: "combined_openwrt_rootfs",
+ tools: [
+ "append_squashfs_overlay",
+ ],
+ srcs: [
+ ":openwrt_rootfs_base_img",
+ ":openwrt_customization",
+ ],
+ out: ["openwrt_rootfs.img"],
+ cmd: "$(location append_squashfs_overlay) $(in) $(out) -w",
+}
+
+prebuilt_etc_host {
+ name: "openwrt_rootfs",
+ src: ":combined_openwrt_rootfs",
+ sub_dir: "openwrt/images",
+ visibility: ["//device/google/cuttlefish/build"],
+}
+
+prebuilt_etc_host {
+ name: "openwrt_kernel",
+ src: "images/openwrt-21.02.0-x86-64-generic-kernel.bin",
+ sub_dir: "openwrt/images",
+ visibility: ["//device/google/cuttlefish/build"],
+} \ No newline at end of file
diff --git a/x86/uci-defaults/0_network_config b/x86/uci-defaults/0_network_config
new file mode 100644
index 0000000..7a032d3
--- /dev/null
+++ b/x86/uci-defaults/0_network_config
@@ -0,0 +1,20 @@
+#!/bin/sh
+opkg install /ipks/*
+
+# The script below should be run after mac80211_hwsim is loaded.
+MODULE="mac80211_hwsim"
+while ! (lsmod | grep -o ^$MODULE) ; do sleep 1; done
+
+uci -q batch << EOI
+set network.lan.proto='static'
+set network.lan.ipaddr='192.168.96.2'
+set network.lan.netmask='255.255.255.0'
+set network.lan.ip6assign='30'
+set network.lan.gateway='192.168.96.1'
+set network.lan.dns='8.8.8.8'
+set network.lan.broadcast='192.168.96.3'
+commit network
+set wireless.radio0.disabled='0'
+set wireless.default_radio0.ssid='AndroidWifi'
+commit wireless
+EOI \ No newline at end of file