This commit is contained in:
Mirek Fidler 2023-04-13 23:59:45 +02:00
commit 34a4acebe3
4 changed files with 25 additions and 3 deletions

View file

@ -44,6 +44,15 @@ String SplashCtrl::GenerateVersionInfo(char separator)
h << " (C++11)";
#endif
#if CPU_ARM
h << "(ARM";
#if __ARM_FEATURE_UNALIGNED
h << " unaligned";
#endif
h << ")";
#endif
#ifdef GUI_GTK
h << " (Gtk)";
#endif

View file

@ -399,6 +399,7 @@ bool GccBuilder::CreateLib(const String& product, const Vector<String>& obj,
}
String tmpFileName;
#ifndef PLATFORM_BSD // BSD/MacOS ar does not support response files, OTOH has 1MB commandline limit
if(lib.GetCount() + llib.GetCount() >= 8192)
{
tmpFileName = CacheFile(SHA1String(lib + llib));
@ -436,6 +437,7 @@ bool GccBuilder::CreateLib(const String& product, const Vector<String>& obj,
lib << " @" << tmpFileName;
}
else
#endif
lib << llib;
int res = Execute(lib);

View file

@ -10,8 +10,8 @@ COMPILER = "clang++";
COMMON_OPTIONS = "-mmacosx-version-min=10.13";
COMMON_CPP_OPTIONS = "-std=c++14 -Wall -Wno-logical-op-parentheses";
COMMON_C_OPTIONS = "";
COMMON_LINK = "";
COMMON_FLAGS = "";
COMMON_LINK = "$COMMON$";
COMMON_FLAGS = "$COMMON$";
DEBUG_INFO = "2";
DEBUG_BLITZ = "1";
DEBUG_LINKMODE = "1";
@ -162,6 +162,12 @@ void CreateBuildMethods()
Path("$INCLUDE$", "/opt/local/include;/usr/include;/opt/homebrew/include;/opt/homebrew/opt/openssl/include");
Path("$LIB$", "/opt/local/lib;/usr/lib;/opt/homebrew/lib;/opt/homebrew/opt/openssl/lib");
String common;
#ifdef CPU_ARM
common = "-arch arm64";
#endif
bm.Replace("$COMMON$", common);
SaveFile(bm_path, bm);
}

View file

@ -63,7 +63,12 @@ String Builder::CmdX(const char *s)
else
(cmdf ? cmd : r).Cat(*s);
int q = r.Find(' ');
if(r.GetCount() > 8000 && q >= 0) {
#ifdef PLATFORM_BSD
const int limit = 1000000;
#else
const int limit = 8000;
#endif
if(r.GetCount() > limit && q >= 0) {
String rn = CatAnyPath(outdir, AsString(tmpfilei.GetAdd(outdir, 0)++) + ".cmd");
PutVerbose("Generating response file: " << rn);
PutVerbose(r);