diff options
-rwxr-xr-x | examples/mswin-build/mkprerelease | 16 | ||||
-rwxr-xr-x | examples/mswin-build/mkrelease | 34 | ||||
-rw-r--r-- | libbb/appletlib.c | 31 |
3 files changed, 50 insertions, 31 deletions
diff --git a/examples/mswin-build/mkprerelease b/examples/mswin-build/mkprerelease index 45f64fa72..1cace46a3 100755 --- a/examples/mswin-build/mkprerelease +++ b/examples/mswin-build/mkprerelease | |||
@@ -29,13 +29,13 @@ for i in $TARGETS | |||
29 | do | 29 | do |
30 | if [ $i = "build_pre_64" ] | 30 | if [ $i = "build_pre_64" ] |
31 | then | 31 | then |
32 | CONFIG=mingw64_defconfig; | 32 | CONFIG=mingw64_defconfig |
33 | elif [ $i = "build_pre_64u" ] | 33 | elif [ $i = "build_pre_64u" ] |
34 | then | 34 | then |
35 | CONFIG=mingw64u_defconfig; | 35 | CONFIG=mingw64u_defconfig |
36 | elif [ $i = "build_pre_32" ] | 36 | elif [ $i = "build_pre_32" ] |
37 | then | 37 | then |
38 | CONFIG=mingw32_defconfig; | 38 | CONFIG=mingw32_defconfig |
39 | fi | 39 | fi |
40 | 40 | ||
41 | (cd $i; git checkout master; make ${CONFIG}) | 41 | (cd $i; git checkout master; make ${CONFIG}) |
@@ -44,8 +44,16 @@ done | |||
44 | # perform build | 44 | # perform build |
45 | for i in $TARGETS | 45 | for i in $TARGETS |
46 | do | 46 | do |
47 | BITS=64 | ||
48 | if [ $i = "build_pre_32" ] | ||
49 | then | ||
50 | BITS=32; | ||
51 | fi | ||
52 | |||
47 | ( | 53 | ( |
48 | cd $i | 54 | cd $i |
49 | make -j $(nproc) EXTRAVERSION="-$(git describe --match=FRP | sed 's/FRP/PRE/')" | 55 | GCCV=$(rpm -q --qf '%{name} %{version}-%{release}\n' mingw${BITS}-gcc) |
56 | CRTV=$(rpm -q --qf '%{name} %{version}-%{release}\n' mingw${BITS}-crt) | ||
57 | make -j $(nproc) EXTRAVERSION="-$(git describe --match=FRP | sed 's/FRP/PRE/')" MINGW_VER="$GCCV; $CRTV" | ||
50 | ) | 58 | ) |
51 | done | 59 | done |
diff --git a/examples/mswin-build/mkrelease b/examples/mswin-build/mkrelease index 7ce9094f6..956cba0c1 100755 --- a/examples/mswin-build/mkrelease +++ b/examples/mswin-build/mkrelease | |||
@@ -2,7 +2,7 @@ | |||
2 | # | 2 | # |
3 | # Build 32- and 64-bit busybox binaries for release | 3 | # Build 32- and 64-bit busybox binaries for release |
4 | # | 4 | # |
5 | TARGETS="build_32 build_64" | 5 | TARGETS="build_32 build_64 build_64u" |
6 | 6 | ||
7 | if [ ! -d busybox-w32 ] | 7 | if [ ! -d busybox-w32 ] |
8 | then | 8 | then |
@@ -20,15 +20,23 @@ done | |||
20 | # apply default configuration | 20 | # apply default configuration |
21 | for i in $TARGETS | 21 | for i in $TARGETS |
22 | do | 22 | do |
23 | BITS=32 | ||
24 | if [ $i = "build_64" ] | 23 | if [ $i = "build_64" ] |
25 | then | 24 | then |
26 | BITS=64; | 25 | CONFIG=mingw64_defconfig |
26 | BITS=64 | ||
27 | elif [ $i = "build_64u" ] | ||
28 | then | ||
29 | CONFIG=mingw64u_defconfig | ||
30 | BITS=64 | ||
31 | elif [ $i = "build_32" ] | ||
32 | then | ||
33 | CONFIG=mingw32_defconfig | ||
34 | BITS=32 | ||
27 | fi | 35 | fi |
28 | 36 | ||
29 | ( | 37 | ( |
30 | cd $i | 38 | cd $i |
31 | make mingw${BITS}_defconfig | 39 | make ${CONFIG} |
32 | # link time optimisation, fortify, stack protection | 40 | # link time optimisation, fortify, stack protection |
33 | sed -e 's/^CONFIG_EXTRA_CFLAGS="\(.*\)"$/CONFIG_EXTRA_CFLAGS="\1 -flto -fstack-protector --param=ssp-buffer-size=4"/' \ | 41 | sed -e 's/^CONFIG_EXTRA_CFLAGS="\(.*\)"$/CONFIG_EXTRA_CFLAGS="\1 -flto -fstack-protector --param=ssp-buffer-size=4"/' \ |
34 | -e 's/^CONFIG_EXTRA_CFLAGS=" /CONFIG_EXTRA_CFLAGS="/' \ | 42 | -e 's/^CONFIG_EXTRA_CFLAGS=" /CONFIG_EXTRA_CFLAGS="/' \ |
@@ -49,22 +57,16 @@ done | |||
49 | # perform build | 57 | # perform build |
50 | for i in $TARGETS | 58 | for i in $TARGETS |
51 | do | 59 | do |
52 | BITS=32 | 60 | BITS=64 |
53 | if [ $i = "build_64" ] | 61 | if [ $i = "build_32" ] |
54 | then | 62 | then |
55 | BITS=64; | 63 | BITS=32 |
56 | fi | 64 | fi |
57 | 65 | ||
58 | ( | 66 | ( |
59 | cd $i | 67 | cd $i |
60 | GCCV=`rpm -q --qf '%{name} %{version}-%{release}\n' mingw${BITS}-gcc` | 68 | GCCV=$(rpm -q --qf '%{name} %{version}-%{release}\n' mingw${BITS}-gcc) |
61 | CRTV=`rpm -q --qf '%{name} %{version}-%{release}\n' mingw${BITS}-crt` | 69 | CRTV=$(rpm -q --qf '%{name} %{version}-%{release}\n' mingw${BITS}-crt) |
62 | GLOB="; noglob" | 70 | make -j $(nproc) EXTRAVERSION="-`git describe --match=FRP`" MINGW_VER="$GCCV; $CRTV" |
63 | if grep -q ^CONFIG_GLOBBING=y .config | ||
64 | then | ||
65 | GLOB="; glob" | ||
66 | fi | ||
67 | VER="($GCCV; $CRTV$GLOB)" | ||
68 | make -j $(nproc) EXTRAVERSION="-`git describe --match=FRP`" MINGW_VER="$VER" | ||
69 | ) | 71 | ) |
70 | done | 72 | done |
diff --git a/libbb/appletlib.c b/libbb/appletlib.c index 1c135fde7..a70b3a4c2 100644 --- a/libbb/appletlib.c +++ b/libbb/appletlib.c | |||
@@ -886,19 +886,20 @@ int busybox_main(int argc UNUSED_PARAM, char **argv) | |||
886 | 886 | ||
887 | dup2(1, 2); | 887 | dup2(1, 2); |
888 | full_write2_str(bb_banner); /* reuse const string */ | 888 | full_write2_str(bb_banner); /* reuse const string */ |
889 | #if ENABLE_PLATFORM_MINGW32 | 889 | # if ENABLE_PLATFORM_MINGW32 |
890 | # if ENABLE_FEATURE_UTF8_MANIFEST | 890 | full_write2_str("\n("); |
891 | full_write2_str(GetACP() == CP_UTF8 ? " (Unicode on)" | 891 | # if defined(MINGW_VER) |
892 | : " (Unicode off)"); | ||
893 | # endif | ||
894 | full_write2_str("\n"); | ||
895 | #else | ||
896 | full_write2_str(" multi-call binary.\n"); /* reuse */ | ||
897 | #endif | ||
898 | #if defined(MINGW_VER) | ||
899 | if (sizeof(MINGW_VER) > 5) { | 892 | if (sizeof(MINGW_VER) > 5) { |
900 | full_write2_str(MINGW_VER "\n\n"); | 893 | full_write2_str(MINGW_VER "; "); |
901 | } | 894 | } |
895 | # endif | ||
896 | full_write2_str(ENABLE_GLOBBING ? "glob" : "noglob"); | ||
897 | # if ENABLE_FEATURE_UTF8_MANIFEST | ||
898 | full_write2_str("; Unicode"); | ||
899 | # endif | ||
900 | full_write2_str(")\n\n"); | ||
901 | # else | ||
902 | full_write2_str(" multi-call binary.\n"); /* reuse */ | ||
902 | #endif | 903 | #endif |
903 | full_write2_str( | 904 | full_write2_str( |
904 | "BusyBox is copyrighted by many authors between 1998-2023.\n" | 905 | "BusyBox is copyrighted by many authors between 1998-2023.\n" |
@@ -1303,6 +1304,14 @@ int main(int argc UNUSED_PARAM, char **argv) | |||
1303 | } | 1304 | } |
1304 | #endif | 1305 | #endif |
1305 | #if ENABLE_PLATFORM_MINGW32 | 1306 | #if ENABLE_PLATFORM_MINGW32 |
1307 | # if ENABLE_FEATURE_UTF8_MANIFEST | ||
1308 | if (GetACP() != CP_UTF8) { | ||
1309 | full_write2_str(bb_basename(argv[0])); | ||
1310 | full_write2_str(": needs UTF8 code page\n"); | ||
1311 | return 1; | ||
1312 | } | ||
1313 | # endif | ||
1314 | |||
1306 | /* detect if we're running an interpreted script */ | 1315 | /* detect if we're running an interpreted script */ |
1307 | if (argv[0][1] == ':' && argv[0][2] == '/') { | 1316 | if (argv[0][1] == ':' && argv[0][2] == '/') { |
1308 | switch (argv[0][0]) { | 1317 | switch (argv[0][0]) { |