mirror of
https://github.com/decompme/decomp.me.git
synced 2026-02-20 13:29:14 -06:00
5.3 C++ (#706)
* 5.3 c++ * black * tmp * Update sandbox.py * mount /tmp as bindmout * Update sandbox.py
This commit is contained in:
@@ -412,6 +412,18 @@ def download_n64():
|
||||
dest_name="ido6.0",
|
||||
)
|
||||
|
||||
dest = COMPILERS_DIR / "ido5.3_c++"
|
||||
if dest.is_dir():
|
||||
print(f"{dest} already exists, skipping")
|
||||
else:
|
||||
dest.mkdir()
|
||||
download_tar(
|
||||
url="https://github.com/LLONSIT/qemu-irix-helpers/raw/n/qemu/ido5.3_c++.tar.xz",
|
||||
mode="r:xz",
|
||||
dl_name="ido5.3_c++" + ".tar.xz",
|
||||
dest_name="ido5.3_c++",
|
||||
)
|
||||
|
||||
# SN
|
||||
dest = COMPILERS_DIR / "gcc2.7.2sn"
|
||||
if dest.is_dir():
|
||||
|
||||
@@ -44,6 +44,7 @@ COMPILER_BASE_PATH: Path = settings.COMPILER_BASE_PATH
|
||||
|
||||
class Language(enum.Enum):
|
||||
C = "C"
|
||||
OLD_CXX = "C++"
|
||||
CXX = "C++"
|
||||
PASCAL = "Pascal"
|
||||
|
||||
@@ -51,6 +52,7 @@ class Language(enum.Enum):
|
||||
return {
|
||||
Language.C: "c",
|
||||
Language.CXX: "cpp",
|
||||
Language.OLD_CXX: "c++",
|
||||
Language.PASCAL: "p",
|
||||
}[self]
|
||||
|
||||
@@ -425,6 +427,14 @@ IDO53_IRIX = IDOCompiler(
|
||||
base_id="ido5.3",
|
||||
)
|
||||
|
||||
IDO53_CXX_IRIX = IDOCompiler(
|
||||
id="ido5.3_c++_irix",
|
||||
platform=IRIX,
|
||||
cc='"${COMPILER_DIR}"/usr/bin/qemu-irix -L "${COMPILER_DIR}" "${COMPILER_DIR}/usr/lib/CC" -I "${COMPILER_DIR}"/usr/include -c -Xcpluscomm -G0 -non_shared -woff 649,838,712 -32 ${COMPILER_FLAGS} -o "${OUTPUT}" "${INPUT}"',
|
||||
base_id="ido5.3_c++",
|
||||
language=Language.OLD_CXX,
|
||||
)
|
||||
|
||||
IDO53PASCAL = IDOCompiler(
|
||||
id="ido5.3Pascal",
|
||||
platform=IRIX,
|
||||
@@ -463,6 +473,14 @@ IDO53 = IDOCompiler(
|
||||
cc='USR_LIB="${COMPILER_DIR}" "${COMPILER_DIR}/cc" -c -Xcpluscomm -G0 -non_shared -Wab,-r4300_mul -woff 649,838,712 -32 ${COMPILER_FLAGS} -o "${OUTPUT}" "${INPUT}"',
|
||||
)
|
||||
|
||||
IDO53_CXX = IDOCompiler(
|
||||
id="ido5.3_c++",
|
||||
platform=N64,
|
||||
cc='"${COMPILER_DIR}"/usr/bin/qemu-irix -L "${COMPILER_DIR}" "${COMPILER_DIR}/usr/lib/CC" -I "{COMPILER_DIR}"/usr/include -c -Xcpluscomm -G0 -non_shared -woff 649,838,712 -32 ${COMPILER_FLAGS} -o "${OUTPUT}" "${INPUT}"',
|
||||
base_id="ido5.3_c++",
|
||||
language=Language.OLD_CXX,
|
||||
)
|
||||
|
||||
IDO71 = IDOCompiler(
|
||||
id="ido7.1",
|
||||
platform=N64,
|
||||
@@ -868,6 +886,7 @@ _all_compilers: List[Compiler] = [
|
||||
MWCPS2_30B22_020926,
|
||||
# N64
|
||||
IDO53,
|
||||
IDO53_CXX,
|
||||
IDO60,
|
||||
IDO71,
|
||||
GCC272KMC,
|
||||
@@ -878,6 +897,7 @@ _all_compilers: List[Compiler] = [
|
||||
EGCS1124,
|
||||
# IRIX
|
||||
IDO53_IRIX,
|
||||
IDO53_CXX_IRIX,
|
||||
IDO53PASCAL,
|
||||
IDO60_IRIX,
|
||||
IDO71_IRIX,
|
||||
|
||||
@@ -66,6 +66,7 @@ class Sandbox(contextlib.AbstractContextManager["Sandbox"]):
|
||||
"--bindmount_ro", "/lib64",
|
||||
"--bindmount_ro", "/usr",
|
||||
"--bindmount_ro", "/proc",
|
||||
"--bindmount", f"{self.path}:/var/tmp",
|
||||
"--bindmount_ro", str(settings.COMPILER_BASE_PATH),
|
||||
"--env", "PATH=/usr/bin:/bin",
|
||||
"--cwd", "/tmp",
|
||||
|
||||
@@ -37,10 +37,12 @@
|
||||
"gcc2.8.1sn-cxx": "GCC 2.8.1 (SN) (C++)",
|
||||
"gcc2.8.1": "GCC 2.8.1",
|
||||
"ido5.3_irix": "IDO 5.3",
|
||||
"ido5.3_c++_irix": "IDO 5.3 C++",
|
||||
"ido6.0_irix": "IDO 6.0",
|
||||
"ido6.0": "IDO 6.0",
|
||||
"ido7.1_irix": "IDO 7.1",
|
||||
"ido5.3": "IDO 5.3",
|
||||
"ido5.3_c++": "IDO 5.3 C++",
|
||||
"ido5.3Pascal": "IDO 5.3 Pascal",
|
||||
"ido7.1": "IDO 7.1",
|
||||
"ido7.1Pascal": "IDO 7.1 Pascal",
|
||||
|
||||
Reference in New Issue
Block a user