Work on documentation for build.py, also add checkout step.
This commit is contained in:
66
build.py
66
build.py
@@ -1,17 +1,41 @@
|
||||
#!/usr/bin/python3
|
||||
#
|
||||
# This build script can be run in three modes:
|
||||
# The one-and-only build script for luprex.
|
||||
# Do not follow any of the build instructions on the Unreal Engine
|
||||
# websites! Instead, use these instructions.
|
||||
#
|
||||
# build.py all - rebuilds everything
|
||||
# build.py c++ - works when you've only edited c++ code
|
||||
# build.py clean - remove some build products
|
||||
#
|
||||
# If you clone the UnrealEngine and integration repositories,
|
||||
# and then run "build.py all", this will build both unreal engine and
|
||||
# integration. It will also build project files for vscode, an
|
||||
# intellisense database, and several other things. Once it is done,
|
||||
# you can start up vscode using 'code Integration.code-workspace'.
|
||||
# Then, you can run our game in the vscode debugger.
|
||||
# HOW TO BUILD THE FIRST TIME
|
||||
#
|
||||
# First, install the following software:
|
||||
#
|
||||
# apt-get install git-lfs
|
||||
# apt-get install code
|
||||
# apt-get install dotnet6
|
||||
# apt-get install clangd-15 or better.
|
||||
#
|
||||
# Then, git clone the UnrealEngine and integration repositories:
|
||||
#
|
||||
# cd $HOME
|
||||
# git clone https://github.com/EpicGames/UnrealEngine.git
|
||||
# git clone https://www.gnaut.com/team/integration.git
|
||||
#
|
||||
# It is important that these two repositories be located
|
||||
# at $HOME/UnrealEngine and $HOME/integration.
|
||||
#
|
||||
# Of course, you will have to jump through a bunch of hoops to
|
||||
# get access to these repositories. See the instructions on the
|
||||
# unreal engine website.
|
||||
#
|
||||
# After cloning the two repositories, change directory into
|
||||
# the "integration" repository and run "build.py all".
|
||||
# This will build both unreal engine and integration. It will
|
||||
# also build project files for vscode, an intellisense database,
|
||||
# and several other things. Once it is done, everything is built.
|
||||
# You can start up the debugger.
|
||||
#
|
||||
#
|
||||
# HOW TO REBUILD WHEN YOU'VE EDITED SOMETHING
|
||||
#
|
||||
# You can also use "build.py all" to rebuild. This is the preferred
|
||||
# way to rebuild when you aren't sure what's been edited. However,
|
||||
@@ -26,12 +50,22 @@
|
||||
# anything else, you need to use "build.py all" to rebuild.
|
||||
#
|
||||
# Editing Lua or Blueprint code doesn't require any kind of rebuild.
|
||||
#
|
||||
#
|
||||
# USING VISUAL STUDIO CODE
|
||||
#
|
||||
# We have a "build.py clean", but it hasn't gotten a lot of love.
|
||||
# I honestly have no idea what it removes and what it doesn't.
|
||||
# To start up vscode, change directory to the integration repository,
|
||||
# and run "code Integration.code-workspace". From inside vscode, you can
|
||||
# use Terminal/Run_Build_Task to run "build.py all" or "build.py c++".
|
||||
# You can also select Run/Start_Debugging to launch the game.
|
||||
#
|
||||
# The first time you launch vscode, you will see a popup about
|
||||
# recommended extensions. These are actually recommended by this
|
||||
# script, build.py, so they're actually good recommendations. Install
|
||||
# them: you will only have to do this once.
|
||||
#
|
||||
|
||||
|
||||
import sys, os, json, shutil, subprocess, re, time, tarfile, itertools, hashlib
|
||||
from pathlib import Path
|
||||
from types import SimpleNamespace
|
||||
@@ -176,6 +210,13 @@ def store_system_config_in_globals(config):
|
||||
# The actual build steps.
|
||||
#
|
||||
|
||||
def checkout_correct_unreal_engine_branch():
|
||||
"""
|
||||
This is the version of Unreal Engine that we're currently using.
|
||||
"""
|
||||
shell(UNREALENGINE, "git checkout 5.3.1-release")
|
||||
|
||||
|
||||
def generate_buildconfiguration_xml():
|
||||
"""
|
||||
Generates BuildConfiguration.xml. We actually have two versions of this
|
||||
@@ -338,6 +379,7 @@ store_system_config_in_globals(CONFIG)
|
||||
os.chdir(f"{INTEGRATION}/EnginePatches")
|
||||
|
||||
if MODE == "all":
|
||||
checkout_correct_unreal_engine_branch()
|
||||
generate_buildconfiguration_xml()
|
||||
generate_lpx_paths()
|
||||
patch_unrealengine_source_code()
|
||||
|
||||
Reference in New Issue
Block a user