mirror of https://github.com/zeldaret/tp.git
Merge pull request #255 from DRK-512/master
Automated setup implementation
This commit is contained in:
commit
7343cc7d3f
|
|
@ -19,4 +19,4 @@ RUN sudo ./install-devkitpro-pacman
|
|||
RUN sudo dkp-pacman -Syu --noconfirm
|
||||
WORKDIR /etc
|
||||
RUN sudo ln -sf /proc/self/mounts mtab
|
||||
RUN sudo dkp-pacman -S --noconfirm gamecube-dev wii-dev
|
||||
RUN sudo dkp-pacman -S --noconfirm gamecube-dev wii-dev
|
||||
|
|
|
|||
2
Makefile
2
Makefile
|
|
@ -180,7 +180,7 @@ $(ELF_SHIFT): $(DOL)
|
|||
$(DOL_SHIFT): $(ELF_SHIFT) | tools
|
||||
$(ELF2DOL) $< $@ $(SDATA_PDHR) $(SBSS_PDHR) $(TARGET_COL)
|
||||
@cp -v $(DOL_SHIFT) $(DOL)
|
||||
|
||||
|
||||
shift: dirs $(DOL_SHIFT)
|
||||
|
||||
game: shift
|
||||
|
|
|
|||
20
README.md
20
README.md
|
|
@ -22,23 +22,9 @@ Project Setup
|
|||
git clone https://github.com/zeldaret/tp
|
||||
```
|
||||
|
||||
2. Setup compiler directory
|
||||
2. Place a copy of NTSC-U GCN Twilight Princess in the root directory and call it `gz2e01.iso` (find this on your own)
|
||||
|
||||
```bash
|
||||
mkdir -p tools/mwcc_compiler/
|
||||
```
|
||||
|
||||
3. Download [GC_WII_COMPILERS.zip](https://cdn.discordapp.com/attachments/727918646525165659/917185027656286218/GC_WII_COMPILERS.zip).
|
||||
|
||||
4. Extract `GC_WII_COMPILERS.zip` into the previously created `mwcc_compiler` directory
|
||||
|
||||
```bash
|
||||
unzip GC_WII_COMPILERS.zip "GC/*" -d tools/mwcc_compiler/ && mv tools/mwcc_compiler/GC/* tools/mwcc_compiler/ && rmdir tools/mwcc_compiler/GC
|
||||
```
|
||||
|
||||
5. Place a copy of NTSC-U GCN Twilight Princess in the root directory and call it `gz2e01.iso` (find this on your own)
|
||||
|
||||
6. Setup the project
|
||||
3. Then run the setup script
|
||||
|
||||
```bash
|
||||
./tp setup
|
||||
|
|
@ -140,4 +126,4 @@ tp/
|
|||
├── include_link.mk # Makefiles to include in the main Makefile.
|
||||
├── obj_files.mk # Object files to include in the main Makefile.
|
||||
└── tp # Bash script used to call the main tp python script in tools directory.
|
||||
```
|
||||
```
|
||||
|
|
|
|||
|
|
@ -7,4 +7,7 @@ ansiwrap
|
|||
watchdog
|
||||
python-Levenshtein
|
||||
cxxfilt
|
||||
pyelftools
|
||||
pyelftools
|
||||
requests
|
||||
zipfile
|
||||
shutil
|
||||
29
tools/tp.py
29
tools/tp.py
|
|
@ -28,6 +28,9 @@ try:
|
|||
import libarc
|
||||
import io
|
||||
import extract_game_assets
|
||||
import requests
|
||||
import zipfile
|
||||
import shutil
|
||||
|
||||
from rich.logging import RichHandler
|
||||
from rich.console import Console
|
||||
|
|
@ -145,19 +148,29 @@ def setup(debug: bool, game_path: Path, tools_path: Path):
|
|||
sys.exit(1)
|
||||
|
||||
#
|
||||
text = Text("--- Patching compiler")
|
||||
text = Text("--- Fetching compiler")
|
||||
text.stylize("bold magenta")
|
||||
CONSOLE.print(text)
|
||||
|
||||
compilers = tools_path.joinpath("mwcc_compiler")
|
||||
if not compilers.exists() or not compilers.is_dir():
|
||||
LOG.error(
|
||||
(
|
||||
f"Unable to find MWCC compilers: missing directory '{compilers}'\n"
|
||||
f"Check the README for instructions on how to obtain the compilers"
|
||||
)
|
||||
)
|
||||
sys.exit(1)
|
||||
os.mkdir(compilers)
|
||||
r = requests.get('https://cdn.discordapp.com/attachments/727918646525165659/917185027656286218/GC_WII_COMPILERS.zip')
|
||||
z = zipfile.ZipFile(io.BytesIO(r.content))
|
||||
z.extractall(compilers)
|
||||
gc_path = compilers.joinpath("GC")
|
||||
|
||||
allfiles = os.listdir(gc_path)
|
||||
for f in allfiles:
|
||||
src_path = os.path.join(gc_path, f)
|
||||
dst_path = os.path.join(compilers, f)
|
||||
shutil.move(src_path, dst_path)
|
||||
os.rmdir(gc_path)
|
||||
|
||||
#
|
||||
text = Text("--- Patching compiler")
|
||||
text.stylize("bold magenta")
|
||||
CONSOLE.print(text)
|
||||
|
||||
c27 = compilers.joinpath("2.7")
|
||||
if not c27.exists() or not c27.is_dir():
|
||||
|
|
|
|||
Loading…
Reference in New Issue