<commit_before># Configuration file for the Nim Compiler.
# (c) 2015 <NAME>

# Feel free to edit the default values as you need.

# You may set environment variables with
# @putenv "key" "val"
# Environment variables can be accessed like so:
#  gcc.path %= "$CC_PATH"

cc = gcc

# additional options always passed to the compiler:
--parallel_build: "0" # 0 to auto-detect number of processors

hint[LineTooLong]=off
#hint[XDeclaredButNotUsed]=off

# example of how to setup a cross-compiler:
arm.linux.gcc.exe = "arm-linux-gcc"
arm.linux.gcc.linkerexe = "arm-linux-gcc"

mips.linux.gcc.exe = "mips-openwrt-linux-gcc"
mips.linux.gcc.linkerexe = "mips-openwrt-linux-gcc"

path="$lib/deprecated/core"
path="$lib/deprecated/pure"
path="$lib/pure/collections"
path="$lib/pure/concurrency"
path="$lib/impure"
path="$lib/wrappers"
path="$lib/wrappers/linenoise"
path="$lib/windows"
path="$lib/posix"
path="$lib/js"
path="$lib/pure/unidecode"
path="$lib/arch"
path="$lib/core"
path="$lib/pure"

@if nimbabel:
  nimblepath="$home/.nimble/pkgs/"
  @if not windows:
    nimblepath="/opt/nimble/pkgs/"
  @else:
    # TODO:
  @end
@end

@if release or quick:
  obj_checks:off
  field_checks:off
  range_checks:off
  bound_checks:off
  overflow_checks:off
  assertions:off
  stacktrace:off
  linetrace:off
  debugger:off
  line_dir:off
  dead_code_elim:on
@end

@if release:
  opt:speed
@end

@if unix:
  @if not bsd or haiku:
    # -fopenmp
    gcc.options.linker = "-ldl"
    gcc.cpp.options.linker = "-ldl"
    clang.options.linker = "-ldl"
    clang.cpp.options.linker = "-ldl"
    tcc.options.linker = "-ldl"
  @end
  @if bsd or haiku:
    # BSD got posix_spawn only recently, so we deactivate it for osproc:
    define:useFork
    # at least NetBSD has problems with thread local storage:
    tlsEmulation:on
  @end
  @if haiku:
    # -fopenmp
    gcc.options.linker = "-lroot -lnetwork"
    gcc.cpp.options.linker = "-lroot -lnetwork"
    clang.options.linker = "-lroot -lnetwork"
    clang.cpp.options.linker = "-lroot -lnetwork"
    tcc.options.linker = "-lroot -lnetwork"
  @end
@end

# Configuration for the Intel C/C++ compiler:
@if windows:
  icl.options.speed = "/Ox /arch:SSE2"
  icl.options.always = "/nologo"
@end

# Configuration for the GNU C/C++ compiler:
@if windows:
  #gcc.path = r"$nim\dist\mingw\bin"
  @if gcc:
    tlsEmulation:on
  @end
@end

@if macosx or freebsd:
  cc = clang
  tlsEmulation:on
  gcc.options.always = "-w"
  gcc.cpp.options.always = "-w -fpermissive"
@else:
  gcc.options.always = "-w"
  gcc.cpp.options.always = "-w -fpermissive"
@end

# Configuration for Objective-C compiler:
#
# Options for GNUStep. GNUStep configuration varies wildly, so you'll probably
# have to add additional compiler and linker flags on a per-project basis.
gcc.objc.options.linker = "-lobjc -lgnustep-base"
llvm_gcc.objc.options.linker = "-lobjc -lgnustep-base"
clang.objc.options.linker = "-lobjc -lgnustep-base"

# Options for Mac OS X. Mac OS X uses its own Objective-C stack that is
# totally different from GNUStep.
@if macosx:
  gcc.objc.options.linker = "-framework Foundation"
  llvm_gcc.objc.options.linker = "-framework Foundation"
  clang.objc.options.linker = "-framework Foundation"
@end

# Options for FreeBSD, OpenBSD, NetBSD linker to add locations for searching
# shared libraries.
@if freebsd or openbsd or netbsd:
  gcc.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
  gcc.cpp.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
  llvm_gcc.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
  llvm_gcc.cpp.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
  clang.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
  clang.cpp.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
@end

# Configuration for the VxWorks
# This has been tested with VxWorks 6.9 only
@if vxworks:
  # For now we only support compiling RTPs applications (i.e. no DKMs)
  gcc.options.always = "-mrtp -fno-strict-aliasing -D_C99 -D_HAS_C9X -std=c99 -fasm -Wall -Wno-write-strings"
  # The linker config must add the VxWorks common library for the selected
  # processor which is usually found in:
  # "$WIND_BASE/target/lib/usr/lib/PROCESSOR_FAMILY/PROCESSOR_TYPE/common",
  # where PROCESSOR_FAMILY and PROCESSOR_TYPE are those supported by the VxWorks
  # compiler (e.g. ppc/PPC32 or mips/MIPSI64, etc)
  # For now we only support the PowerPC CPU
  gcc.options.linker %= "-L $WIND_BASE/target/lib/usr/lib/ppc/PPC32/common -mrtp -fno-strict-aliasing -D_C99 -D_HAS_C9X -std=c99 -fasm -Wall -Wno-write-strings"
