← Commit list

cb376eebf

Rob Landley
Rob Landley
2006-08-04
SOURCE BUG Duration: 46s

Subject

Digging up my old "make standalone" stuff from a year ago: http://busybox.net/lists/busybox/2005-September/015766.html

SOURCE BUG

This commit was genuinely broken at the time (not related to our build system): scripts/config/mkconfigs.c (2005-08-01 - 2006-10-05 arasi) uretilen bbconfigopts.h icine .config satirlarini kacissiz, ham newline'larla gömüyordu - gecerli C degildi, busybox'un kendi bb_mkdep araci bile parse edemiyordu (7d219aab7 ile duzeltildi, mkconfigs shell scripte cevrildi)

→ Bu hatanin tam hikayesini ve duzeltme diffini gor

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

applets/individual.c+26 -0
@@ -0,0 +1,26 @@
+/* Minimal wrapper to build an individual busybox applet.
+ *
+ * Copyright 2005 Rob Landley <[email protected]
+ *
+ * Licensed under GPLv2 or later, see file License in this tarball for details
+ */
+
+const char *bb_applet_name;
+
+#include <stdio.h>
+#include <stdlib.h>
+#include "usage.h"
+
+int main(int argc, char *argv[])
+{
+ bb_applet_name=argv[0];
+
+ return APPLET_main(argc,argv);
+}
+
+void bb_show_usage(void)
+{
+ printf(APPLET_full_usage "\n");
+
+ exit(1);
+}
scripts/individual+37 -0
@@ -0,0 +1,37 @@
+#!/bin/sh
+
+# Make our prerequisites.
+
+make busybox.links include/bb_config.h
+
+# Adding "libbb/libbb.a" to the previous line doesn't work, nor does going
+# "make libbb.a" in the libb directory. The busybox makefile has layers and
+# layers of overcomplicated brokenness...
+
+cd libbb
+make
+cd ..
+
+# Here are a few that build in a standard way. Others are easy to get to
+# build, for example miscutils/dc needs -lm and most of loginutils/* needs
+# -lcrypt...
+
+rm -rf build
+mkdir build
+for APPLET in `sed 's .*/ ' busybox.links`
+do
+ j=`find . -name "$APPLET.c"`
+ if [ -z "$j" ]
+ then
+ echo no file for $APPLET
+ else
+ echo "Building $APPLET..."
+ gcc -Os -o build/$APPLET applets/individual.c $j libbb/libbb.a -Iinclude -DAPPLET_main=${APPLET}_main -DAPPLET_full_usage=${APPLET}_full_usage
+ if [ $? -ne 0 ];
+ then
+ echo "Failed."
+ fi
+ fi
+done
+
+strip build/*