]> git.xonotic.org Git - xonotic/xonotic.wiki.git/blob - SMB-modpack.md
Update Compiling: add libtool dependency
[xonotic/xonotic.wiki.git] / SMB-modpack.md
1 **[SMB modpack](https://github.com/MarioSMB/modpack)** project is developed by **[Mario](https://github.com/MarioSMB)**.
2
3 The modpack build works using a submodule from '_xonotic-dat.pk3dir_' from the official gamelogic development repository.
4
5 Uses **update.sh** and **build.sh** shell script files. 
6
7 # How submodule works, ./update.sh and ./build.sh
8
9 Uses '_update.sh_' to obtain the content of '_gmqcc_', '_xonotic-data.pk3dir_' in '_xonotic_' folder and '_csprogs_' in '_.cache_' folder. Clearly, needs gmqcc to be able to compile, this means that '_build.sh_' calls gmqcc to compile the code.
10
11 ## Submodule and ./update.sh
12
13 The submodule of this modpack was created using: 
14
15 `git submodule add https://gitlab.com/xonotic/xonotic-data.pk3dir xonotic`
16
17 The submodule in the repository is used when need to update the code from '_xonotic-data.pk3dir_', to do this if you've a fork or a copy of SMB modpack repository, you'll have to update using (note: in your local computer, you should have used '_./update.sh_' to download fully the content of '_xonotic-data.pk3dir_' in '_xonotic_' folder):
18
19 `git submodule update --remote --merge`
20
21 It'll update the content where is in the official gamelogic development repository in your modpack repository.
22
23 Inside '_update.sh_', there is a line: 
24
25 `git submodule update --init --depth 100`
26
27 Means that when you use '_./update.sh_' with this line, the submodule content will be downloaded in your local computer where you've cloned the modpack repository.
28
29 ### Commit with submodule
30
31 Additionally, after done `git submodule update --remote --merge`, if you want to commit:
32
33 `git status`
34
35 `git add xonotic`
36
37 `git commit -m "Update submodule xonotic test"`
38
39 `git push origin master #depends what origin and what branch of repository you're using to do your commits`
40
41 ## ./build.sh
42
43 '_./build.sh_' compiles all repository code using gmqcc if already downloaded from '_./update.sh_', looks inside '_mod_' folder the similar contents of '_xonotic-data.pk3dir/qcsrc_' where there are: '_client_', '_common_', '_menu_' and '_server_' folders.
44
45 What this does is relate the directory path to the submodule '_xonotic_' directory inside the '_qcsrc_' folder. Thanks to this, makes possible to look at the '_mod_' folder having to relate the submodule directory '_xonotic/qcsrc_'.