@end

gcc.options.speed = "-O3 -fno-strict-aliasing"
gcc.options.size = "-Os"
@if windows:
  gcc.options.debug = "-g3 -O0 -gdwarf-3"
@else:
  gcc.options.debug = "-g3 -O0"
@end
gcc.cpp.options.speed = "-O3 -fno-strict-aliasing"
gcc.cpp.options.size = "-Os"
gcc.cpp.options.debug = "-g3 -O0"
#passl = "-pg"

# Configuration for the LLVM GCC compiler:
llvm_gcc.options.debug = "-g"
llvm_gcc.options.always = "-w"
llvm_gcc.options.speed = "-O2"
llvm_gcc.options.size = "-Os"

# Configuration for the LLVM CLang compiler:
clang.options.debug = "-g"
clang.options.always = "-w"
clang.options.speed = "-O3"
clang.options.size = "-Os"

# Configuration for the Visual C/C++ compiler:
vcc.exe = "vccexe.exe"
vcc.linkerexe = "vccexe.exe"

# set the options for specific platforms:
@if i386:
vcc.options.always = "--platform:x86 /nologo"
vcc.options.linker = "--platform:x86 /nologo /DEBUG /Zi /F33554432" # set the stack size to 8 MB
@elif amd64:
vcc.options.always = "--platform:amd64 /nologo"
vcc.options.linker = "--platform:amd64 /nologo /DEBUG /Zi /F33554432" # set the stack size to 8 MB
@elif arm:
vcc.options.always = "--platform:arm /nologo"
vcc.options.linker = "--platform:arm /nologo /DEBUG /Zi /F33554432" # set the stack size to 8 MB
@else:
vcc.options.always = "/nologo"
vcc.options.linker = "/nologo /DEBUG /Zi /F33554432" # set the stack size to 8 MB
@end

vcc.options.debug = "/Zi /FS /Od"
vcc.options.speed = "/O2"
vcc.options.size = "/O1"

