Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,10 @@ If you are interested to participate, ensure to read first our contribution guid
* [How to commit your code](https://github.com/etlegacy/etlegacy/wiki/How-to-commit-Your-Code)
* [Coding conventions](https://github.com/etlegacy/etlegacy/wiki/Coding-Conventions)

## PULL REQUESTS

Rebase onto **current `main`** before review, and avoid PRs that would **revert** unrelated landed changes. Close obsolete PRs that are superseded or remain **unmergeable** after a rebase.

## UPSTREAM AND FORKS

To pull the latest changes from the main ET: Legacy repository without merging yet:
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,10 @@ GitHub Actions on **`main`** / **`master`** run **[`.github/workflows/ci.yml`](.

Forks without **`LEGACY_CI_WEBHOOK`** still get a full CI signal; the optional Discord notify step is skipped when that secret is unset. The **`check-compiler-warnings`** job scans native build logs for new compiler warnings in game code; **Android** and **Windows** (`win` / `win64`) logs are treated as informational only (see `misc/collect-and-check-gh-build-logs.py`).

**Pull request hygiene:** Before merging, confirm the branch is **rebased on current `main`** and does not revert unrelated work. Close or update stale PRs that show **merge conflicts** against `main`.

**Measuring filesystem startup:** Use **`+set fs_startupTiming 1`** on the command line (or set `fs_startupTiming` to `1` in the console before a full FS re-init). The log prints **`FS startup wall time: N ms`** after pk3 search paths are built. For per-frame timing once running, use **`com_speeds`**.

## Development helpers

[Pixi](https://pixi.sh/) workspace: **`pixi.toml`**.
Expand Down
15 changes: 12 additions & 3 deletions src/qcommon/files.c
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,7 @@ typedef struct searchpath_s
*/
char fs_gamedir[MAX_OSPATH];
static cvar_t *fs_debug;
static cvar_t *fs_startupTiming;
static cvar_t *fs_homepath;
static cvar_t *fs_basepath;
static cvar_t *fs_basegame;
Expand Down Expand Up @@ -4502,14 +4503,17 @@ static void FS_Startup(const char *gameName)
{
const char *homePath;
int i;
int fs_startup_begin_ms;

Com_Printf("----- Initializing Filesystem --\n");

fs_packFiles = 0;

fs_debug = Cvar_Get("fs_debug", "0", 0);
fs_basepath = Cvar_Get("fs_basepath", Sys_DefaultInstallPath(), CVAR_INIT | CVAR_PROTECTED);
fs_basegame = Cvar_Get("fs_basegame", "", CVAR_INIT | CVAR_PROTECTED);
fs_debug = Cvar_Get("fs_debug", "0", 0);
fs_startupTiming = Cvar_Get("fs_startupTiming", "0", CVAR_TEMP);
fs_startup_begin_ms = Sys_Milliseconds();
fs_basepath = Cvar_Get("fs_basepath", Sys_DefaultInstallPath(), CVAR_INIT | CVAR_PROTECTED);
fs_basegame = Cvar_Get("fs_basegame", "", CVAR_INIT | CVAR_PROTECTED);

homePath = Sys_DefaultHomePath();

Expand Down Expand Up @@ -4615,6 +4619,11 @@ static void FS_Startup(const char *gameName)

#endif // ifndef DEDICATED

if (fs_startupTiming->integer)
{
Com_Printf("FS startup wall time: %i ms\n", Sys_Milliseconds() - fs_startup_begin_ms);
}

Com_Printf("--------------------------------\n");
}

Expand Down
Loading