浏览代码

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 <[email protected]>
Florian Fainelli 8 年之前
父节点
当前提交
e8c3b98973
共有 1 个文件被更改,包括 11 次插入0 次删除
  1. 11 0
      target/linux/uml/image/Makefile

+ 11 - 0
target/linux/uml/image/Makefile

@@ -22,3 +22,14 @@ define Image/Build
 endef
 endef
 
 
 $(eval $(call BuildImage))
 $(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))