aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlistair Strachan2018-08-16 15:20:20 -0500
committerAlistair Strachan2018-08-22 16:39:43 -0500
commit0a8baca502643f8d3250711b8a7a792c8c8100db (patch)
tree8df22a7e51ce5055a6a903190c1a493c89f4646b
parente1ecafeac7d8273a25c7ef98f963648c5099cbd8 (diff)
downloadu-boot-0a8baca502643f8d3250711b8a7a792c8c8100db.tar.gz
u-boot-0a8baca502643f8d3250711b8a7a792c8c8100db.tar.xz
u-boot-0a8baca502643f8d3250711b8a7a792c8c8100db.zip
Add Android.bp to build U-Boot's mkimage.
This tool is needed to build FIT images for the Beagleboard-X15 platform. As it is not a required host build dependency, we must build it from sources. This change introduces a build of the mkimage tool from 2018.07, however the image signing feature is disabled because it depends on an openssl API which was removed from boringssl. This would need further changes upstream to resolve. A directory containing a large number of symlinks to existing headers is also provided, as the GNU Make build system was using the "-idirafter" feature to stop copies of standard C headers like stdint.h, stdlib.h from being selected from the U-Boot 'include' directory, which is an unsupported feature in the Android build system. Bug: 74437007 Change-Id: Idadda650232749d198320b4556a7ba5379a441d0 Signed-off-by: Alistair Strachan <astrachan@google.com>
-rw-r--r--Android.bp92
l---------prebuilt-intermediates/bootm.h1
l---------prebuilt-intermediates/bootstage.h1
l---------prebuilt-intermediates/command.h1
l---------prebuilt-intermediates/compiler.h1
l---------prebuilt-intermediates/config.h1
l---------prebuilt-intermediates/fdt_support.h1
-rw-r--r--prebuilt-intermediates/generated/autoconf.h1
-rw-r--r--prebuilt-intermediates/generated/timestamp_autogenerated.h3
-rw-r--r--prebuilt-intermediates/generated/version_autogenerated.h1
l---------prebuilt-intermediates/hash.h1
l---------prebuilt-intermediates/image.h1
l---------prebuilt-intermediates/imximage.h1
l---------prebuilt-intermediates/linker_lists.h1
l---------prebuilt-intermediates/linux/compiler-clang.h1
l---------prebuilt-intermediates/linux/compiler.h1
l---------prebuilt-intermediates/linux/kconfig.h1
l---------prebuilt-intermediates/linux/libfdt.h1
l---------prebuilt-intermediates/linux/libfdt_env.h1
l---------prebuilt-intermediates/rc4.h1
l---------prebuilt-intermediates/tee1
l---------prebuilt-intermediates/timestamp.h1
l---------prebuilt-intermediates/u-boot1
l---------prebuilt-intermediates/version.h1
l---------prebuilt-intermediates/watchdog.h1
25 files changed, 118 insertions, 0 deletions
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000000..cf80822330
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,92 @@
1// Copyright 2018 Google Inc. All rights reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// NOTE: image-sig (RSA signature) support is broken because the U-Boot code
16// requires API features from openssl which are not provided by boringssl
17
18cc_binary_host {
19 name: "mkimage",
20
21 cflags: [
22 "-D__KERNEL_STRICT_NAMES",
23 "-D_GNU_SOURCE",
24 "-DMKIMAGE_DTC=\"dtc\"",
25 "-DUSE_HOSTCC",
26 "-Wno-missing-field-initializers",
27 "-Wno-pointer-arith",
28 "-Wno-unused-parameter",
29 "-Wno-visibility",
30 "-include linux/kconfig.h",
31 "-include compiler.h",
32 ],
33
34 srcs: [
35 "common/bootm.c",
36 "common/hash.c",
37 "common/image.c",
38 "common/image-fit.c",
39 "lib/crc32.c",
40 "lib/fdtdec.c",
41 "lib/fdtdec_common.c",
42 "lib/libfdt/fdt_region.c",
43 "lib/libfdt/fdt_ro.c",
44 "lib/md5.c",
45 "lib/rc4.c",
46 "lib/sha1.c",
47 "lib/sha256.c",
48 "tools/aisimage.c",
49 "tools/atmelimage.c",
50 "tools/default_image.c",
51 "tools/fit_common.c",
52 "tools/fit_image.c",
53 "tools/gpimage.c",
54 "tools/gpimage-common.c",
55 "tools/image-host.c",
56 "tools/imagetool.c",
57 "tools/imximage.c",
58 "tools/kwbimage.c",
59 "tools/libfdt/fdt.c",
60 "tools/libfdt/fdt_addresses.c",
61 "tools/libfdt/fdt_empty_tree.c",
62 "tools/libfdt/fdt_overlay.c",
63 "tools/libfdt/fdt_rw.c",
64 "tools/libfdt/fdt_strerror.c",
65 "tools/libfdt/fdt_sw.c",
66 "tools/libfdt/fdt_wip.c",
67 "tools/lpc32xximage.c",
68 "tools/mkimage.c",
69 "tools/mxsimage.c",
70 "tools/omapimage.c",
71 "tools/os_support.c",
72 "tools/pbl_crc32.c",
73 "tools/pblimage.c",
74 "tools/rkcommon.c",
75 "tools/rkimage.c",
76 "tools/rksd.c",
77 "tools/rkspi.c",
78 "tools/socfpgaimage.c",
79 "tools/stm32image.c",
80 "tools/ublimage.c",
81 "tools/vybridimage.c",
82 "tools/zynqimage.c",
83 "tools/zynqmpbif.c",
84 "tools/zynqmpimage.c",
85 ],
86
87 local_include_dirs: [
88 "prebuilt-intermediates",
89 "scripts/dtc/libfdt",
90 "tools",
91 ],
92}
diff --git a/prebuilt-intermediates/bootm.h b/prebuilt-intermediates/bootm.h
new file mode 120000
index 0000000000..e045d8cb06
--- /dev/null
+++ b/prebuilt-intermediates/bootm.h
@@ -0,0 +1 @@
../include/bootm.h \ No newline at end of file
diff --git a/prebuilt-intermediates/bootstage.h b/prebuilt-intermediates/bootstage.h
new file mode 120000
index 0000000000..e10131e134
--- /dev/null
+++ b/prebuilt-intermediates/bootstage.h
@@ -0,0 +1 @@
../include/bootstage.h \ No newline at end of file
diff --git a/prebuilt-intermediates/command.h b/prebuilt-intermediates/command.h
new file mode 120000
index 0000000000..3d918c0d16
--- /dev/null
+++ b/prebuilt-intermediates/command.h
@@ -0,0 +1 @@
../include/command.h \ No newline at end of file
diff --git a/prebuilt-intermediates/compiler.h b/prebuilt-intermediates/compiler.h
new file mode 120000
index 0000000000..715e568a91
--- /dev/null
+++ b/prebuilt-intermediates/compiler.h
@@ -0,0 +1 @@
../include/compiler.h \ No newline at end of file
diff --git a/prebuilt-intermediates/config.h b/prebuilt-intermediates/config.h
new file mode 120000
index 0000000000..31c4e5c758
--- /dev/null
+++ b/prebuilt-intermediates/config.h
@@ -0,0 +1 @@
../include/config.h \ No newline at end of file
diff --git a/prebuilt-intermediates/fdt_support.h b/prebuilt-intermediates/fdt_support.h
new file mode 120000
index 0000000000..b515e50acb
--- /dev/null
+++ b/prebuilt-intermediates/fdt_support.h
@@ -0,0 +1 @@
../include/fdt_support.h \ No newline at end of file
diff --git a/prebuilt-intermediates/generated/autoconf.h b/prebuilt-intermediates/generated/autoconf.h
new file mode 100644
index 0000000000..710cecca97
--- /dev/null
+++ b/prebuilt-intermediates/generated/autoconf.h
@@ -0,0 +1 @@
/* Empty */
diff --git a/prebuilt-intermediates/generated/timestamp_autogenerated.h b/prebuilt-intermediates/generated/timestamp_autogenerated.h
new file mode 100644
index 0000000000..9ce5c78d1e
--- /dev/null
+++ b/prebuilt-intermediates/generated/timestamp_autogenerated.h
@@ -0,0 +1,3 @@
1#define U_BOOT_DATE "Jan 1 2000"
2#define U_BOOT_TIME "00:00:00"
3#define U_BOOT_TZ "0000"
diff --git a/prebuilt-intermediates/generated/version_autogenerated.h b/prebuilt-intermediates/generated/version_autogenerated.h
new file mode 100644
index 0000000000..c3c8b1829f
--- /dev/null
+++ b/prebuilt-intermediates/generated/version_autogenerated.h
@@ -0,0 +1 @@
#define PLAIN_VERSION "2018.07"
diff --git a/prebuilt-intermediates/hash.h b/prebuilt-intermediates/hash.h
new file mode 120000
index 0000000000..3d1f7613c3
--- /dev/null
+++ b/prebuilt-intermediates/hash.h
@@ -0,0 +1 @@
../include/hash.h \ No newline at end of file
diff --git a/prebuilt-intermediates/image.h b/prebuilt-intermediates/image.h
new file mode 120000
index 0000000000..ff803f71ae
--- /dev/null
+++ b/prebuilt-intermediates/image.h
@@ -0,0 +1 @@
../include/image.h \ No newline at end of file
diff --git a/prebuilt-intermediates/imximage.h b/prebuilt-intermediates/imximage.h
new file mode 120000
index 0000000000..85bcd1fbd4
--- /dev/null
+++ b/prebuilt-intermediates/imximage.h
@@ -0,0 +1 @@
../include/imximage.h \ No newline at end of file
diff --git a/prebuilt-intermediates/linker_lists.h b/prebuilt-intermediates/linker_lists.h
new file mode 120000
index 0000000000..fadc1cf72c
--- /dev/null
+++ b/prebuilt-intermediates/linker_lists.h
@@ -0,0 +1 @@
../include/linker_lists.h \ No newline at end of file
diff --git a/prebuilt-intermediates/linux/compiler-clang.h b/prebuilt-intermediates/linux/compiler-clang.h
new file mode 120000
index 0000000000..c5b66b4bb0
--- /dev/null
+++ b/prebuilt-intermediates/linux/compiler-clang.h
@@ -0,0 +1 @@
../../include/linux/compiler-clang.h \ No newline at end of file
diff --git a/prebuilt-intermediates/linux/compiler.h b/prebuilt-intermediates/linux/compiler.h
new file mode 120000
index 0000000000..e1089acd92
--- /dev/null
+++ b/prebuilt-intermediates/linux/compiler.h
@@ -0,0 +1 @@
../../include/linux/compiler.h \ No newline at end of file
diff --git a/prebuilt-intermediates/linux/kconfig.h b/prebuilt-intermediates/linux/kconfig.h
new file mode 120000
index 0000000000..0acd2ec14c
--- /dev/null
+++ b/prebuilt-intermediates/linux/kconfig.h
@@ -0,0 +1 @@
../../include/linux/kconfig.h \ No newline at end of file
diff --git a/prebuilt-intermediates/linux/libfdt.h b/prebuilt-intermediates/linux/libfdt.h
new file mode 120000
index 0000000000..fb14cd340c
--- /dev/null
+++ b/prebuilt-intermediates/linux/libfdt.h
@@ -0,0 +1 @@
../../include/linux/libfdt.h \ No newline at end of file
diff --git a/prebuilt-intermediates/linux/libfdt_env.h b/prebuilt-intermediates/linux/libfdt_env.h
new file mode 120000
index 0000000000..9070c9df2f
--- /dev/null
+++ b/prebuilt-intermediates/linux/libfdt_env.h
@@ -0,0 +1 @@
../../include/linux/libfdt_env.h \ No newline at end of file
diff --git a/prebuilt-intermediates/rc4.h b/prebuilt-intermediates/rc4.h
new file mode 120000
index 0000000000..976089ddb6
--- /dev/null
+++ b/prebuilt-intermediates/rc4.h
@@ -0,0 +1 @@
../include/rc4.h \ No newline at end of file
diff --git a/prebuilt-intermediates/tee b/prebuilt-intermediates/tee
new file mode 120000
index 0000000000..7212bf0db8
--- /dev/null
+++ b/prebuilt-intermediates/tee
@@ -0,0 +1 @@
../include/tee \ No newline at end of file
diff --git a/prebuilt-intermediates/timestamp.h b/prebuilt-intermediates/timestamp.h
new file mode 120000
index 0000000000..ea7a630284
--- /dev/null
+++ b/prebuilt-intermediates/timestamp.h
@@ -0,0 +1 @@
../include/timestamp.h \ No newline at end of file
diff --git a/prebuilt-intermediates/u-boot b/prebuilt-intermediates/u-boot
new file mode 120000
index 0000000000..0d1a07f244
--- /dev/null
+++ b/prebuilt-intermediates/u-boot
@@ -0,0 +1 @@
../include/u-boot \ No newline at end of file
diff --git a/prebuilt-intermediates/version.h b/prebuilt-intermediates/version.h
new file mode 120000
index 0000000000..bb576071e8
--- /dev/null
+++ b/prebuilt-intermediates/version.h
@@ -0,0 +1 @@
../include/version.h \ No newline at end of file
diff --git a/prebuilt-intermediates/watchdog.h b/prebuilt-intermediates/watchdog.h
new file mode 120000
index 0000000000..d214f992ee
--- /dev/null
+++ b/prebuilt-intermediates/watchdog.h
@@ -0,0 +1 @@
../include/watchdog.h \ No newline at end of file