# Configuration for the Tiny C Compiler:
tcc.options.always = "-w"<commit_msg>nim.cfg: update comments about the stack size to match reality (#5206)<commit_after># Configuration file for the Nim Compiler.
# (c) 2015 <NAME>

# Feel free to edit the default values as you need.

# You may set environment variables with
# @putenv "key" "val"
# Environment variables can be accessed like so:
#  gcc.path %= "$CC_PATH"

cc = gcc

# additional options always passed to the compiler:
--parallel_build: "0" # 0 to auto-detect number of processors

hint[LineTooLong]=off
#hint[XDeclaredButNotUsed]=off

# example of how to setup a cross-compiler:
arm.linux.gcc.exe = "arm-linux-gcc"
arm.linux.gcc.linkerexe = "arm-linux-gcc"

mips.linux.gcc.exe = "mips-openwrt-linux-gcc"
mips.linux.gcc.linkerexe = "mips-openwrt-linux-gcc"

path="$lib/deprecated/core"
path="$lib/deprecated/pure"
path="$lib/pure/collections"
path="$lib/pure/concurrency"
path="$lib/impure"
path="$lib/wrappers"
path="$lib/wrappers/linenoise"
path="$lib/windows"
path="$lib/posix"
path="$lib/js"
path="$lib/pure/unidecode"
path="$lib/arch"
path="$lib/core"
path="$lib/pure"

@if nimbabel:
  nimblepath="$home/.nimble/pkgs/"
  @if not windows:
    nimblepath="/opt/nimble/pkgs/"
  @else:
    # TODO:
  @end
@end

@if release or quick:
  obj_checks:off
  field_checks:off
  range_checks:off
  bound_checks:off
  overflow_checks:off
  assertions:off
  stacktrace:off
  linetrace:off
  debugger:off
  line_dir:off
  dead_code_elim:on
@end

@if release:
  opt:speed
@end

@if unix:
  @if not bsd or haiku:
    # -fopenmp
    gcc.options.linker = "-ldl"
    gcc.cpp.options.linker = "-ldl"
    clang.options.linker = "-ldl"
    clang.cpp.options.linker = "-ldl"
    tcc.options.linker = "-ldl"
  @end
  @if bsd or haiku:
    # BSD got posix_spawn only recently, so we deactivate it for osproc:
    define:useFork
    # at least NetBSD has problems with thread local storage:
    tlsEmulation:on
  @end
  @if haiku:
    # -fopenmp
    gcc.options.linker = "-lroot -lnetwork"
    gcc.cpp.options.linker = "-lroot -lnetwork"
    clang.options.linker = "-lroot -lnetwork"
    clang.cpp.options.linker = "-lroot -lnetwork"
    tcc.options.linker = "-lroot -lnetwork"
  @end
@end

# Configuration for the Intel C/C++ compiler:
@if windows:
  icl.options.speed = "/Ox /arch:SSE2"
  icl.options.always = "/nologo"
@end

# Configuration for the GNU C/C++ compiler:
@if windows:
  #gcc.path = r"$nim\dist\mingw\bin"
  @if gcc:
    tlsEmulation:on
  @end
@end

@if macosx or freebsd:
  cc = clang
  tlsEmulation:on
  gcc.options.always = "-w"
  gcc.cpp.options.always = "-w -fpermissive"
@else:
  gcc.options.always = "-w"
  gcc.cpp.options.always = "-w -fpermissive"
@end

# Configuration for Objective-C compiler:
#
# Options for GNUStep. GNUStep configuration varies wildly, so you'll probably
# have to add additional compiler and linker flags on a per-project basis.
gcc.objc.options.linker = "-lobjc -lgnustep-base"
llvm_gcc.objc.options.linker = "-lobjc -lgnustep-base"
clang.objc.options.linker = "-lobjc -lgnustep-base"

# Options for Mac OS X. Mac OS X uses its own Objective-C stack that is
# totally different from GNUStep.
@if macosx:
  gcc.objc.options.linker = "-framework Foundation"
  llvm_gcc.objc.options.linker = "-framework Foundation"
  clang.objc.options.linker = "-framework Foundation"
@end

# Options for FreeBSD, OpenBSD, NetBSD linker to add locations for searching
# shared libraries.
@if freebsd or openbsd or netbsd:
  gcc.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
  gcc.cpp.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
  llvm_gcc.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
  llvm_gcc.cpp.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
  clang.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
  clang.cpp.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
@end

# Configuration for the VxWorks
# This has been tested with VxWorks 6.9 only
@if vxworks:
  # For now we only support compiling RTPs applications (i.e. no DKMs)
  gcc.options.always = "-mrtp -fno-strict-aliasing -D_C99 -D_HAS_C9X -std=c99 -fasm -Wall -Wno-write-strings"
  # The linker config must add the VxWorks common library for the selected
  # processor which is usually found in:
  # "$WIND_BASE/target/lib/usr/lib/PROCESSOR_FAMILY/PROCESSOR_TYPE/common",
  # where PROCESSOR_FAMILY and PROCESSOR_TYPE are those supported by the VxWorks
  # compiler (e.g. ppc/PPC32 or mips/MIPSI64, etc)
  # For now we only support the PowerPC CPU
  gcc.options.linker %= "-L $WIND_BASE/target/lib/usr/lib/ppc/PPC32/common -mrtp -fno-strict-aliasing -D_C99 -D_HAS_C9X -std=c99 -fasm -Wall -Wno-write-strings"
@end

gcc.options.speed = "-O3 -fno-strict-aliasing"
gcc.options.size = "-Os"
@if windows:
  gcc.options.debug = "-g3 -O0 -gdwarf-3"
@else:
  gcc.options.debug = "-g3 -O0"
@end
gcc.cpp.options.speed = "-O3 -fno-strict-aliasing"
gcc.cpp.options.size = "-Os"
gcc.cpp.options.debug = "-g3 -O0"
#passl = "-pg"

# Configuration for the LLVM GCC compiler:
llvm_gcc.options.debug = "-g"
llvm_gcc.options.always = "-w"
llvm_gcc.options.speed = "-O2"
llvm_gcc.options.size = "-Os"

# Configuration for the LLVM CLang compiler:
clang.options.debug = "-g"
clang.options.always = "-w"
clang.options.speed = "-O3"
clang.options.size = "-Os"

# Configuration for the Visual C/C++ compiler:
vcc.exe = "vccexe.exe"
vcc.linkerexe = "vccexe.exe"

# set the options for specific platforms:
@if i386:
vcc.options.always = "--platform:x86 /nologo"
vcc.options.linker = "--platform:x86 /nologo /DEBUG /Zi /F33554432" # set the stack size to 32 MiB
@elif amd64:
vcc.options.always = "--platform:amd64 /nologo"
vcc.options.linker = "--platform:amd64 /nologo /DEBUG /Zi /F33554432" # set the stack size to 32 MiB
@elif arm:
vcc.options.always = "--platform:arm /nologo"
vcc.options.linker = "--platform:arm /nologo /DEBUG /Zi /F33554432" # set the stack size to 32 MiB
@else:
vcc.options.always = "/nologo"
vcc.options.linker = "/nologo /DEBUG /Zi /F33554432" # set the stack size to 32 MiB
@end

vcc.options.debug = "/Zi /FS /Od"
vcc.options.speed = "/O2"
vcc.options.size = "/O1"

# Configuration for the Tiny C Compiler:
tcc.options.always = "-w"
{'fraction_non_alphanumeric': 0.14779394036807844, 'fraction_numerical': 0.017519890701599292, 'mean_word_length': 3.688771665410701, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6459925', 'n_tokens_mistral': 5120, 'n_tokens_neox': 4824, 'n_words': 1157}