aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/uml
diff options
context:
space:
mode:
authorFlorian Fainelli <f.fainelli@gmail.com>2017-05-22 19:35:00 -0700
committerFlorian Fainelli <f.fainelli@gmail.com>2017-05-26 15:43:22 -0700
commite8c3b9897363641614bcb461b6ca704b95422da6 (patch)
tree9937b81bf393d70814bf1cdcfd9594c783363334 /target/linux/uml
parent90336ef4cd3bd6abeb36c321a455b9e875eec56a (diff)
downloadupstream-e8c3b9897363641614bcb461b6ca704b95422da6.tar.gz
upstream-e8c3b9897363641614bcb461b6ca704b95422da6.tar.bz2
upstream-e8c3b9897363641614bcb461b6ca704b95422da6.zip
uml: Check for glibc static libraries
UML statically links against libutil, librt and libpthread. Some hosts do not necessarily have these libraries installed and we should find out sooner than later (during the final vmlinux linking stage) about that. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Diffstat (limited to 'target/linux/uml')
-rw-r--r--target/linux/uml/image/Makefile11
1 files changed, 11 insertions, 0 deletions
diff --git a/target/linux/uml/image/Makefile b/target/linux/uml/image/Makefile
index 8e83bfeecc..c8ed874d15 100644
--- a/target/linux/uml/image/Makefile
+++ b/target/linux/uml/image/Makefile
@@ -22,3 +22,14 @@ define Image/Build
endef
$(eval $(call BuildImage))
+
+# UML requires linking against several glibc static libraries: libutil, librt
+# and libpthread, check that here. We do not check against libpthread
+# specifically because getting something to build that references a libpthread
+# symbol is pretty involved and Linux distributions package these 3 libraries
+# in the same package.
+
+$(eval $(call TestHostCommand,glibc-static, \
+ Please install a static glibc package. (Missing libutil.a, librt.a or libpthread.a), \
+ echo 'int main(int argc, char **argv) { login(0); timer_gettime(0, 0); return 0; }' | \
+ gcc -include utmp.h -x c -o $(TMP_DIR)/a.out - -static -lutil -lrt))