mirror of
https://github.com/ModOrganizer2/mob.git
synced 2026-07-27 14:07:05 -07:00
Compare commits
74
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9f97e0f1c7 | ||
|
|
621daac2ec | ||
|
|
044a158340 | ||
|
|
c29b1adca1 | ||
|
|
ec6bb2a177 | ||
|
|
bd6a03d2f8 | ||
|
|
1087129aac | ||
|
|
237bd6ab5e | ||
|
|
b6d75fd1a3 | ||
|
|
c9882c7d99 | ||
|
|
41bb2a3032 | ||
|
|
0d6a130ef8 | ||
|
|
b3c66b3221 | ||
|
|
9f1b33f3bd | ||
|
|
ec429c01d6 | ||
|
|
eba5bf49bd | ||
|
|
a308e75cf8 | ||
|
|
f99e777433 | ||
|
|
ecd210d700 | ||
|
|
d1965acd1a | ||
|
|
27483d6ddc | ||
|
|
73d7d3dd2b | ||
|
|
11dafd063b | ||
|
|
b0688f81b9 | ||
|
|
eaae1e44c9 | ||
|
|
0cb5771762 | ||
|
|
5ca1a76ff8 | ||
|
|
a03d95fef4 | ||
|
|
a835d167b2 | ||
|
|
bd4f529078 | ||
|
|
6b1b8ef6ea | ||
|
|
6cee3f2411 | ||
|
|
80618cd3e1 | ||
|
|
5ff7221b80 | ||
|
|
144548aef5 | ||
|
|
cdc666a1d5 | ||
|
|
2816871e93 | ||
|
|
1b05181858 | ||
|
|
b2eae1bd23 | ||
|
|
13ed5bcd26 | ||
|
|
29eb8a7598 | ||
|
|
7e08ce29c0 | ||
|
|
9fdf00417b | ||
|
|
ac15674069 | ||
|
|
b31d41b539 | ||
|
|
09886da058 | ||
|
|
e03ea3854d | ||
|
|
fe710715aa | ||
|
|
d7061cc18c | ||
|
|
e935d9adde | ||
|
|
d0913d07d3 | ||
|
|
6b51c170c1 | ||
|
|
a4213dd4c6 | ||
|
|
9ebabacc32 | ||
|
|
70983cb2e7 | ||
|
|
d61079e1f6 | ||
|
|
76e8c56235 | ||
|
|
10db7fe1a5 | ||
|
|
8afb96c229 | ||
|
|
66539d7f1f | ||
|
|
5f7c5eb1a2 | ||
|
|
886dadfedb | ||
|
|
66daf5054b | ||
|
|
9aec5a70a8 | ||
|
|
42aef59f9e | ||
|
|
7d1fdce8b5 | ||
|
|
45508c3d99 | ||
|
|
5cb43da0e5 | ||
|
|
858662e225 | ||
|
|
a30dd8399b | ||
|
|
3e4b31aebb | ||
|
|
e3401732c1 | ||
|
|
6284f7869f | ||
|
|
95fa410e45 |
@@ -0,0 +1 @@
|
||||
d0913d07d33929d7b753a3a09a0dac70e5befbc1
|
||||
@@ -0,0 +1,16 @@
|
||||
name: Build Mob
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: master
|
||||
pull_request:
|
||||
types: [opened, synchronize, reopened]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: windows-2022
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Build Mob
|
||||
shell: pwsh
|
||||
run: ./bootstrap.ps1 -Verbose
|
||||
@@ -0,0 +1,17 @@
|
||||
name: Lint Mob
|
||||
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
types: [opened, synchronize, reopened]
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Check format
|
||||
uses: ModOrganizer2/check-formatting-action@master
|
||||
with:
|
||||
check-path: "."
|
||||
exclude-regex: "third-party"
|
||||
@@ -0,0 +1,25 @@
|
||||
repos:
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v5.0.0
|
||||
hooks:
|
||||
- id: trailing-whitespace
|
||||
exclude: '^(third-party|licenses)/.*$'
|
||||
- id: end-of-file-fixer
|
||||
exclude: '^(third-party|licenses)/.*$'
|
||||
- id: check-merge-conflict
|
||||
exclude: '^(third-party|licenses)/.*$'
|
||||
- id: check-case-conflict
|
||||
exclude: '^(third-party|licenses)/.*$'
|
||||
- repo: https://github.com/pre-commit/mirrors-clang-format
|
||||
rev: v19.1.5
|
||||
hooks:
|
||||
- id: clang-format
|
||||
'types_or': [c++, c]
|
||||
exclude: '^third-party/.*$'
|
||||
|
||||
ci:
|
||||
autofix_commit_msg: "[pre-commit.ci] Auto fixes from pre-commit.com hooks."
|
||||
autofix_prs: true
|
||||
autoupdate_commit_msg: "[pre-commit.ci] Pre-commit autoupdate."
|
||||
autoupdate_schedule: quarterly
|
||||
submodules: false
|
||||
@@ -0,0 +1,6 @@
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
|
||||
project(mob)
|
||||
add_subdirectory(src)
|
||||
|
||||
set_property(DIRECTORY ${PROJECT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT mob)
|
||||
+21
-6
@@ -1,8 +1,20 @@
|
||||
param(
|
||||
[switch]
|
||||
$Verbose,
|
||||
[ValidateSet("Debug", "RelWithDebInfo", "Release")]
|
||||
[string]
|
||||
$Config = "Release"
|
||||
)
|
||||
|
||||
$root = $PSScriptRoot
|
||||
if (!$root) {
|
||||
$root = "."
|
||||
$root = "."
|
||||
}
|
||||
|
||||
$output = if ($Verbose) { "Out-Default" } else { "Out-Null" }
|
||||
|
||||
cmake -B $root/build -G "Visual Studio 17 2022" $root | & $output
|
||||
|
||||
$installationPath = & $root\third-party\bin\vswhere.exe -products * -nologo -prerelease -latest -property installationPath
|
||||
if (! $?) {
|
||||
Write-Error "vswhere returned $LastExitCode"
|
||||
@@ -15,13 +27,16 @@ if (! $installationPath) {
|
||||
}
|
||||
|
||||
$opts = ""
|
||||
$opts += " $root\vs\mob.sln"
|
||||
$opts += " $root\build\mob.sln"
|
||||
$opts += " -m"
|
||||
$opts += " -p:Configuration=Release"
|
||||
$opts += " -p:Configuration=${Config}"
|
||||
$opts += " -noLogo"
|
||||
$opts += " -p:UseMultiToolTask=true"
|
||||
$opts += " -p:EnforceProcessCountAcrossBuilds=true"
|
||||
$opts += " -clp:ErrorsOnly;Verbosity=minimal"
|
||||
|
||||
if (!$Verbose) {
|
||||
$opts += " -clp:ErrorsOnly;Verbosity=minimal"
|
||||
}
|
||||
|
||||
$vsDevCmd = "$installationPath\Common7\Tools\VsDevCmd.bat"
|
||||
if (!(Test-Path "$vsDevCmd")) {
|
||||
@@ -36,5 +51,5 @@ if (! $?) {
|
||||
exit $LastExitCode
|
||||
}
|
||||
|
||||
Copy-Item "$root\build\Release\x64\mob.exe" "$root\mob.exe"
|
||||
echo "run ``.\mob -d prefix/path build`` to start building"
|
||||
Copy-Item "$root\build\src\${Config}\mob.exe" "$root\mob.exe"
|
||||
Write-Output "run ``.\mob -d prefix/path build`` to start building"
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 7.5 KiB |
+110
-49
@@ -1,27 +1,28 @@
|
||||
7-Zip
|
||||
~~~~~
|
||||
7-Zip source code
|
||||
~~~~~~~~~~~~~~~~~
|
||||
License for use and distribution
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
7-Zip Copyright (C) 1999-2023 Igor Pavlov.
|
||||
7-Zip Copyright (C) 1999-2024 Igor Pavlov.
|
||||
|
||||
The licenses for files are:
|
||||
|
||||
1) 7z.dll:
|
||||
- The "GNU LGPL" as main license for most of the code
|
||||
- The "GNU LGPL" with "unRAR license restriction" for some code
|
||||
- The "BSD 3-clause License" for some code
|
||||
2) All other files: the "GNU LGPL".
|
||||
- CPP/7zip/Compress/Rar* files: the "GNU LGPL" with "unRAR license restriction"
|
||||
- CPP/7zip/Compress/LzfseDecoder.cpp: the "BSD 3-clause License"
|
||||
- C/ZstdDec.c: the "BSD 3-clause License"
|
||||
- C/Xxh64.c: the "BSD 2-clause License"
|
||||
- Some files are "public domain" files, if "public domain" status is stated in source file.
|
||||
- the "GNU LGPL" for all other files. If there is no license information in
|
||||
some source file, that file is under the "GNU LGPL".
|
||||
|
||||
Redistributions in binary form must reproduce related license information from this file.
|
||||
|
||||
Note:
|
||||
You can use 7-Zip on any computer, including a computer in a commercial
|
||||
organization. You don't need to register or pay for 7-Zip.
|
||||
The "GNU LGPL" with "unRAR license restriction" means that you must follow both
|
||||
"GNU LGPL" rules and "unRAR license restriction" rules.
|
||||
|
||||
|
||||
GNU LGPL information
|
||||
--------------------
|
||||
|
||||
|
||||
GNU LGPL information
|
||||
--------------------
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
@@ -33,58 +34,118 @@
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You can receive a copy of the GNU Lesser General Public License from
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not,
|
||||
you can get a copy of the GNU Lesser General Public License from
|
||||
http://www.gnu.org/
|
||||
|
||||
|
||||
|
||||
|
||||
BSD 3-clause License
|
||||
--------------------
|
||||
BSD 3-clause License in 7-Zip code
|
||||
----------------------------------
|
||||
|
||||
The "BSD 3-clause License" is used for the code in 7z.dll that implements LZFSE data decompression.
|
||||
That code was derived from the code in the "LZFSE compression library" developed by Apple Inc,
|
||||
that also uses the "BSD 3-clause License":
|
||||
The "BSD 3-clause License" is used for the following code in 7z.dll
|
||||
1) LZFSE data decompression.
|
||||
CPP/7zip/Compress/LzfseDecoder.cpp.
|
||||
That code was derived from the code in the "LZFSE compression library" developed by Apple Inc,
|
||||
that also uses the "BSD 3-clause License".
|
||||
2) ZSTD data decompression.
|
||||
C/ZstdDec.c
|
||||
that code was developed using original zstd decoder code as reference code.
|
||||
The original zstd decoder code was developed by Facebook Inc,
|
||||
that also uses the "BSD 3-clause License".
|
||||
|
||||
----
|
||||
Copyright (c) 2015-2016, Apple Inc. All rights reserved.
|
||||
Copyright (c) 2015-2016, Apple Inc. All rights reserved.
|
||||
Copyright (c) Facebook, Inc. All rights reserved.
|
||||
Copyright (c) 2023-2024 Igor Pavlov.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
||||
Text of the "BSD 3-clause License"
|
||||
----------------------------------
|
||||
|
||||
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
|
||||
Redistribution and use in source and binary forms, with or without modification,
|
||||
are permitted provided that the following conditions are met:
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer
|
||||
in the documentation and/or other materials provided with the distribution.
|
||||
1. Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
|
||||
3. Neither the name of the copyright holder(s) nor the names of any contributors may be used to endorse or promote products derived
|
||||
from this software without specific prior written permission.
|
||||
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
----
|
||||
3. Neither the name of the copyright holder nor the names of its contributors may
|
||||
be used to endorse or promote products derived from this software without
|
||||
specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
unRAR license restriction
|
||||
-------------------------
|
||||
BSD 2-clause License in 7-Zip code
|
||||
----------------------------------
|
||||
|
||||
The decompression engine for RAR archives was developed using source
|
||||
code of unRAR program.
|
||||
All copyrights to original unRAR code are owned by Alexander Roshal.
|
||||
The "BSD 2-clause License" is used for the XXH64 code in 7-Zip.
|
||||
C/Xxh64.c
|
||||
|
||||
The license for original unRAR code has the following restriction:
|
||||
XXH64 code in 7-Zip was derived from the original XXH64 code developed by Yann Collet.
|
||||
|
||||
The unRAR sources cannot be used to re-create the RAR compression algorithm,
|
||||
which is proprietary. Distribution of modified unRAR sources in separate form
|
||||
or as a part of other software is permitted, provided that it is clearly
|
||||
stated in the documentation and source comments that the code may
|
||||
not be used to develop a RAR (WinRAR) compatible archiver.
|
||||
Copyright (c) 2012-2021 Yann Collet.
|
||||
Copyright (c) 2023-2024 Igor Pavlov.
|
||||
|
||||
Text of the "BSD 2-clause License"
|
||||
----------------------------------
|
||||
|
||||
Redistribution and use in source and binary forms, with or without modification,
|
||||
are permitted provided that the following conditions are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
---
|
||||
|
||||
|
||||
--
|
||||
Igor Pavlov
|
||||
|
||||
|
||||
unRAR license restriction
|
||||
-------------------------
|
||||
|
||||
The decompression engine for RAR archives was developed using source
|
||||
code of unRAR program.
|
||||
All copyrights to original unRAR code are owned by Alexander Roshal.
|
||||
|
||||
The license for original unRAR code has the following restriction:
|
||||
|
||||
The unRAR sources cannot be used to re-create the RAR compression algorithm,
|
||||
which is proprietary. Distribution of modified unRAR sources in separate form
|
||||
or as a part of other software is permitted, provided that it is clearly
|
||||
stated in the documentation and source comments that the code may
|
||||
not be used to develop a RAR (WinRAR) compatible archiver.
|
||||
|
||||
--
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) Matthias Moeller 2016 m_moeller@live.de
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
Copyright (c) 2012 - present, Victor Zverovich
|
||||
Copyright (c) 2012 - present, Victor Zverovich and {fmt} contributors
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
|
||||
+170
-118
@@ -1,125 +1,177 @@
|
||||
|
||||
LICENSE ISSUES
|
||||
==============
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
https://www.apache.org/licenses/
|
||||
|
||||
The OpenSSL toolkit stays under a double license, i.e. both the conditions of
|
||||
the OpenSSL License and the original SSLeay license apply to the toolkit.
|
||||
See below for the actual license texts.
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
OpenSSL License
|
||||
---------------
|
||||
1. Definitions.
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright (c) 1998-2019 The OpenSSL Project. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* 3. All advertising materials mentioning features or use of this
|
||||
* software must display the following acknowledgment:
|
||||
* "This product includes software developed by the OpenSSL Project
|
||||
* for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
|
||||
*
|
||||
* 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
|
||||
* endorse or promote products derived from this software without
|
||||
* prior written permission. For written permission, please contact
|
||||
* openssl-core@openssl.org.
|
||||
*
|
||||
* 5. Products derived from this software may not be called "OpenSSL"
|
||||
* nor may "OpenSSL" appear in their names without prior written
|
||||
* permission of the OpenSSL Project.
|
||||
*
|
||||
* 6. Redistributions of any form whatsoever must retain the following
|
||||
* acknowledgment:
|
||||
* "This product includes software developed by the OpenSSL Project
|
||||
* for use in the OpenSSL Toolkit (http://www.openssl.org/)"
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
|
||||
* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
|
||||
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
* ====================================================================
|
||||
*
|
||||
* This product includes cryptographic software written by Eric Young
|
||||
* (eay@cryptsoft.com). This product includes software written by Tim
|
||||
* Hudson (tjh@cryptsoft.com).
|
||||
*
|
||||
*/
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
Original SSLeay License
|
||||
-----------------------
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
|
||||
* All rights reserved.
|
||||
*
|
||||
* This package is an SSL implementation written
|
||||
* by Eric Young (eay@cryptsoft.com).
|
||||
* The implementation was written so as to conform with Netscapes SSL.
|
||||
*
|
||||
* This library is free for commercial and non-commercial use as long as
|
||||
* the following conditions are aheared to. The following conditions
|
||||
* apply to all code found in this distribution, be it the RC4, RSA,
|
||||
* lhash, DES, etc., code; not just the SSL code. The SSL documentation
|
||||
* included with this distribution is covered by the same copyright terms
|
||||
* except that the holder is Tim Hudson (tjh@cryptsoft.com).
|
||||
*
|
||||
* Copyright remains Eric Young's, and as such any Copyright notices in
|
||||
* the code are not to be removed.
|
||||
* If this package is used in a product, Eric Young should be given attribution
|
||||
* as the author of the parts of the library used.
|
||||
* This can be in the form of a textual message at program startup or
|
||||
* in documentation (online or textual) provided with the package.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. All advertising materials mentioning features or use of this software
|
||||
* must display the following acknowledgement:
|
||||
* "This product includes cryptographic software written by
|
||||
* Eric Young (eay@cryptsoft.com)"
|
||||
* The word 'cryptographic' can be left out if the rouines from the library
|
||||
* being used are not cryptographic related :-).
|
||||
* 4. If you include any Windows specific code (or a derivative thereof) from
|
||||
* the apps directory (application code) you must include an acknowledgement:
|
||||
* "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* The licence and distribution terms for any publically available version or
|
||||
* derivative of this code cannot be changed. i.e. this code cannot simply be
|
||||
* copied and put under another distribution licence
|
||||
* [including the GNU Public Licence.]
|
||||
*/
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
+6
-6
@@ -2,12 +2,12 @@ A. HISTORY OF THE SOFTWARE
|
||||
==========================
|
||||
|
||||
Python was created in the early 1990s by Guido van Rossum at Stichting
|
||||
Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands
|
||||
Mathematisch Centrum (CWI, see https://www.cwi.nl) in the Netherlands
|
||||
as a successor of a language called ABC. Guido remains Python's
|
||||
principal author, although it includes many contributions from others.
|
||||
|
||||
In 1995, Guido continued his work on Python at the Corporation for
|
||||
National Research Initiatives (CNRI, see http://www.cnri.reston.va.us)
|
||||
National Research Initiatives (CNRI, see https://www.cnri.reston.va.us)
|
||||
in Reston, Virginia where he released several versions of the
|
||||
software.
|
||||
|
||||
@@ -19,7 +19,7 @@ https://www.python.org/psf/) was formed, a non-profit organization
|
||||
created specifically to own Python-related Intellectual Property.
|
||||
Zope Corporation was a sponsoring member of the PSF.
|
||||
|
||||
All Python releases are Open Source (see http://www.opensource.org for
|
||||
All Python releases are Open Source (see https://opensource.org for
|
||||
the Open Source Definition). Historically, most, but not all, Python
|
||||
releases have also been GPL-compatible; the table below summarizes
|
||||
the various releases.
|
||||
@@ -84,7 +84,7 @@ analyze, test, perform and/or display publicly, prepare derivative works,
|
||||
distribute, and otherwise use Python alone or in any derivative version,
|
||||
provided, however, that PSF's License Agreement and PSF's notice of copyright,
|
||||
i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
|
||||
2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Python Software Foundation;
|
||||
2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Python Software Foundation;
|
||||
All Rights Reserved" are retained in Python alone or in any derivative version
|
||||
prepared by Licensee.
|
||||
|
||||
@@ -191,9 +191,9 @@ version prepared by Licensee. Alternately, in lieu of CNRI's License
|
||||
Agreement, Licensee may substitute the following text (omitting the
|
||||
quotes): "Python 1.6.1 is made available subject to the terms and
|
||||
conditions in CNRI's License Agreement. This Agreement together with
|
||||
Python 1.6.1 may be located on the Internet using the following
|
||||
Python 1.6.1 may be located on the internet using the following
|
||||
unique, persistent identifier (known as a handle): 1895.22/1013. This
|
||||
Agreement may also be obtained from a proxy server on the Internet
|
||||
Agreement may also be obtained from a proxy server on the internet
|
||||
using the following URL: http://hdl.handle.net/1895.22/1013".
|
||||
|
||||
3. In the event Licensee prepares a derivative work that is based on
|
||||
|
||||
+18
-45
@@ -1,49 +1,22 @@
|
||||
RIVERBANK COMPUTING LIMITED LICENSE AGREEMENT FOR SIP
|
||||
Copyright 2024 Phil Thompson <phil@riverbankcomputing.com>
|
||||
|
||||
1. This LICENSE AGREEMENT ("the SIP License") is between Riverbank Computing
|
||||
Limited ("Riverbank"), and the Individual or Organization ("Licensee")
|
||||
accessing and otherwise using SIP software in source or binary form and its
|
||||
associated documentation. SIP comprises a software tool for generating Python
|
||||
bindings for software C and C++ libraries, and a Python extension module used
|
||||
at runtime by those generated bindings. This License Agreement may also be
|
||||
applied to other software packages written by Riverbank.
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
2. Subject to the terms and conditions of this License Agreement, Riverbank
|
||||
hereby grants Licensee a nonexclusive, royalty-free, world-wide license to
|
||||
reproduce, analyze, test, perform and/or display publicly, prepare derivative
|
||||
works, distribute, and otherwise use SIP alone or in any derivative version,
|
||||
provided, however, that Riverbank's License Agreement and Riverbank's notice of
|
||||
copyright, e.g., "Copyright (c) 2015 Riverbank Computing Limited; All Rights
|
||||
Reserved" are retained in SIP alone or in any derivative version prepared by
|
||||
Licensee.
|
||||
1. Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
|
||||
3. In the event Licensee prepares a derivative work that is based on or
|
||||
incorporates SIP or any part thereof, and wants to make the derivative work
|
||||
available to others as provided herein, then Licensee hereby agrees to include
|
||||
in any such work a brief summary of the changes made to SIP.
|
||||
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
|
||||
4. Licensee may not use SIP to generate Python bindings for any C or C++
|
||||
library for which bindings are already provided by Riverbank.
|
||||
|
||||
5. Riverbank is making SIP available to Licensee on an "AS IS" basis.
|
||||
RIVERBANK MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY
|
||||
OF EXAMPLE, BUT NOT LIMITATION, RIVERBANK MAKES NO AND DISCLAIMS ANY
|
||||
REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR
|
||||
PURPOSE OR THAT THE USE OF SIP WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.
|
||||
|
||||
6. RIVERBANK SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF SIP FOR ANY
|
||||
INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING,
|
||||
DISTRIBUTING, OR OTHERWISE USING SIP, OR ANY DERIVATIVE THEREOF, EVEN IF
|
||||
ADVISED OF THE POSSIBILITY THEREOF.
|
||||
|
||||
7. This License Agreement will automatically terminate upon a material breach
|
||||
of its terms and conditions.
|
||||
|
||||
8. Nothing in this License Agreement shall be deemed to create any relationship
|
||||
of agency, partnership, or joint venture between Riverbank and Licensee. This
|
||||
License Agreement does not grant permission to use Riverbank trademarks or
|
||||
trade name in a trademark sense to endorse or promote products or services of
|
||||
Licensee, or any third party.
|
||||
|
||||
9. By copying, installing or otherwise using SIP, Licensee agrees to be bound
|
||||
by the terms and conditions of this License Agreement.
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
+1
-1
@@ -22,5 +22,5 @@ THE SOFTWARE.
|
||||
|
||||
-- NOTE: Third party dependency used by this software --
|
||||
This software depends on the fmt lib (MIT License),
|
||||
and users must comply to its license: https://github.com/fmtlib/fmt/blob/master/LICENSE.rst
|
||||
and users must comply to its license: https://raw.githubusercontent.com/fmtlib/fmt/master/LICENSE
|
||||
|
||||
|
||||
+3
-1
@@ -1,4 +1,6 @@
|
||||
(C) 1995-2017 Jean-loup Gailly and Mark Adler
|
||||
Copyright notice:
|
||||
|
||||
(C) 1995-2022 Jean-loup Gailly and Mark Adler
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -18,21 +18,22 @@ install_message = never
|
||||
host =
|
||||
|
||||
[aliases]
|
||||
super = cmake_common modorganizer* githubpp
|
||||
super = cmake_common modorganizer*
|
||||
plugins = check_fnis bsapacker bsa_extractor diagnose_basic installer_* plugin_python preview_base preview_bsa tool_* game_*
|
||||
|
||||
[translations]
|
||||
mo2-translations = organizer
|
||||
mo2-translations = organizer uibase plugin_python
|
||||
mo2-game-bethesda = game_creation game_enderal game_enderalse game_fallout3 game_fallout4 game_fallout4vr game_falloutNV game_gamebryo game_morrowind game_nehrim game_oblivion game_skyrim game_skyrimse game_skyrimvr game_ttw
|
||||
|
||||
[task]
|
||||
enabled = true
|
||||
mo_org = ModOrganizer2
|
||||
mo_branch = master
|
||||
mo_fallback =
|
||||
no_pull = false
|
||||
ignore_ts = false
|
||||
revert_ts = false
|
||||
enabled = true
|
||||
mo_org = ModOrganizer2
|
||||
mo_branch = master
|
||||
mo_fallback =
|
||||
no_pull = false
|
||||
ignore_ts = false
|
||||
revert_ts = false
|
||||
configuration = RelWithDebInfo
|
||||
|
||||
git_url_prefix = https://github.com/
|
||||
git_shallow = true
|
||||
@@ -50,6 +51,7 @@ git_shallow = false
|
||||
|
||||
[usvfs:task]
|
||||
git_shallow = false
|
||||
configuration = Release
|
||||
|
||||
[installer:task]
|
||||
enabled = false
|
||||
@@ -87,57 +89,31 @@ force = false
|
||||
configure = true
|
||||
pull = true
|
||||
|
||||
[prebuilt]
|
||||
boost = true
|
||||
lz4 = true
|
||||
openssl = true
|
||||
pyqt = true
|
||||
python = true
|
||||
usvfs = false
|
||||
|
||||
[versions]
|
||||
vs = 17
|
||||
vs_year = 2022
|
||||
vs_toolset = 14.3
|
||||
sdk = 10.0.22621.0
|
||||
sevenz = 23.01
|
||||
boost = 1.82.0
|
||||
boost_vs = 14.3
|
||||
fmt = 8.1.1
|
||||
gtest = main
|
||||
libloot = 0.19.4
|
||||
lz4 = v1.9.4
|
||||
nmm = 0.71.2
|
||||
openssl = 1.1.1u
|
||||
pyqt = 6.5.1
|
||||
pyqt_builder = 1.15.1
|
||||
pyqt_sip = 13.5.1
|
||||
python = v3.10.12
|
||||
pybind11 = v2.10.4
|
||||
bzip2 = 1.0.8
|
||||
sip = 6.7.1
|
||||
spdlog = v1.10.0
|
||||
qt = 6.5.1
|
||||
qt_vs = 2019
|
||||
zlib = v1.2.13
|
||||
libbsarch = 0.0.9
|
||||
usvfs = qt6
|
||||
explorerpp = 1.3.5
|
||||
|
||||
ss_paper_lad_6788 = 7.0
|
||||
ss_paper_automata_6788 = 3.0
|
||||
ss_paper_mono_6788 = 2.2
|
||||
sdk = 10.0.26100.0
|
||||
pyqt = 6.7.1
|
||||
qt = 6.7.3
|
||||
qt_vs = 2022
|
||||
usvfs = master
|
||||
explorerpp = 1.4.0
|
||||
ss_paper_lad_6788 = 7.2
|
||||
ss_paper_automata_6788 = 3.2
|
||||
ss_paper_mono_6788 = 3.2
|
||||
ss_dark_mode_1809_6788 = 3.0
|
||||
ss_morrowind_trosski = 1.1
|
||||
ss_skyrim_trosski = v1.1
|
||||
ss_fallout3_trosski = v1.1
|
||||
ss_fallout4_trosski = v1.1
|
||||
ss_starfield_trosski = V1.11
|
||||
ss_fallout3_trosski = v1.11
|
||||
ss_fallout4_trosski = v1.11
|
||||
|
||||
[paths]
|
||||
third_party =
|
||||
prefix =
|
||||
cache =
|
||||
patches =
|
||||
icons =
|
||||
licenses =
|
||||
build =
|
||||
install =
|
||||
@@ -146,13 +122,13 @@ install_installer =
|
||||
install_libs =
|
||||
install_pdbs =
|
||||
install_dlls =
|
||||
install_loot =
|
||||
install_plugins =
|
||||
install_extensions =
|
||||
install_stylesheets =
|
||||
install_licenses =
|
||||
install_pythoncore =
|
||||
install_translations =
|
||||
vs =
|
||||
vcpkg =
|
||||
qt_install =
|
||||
qt_bin =
|
||||
qt_translations =
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
--- publish.bat Thu Apr 30 00:08:44 2020
|
||||
+++ publish.bat Thu Apr 30 00:08:14 2020
|
||||
@@ -1,6 +1,6 @@
|
||||
set _NMMPATH=%~dp0..\Nexus-Mod-Manager
|
||||
set _NMMCLIPATH=%~dp0
|
||||
-set outputPath=..\..\install\bin
|
||||
+set outputPath=%~1
|
||||
|
||||
mkdir "%outputPath%\NCC"
|
||||
copy "%_NMMPATH%\Stage\Release\AntlrUtil.dll" "%outputPath%\NCC"
|
||||
@@ -1,36 +0,0 @@
|
||||
--- builder.py (date 1575938575861)
|
||||
+++ builder.py (date 1575938575861)
|
||||
@@ -402,17 +402,29 @@
|
||||
'QMAKE_LFLAGS += -Wl,--version-script={}.exp'.format(
|
||||
buildable.target))
|
||||
|
||||
- pro_lines.append(
|
||||
+ if project.py_platform == 'win32':
|
||||
+ for include_dir in project.py_include_dir.split(';'):
|
||||
+ pro_lines.append(
|
||||
+ 'INCLUDEPATH += {}'.format(
|
||||
+ self.qmake_quote(include_dir)))
|
||||
+ else:
|
||||
+ pro_lines.append(
|
||||
'INCLUDEPATH += {}'.format(
|
||||
- self.qmake_quote(project.py_include_dir)))
|
||||
+ self.qmake_quote(project.py_include_dir)))
|
||||
|
||||
+ if project.py_pylib_shlib != "":
|
||||
+ pro_lines.append(
|
||||
+ 'DEFINES += {}'.format(
|
||||
+ self.qmake_quote("PYTHON_LIB=\"{}\"".format(
|
||||
+ project.py_pylib_shlib))))
|
||||
+
|
||||
# Python.h on Windows seems to embed the need for pythonXY.lib, so tell
|
||||
# it where it is.
|
||||
# TODO: is this still necessary for Python v3.8?
|
||||
if not buildable.static:
|
||||
pro_lines.extend(['win32 {',
|
||||
- ' LIBS += -L{}'.format(
|
||||
- self.qmake_quote(project.py_pylib_dir)),
|
||||
+ ' LIBS += -L{}{}'.format(
|
||||
+ self.qmake_quote(project.py_pylib_dir), '' if project.py_pylib_lib == '' else ' -l' + project.py_pylib_lib),
|
||||
'}'])
|
||||
|
||||
# Add any installables from the buildable
|
||||
@@ -1,10 +0,0 @@
|
||||
--- PCbuild/openssl.props (revision 5c02a39a0b31a330e06b4d6f44835afb205dc7cc)
|
||||
+++ PCbuild/openssl.props (date 1575994670797)
|
||||
@@ -13,6 +13,7 @@
|
||||
<_DLLSuffix>-1_1</_DLLSuffix>
|
||||
<_DLLSuffix Condition="$(Platform) == 'ARM'">$(_DLLSuffix)-arm</_DLLSuffix>
|
||||
<_DLLSuffix Condition="$(Platform) == 'ARM64'">$(_DLLSuffix)-arm64</_DLLSuffix>
|
||||
+ <_DLLSuffix Condition="$(Platform) == 'x64'">$(_DLLSuffix)-x64</_DLLSuffix>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<_SSLDLL Include="$(opensslOutDir)\libcrypto$(_DLLSuffix).dll" />
|
||||
@@ -1,105 +1,155 @@
|
||||
# `mob` - ModOrganizer Build Tool
|
||||
|
||||
This README explains how to use `mob` and build ModOrganizer2 with it.
|
||||
If you want to contribute to a single plugin of MO2 or even write your own plugins,
|
||||
check the [ModOrganizer2 Wiki](https://github.com/ModOrganizer2/modorganizer/wiki).
|
||||
|
||||
## Table of contents
|
||||
|
||||
- [Quick start](#quick-start)
|
||||
- [Slow start](#slow-start)
|
||||
- [Extended start](#extended-start)
|
||||
- [Changing options](#changing-options)
|
||||
* [INI files](#ini-files)
|
||||
* [Command line](#command-line)
|
||||
* [INI format](#ini-format)
|
||||
- [INI files](#override-options-using-ini-files)
|
||||
- [Command line](#override-options-using-command-line)
|
||||
- [INI format](#ini-format)
|
||||
- [Options](#options)
|
||||
* [`[global]`](#global)
|
||||
* [`[task]`](#task)
|
||||
* [`[tools]`](#tools)
|
||||
* [`[prebuilt]`](#prebuilt)
|
||||
* [`[versions]`](#versions)
|
||||
* [`[paths]`](#paths)
|
||||
- [Command line](#command-line-1)
|
||||
* [Global options](#global-options)
|
||||
* [`build`](#build)
|
||||
* [`list`](#list)
|
||||
* [`options`](#options)
|
||||
* [`release`](#release)
|
||||
* [`git`](#git)
|
||||
* [`cmake`](#cmake)
|
||||
* [`inis`](#inis)
|
||||
|
||||
- [`[global]`](#global)
|
||||
- [`[task]`](#task)
|
||||
- [`[tools]`](#tools)
|
||||
- [`[versions]`](#versions)
|
||||
- [`[paths]`](#paths)
|
||||
- [Command line](#command-line)
|
||||
- [Global options](#global-options)
|
||||
- [`build`](#build)
|
||||
- [`list`](#list)
|
||||
- [`options`](#options)
|
||||
- [`release`](#release)
|
||||
- [`git`](#git)
|
||||
- [`cmake-config`](#cmake-config)
|
||||
- [`inis`](#inis)
|
||||
|
||||
## Quick start
|
||||
```
|
||||
> git clone https://github.com/ModOrganizer2/mob
|
||||
> cd mob
|
||||
> bootstrap
|
||||
> mob -d c:\somewhere build
|
||||
|
||||
```powershell
|
||||
git clone https://github.com/ModOrganizer2/mob
|
||||
cd mob
|
||||
./bootstrap
|
||||
mob -d c:\somewhere build
|
||||
```
|
||||
|
||||
## Slow start
|
||||
- Install Qt 6.5.1 ([Installer](https://download.qt.io/official_releases/online_installers/qt-unified-windows-x64-online.exe)) and select these components:
|
||||
- MSVC 2019 64-bit
|
||||
## Extended start
|
||||
|
||||
### Qt Installation
|
||||
|
||||
Check [`mob.ini`](https://github.com/ModOrganizer2/mob/blob/master/mob.ini#L94) to find
|
||||
out which version of Qt you need.
|
||||
|
||||
#### CLI based install using [aqt](https://github.com/miurahr/aqtinstall)
|
||||
|
||||
[aqt](https://github.com/miurahr/aqtinstall) is a CLI installer for Qt, it makes
|
||||
installing Qt extremely quick and painless, and doesn't require a login.
|
||||
Check the [documentation](https://aqtinstall.readthedocs.io/en/latest/installation.html)
|
||||
to install **aqt** itself.
|
||||
|
||||
When using **aqt**, you can choose which modules to install but we recommend installing
|
||||
all of them in case of changes.
|
||||
|
||||
```powershell
|
||||
# you can also use -m all to install all modules
|
||||
aqt install-qt --outputdir "C:\Qt" windows desktop ${QT_VERSION} win64_msvc2022_64 `
|
||||
-m qtwebengine qtimageformats qtpositioning qtserialport qtwebchannel qtwebsockets
|
||||
```
|
||||
|
||||
#### Manual installation
|
||||
|
||||
- Install Qt ([Installer](https://download.qt.io/official_releases/online_installers/qt-unified-windows-x64-online.exe)) and select these components:
|
||||
- MSVC 2022 64-bit
|
||||
- Additional Libraries:
|
||||
- Qt WebEngine (display nexus pages)
|
||||
- Qt Image Formats (display images in image tab and preview)
|
||||
- Qt Positioning (required by QtWebEngine)
|
||||
- Qt Serial Port (required by Qt Core)
|
||||
- Qt Web Channel (required by QtWebEngine)
|
||||
- Qt WebChannel (required by QtWebEngine)
|
||||
- Qt WebSockets (Nexus api/download)
|
||||
- Optional:
|
||||
- Qt Source Files
|
||||
- Qt Debug Files
|
||||
|
||||
### Visual Studio
|
||||
|
||||
- Install Visual Studio 2022 ([Installer](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community&channel=Release&version=VS2022&source=VSLandingPage&cid=2030&passive=false))
|
||||
|
||||
- Desktop development with C++
|
||||
- Desktop .NET desktop development (needed by OMOD and FOMOD installers)
|
||||
- Individual Components:
|
||||
- .Net Framework 4.8 SDK
|
||||
- .Net Framework 4.7.2 targeting pack (OMOD targets 4.8 but VS still requires the package for other .Net components)
|
||||
- .Net Framework 4.7.2 targeting pack (OMOD targets 4.8 but VS still requires
|
||||
the package for other .Net components)
|
||||
- Windows Universal C Runtime
|
||||
- C++ ATL for latest v143 build Tools (x86 & x64)
|
||||
- C++ /CLI support for v143 build Tools (Latest) (for OMOD and FOMOD installers)
|
||||
- Windows 11 SDK (get latest)
|
||||
- C++ Build Tools core features
|
||||
- Optional:
|
||||
- Git for Windows (if you don't have git already installed)
|
||||
- Start a shell
|
||||
- If you have git in your path, a regular cmd shell works.
|
||||
- If not, start the _x64 Native Tools Command Prompt for VS 2019_, it'll use Git for Windows installed above.
|
||||
- Do:
|
||||
```
|
||||
mkdir C:\dev
|
||||
cd C:\dev
|
||||
git clone https://github.com/ModOrganizer2/mob
|
||||
cd mob
|
||||
bootstrap
|
||||
mob -d C:\dev\modorganizer build
|
||||
```
|
||||
- Once `mob` is finished, everything will be in `C:\dev\modorganizer`. Mod Organizer can be run from `install\bin\ModOrganizer.exe`. The Visual Studio solution for Mod Organizer itself is `build\modorganizer_super\modorganizer\vsbuild\organizer.sln`.
|
||||
- Git for Windows (Skip if you have this already installed outside of the VS installer)
|
||||
- CMake tools for Windows (Skip if you have this already installed outside of the VS installer)
|
||||
|
||||
## Setting up MOB
|
||||
|
||||
### Prebuilts
|
||||
Some third-parties are not normally built from source, but this can be changed in the options by setting the various tasks in `[prebuilt]` to `false`. If OpenSSL is built from source, perl is required ([Strawberry Perl 5.30.2.1 installer](http://strawberryperl.com/download/5.30.2.1/strawberry-perl-5.30.2.1-64bit.msi)).
|
||||
```powershell
|
||||
mkdir C:\dev
|
||||
cd C:\dev
|
||||
|
||||
# close this repository
|
||||
git clone https://github.com/ModOrganizer2/mob
|
||||
|
||||
# build mob itself - this will create mob.exe in the current directory
|
||||
./bootstrap.ps1
|
||||
|
||||
# build MO2 itself - this will take a LONG time
|
||||
mob -d C:\dev\modorganizer build
|
||||
```
|
||||
|
||||
Once `mob` is finished, everything will be in `C:\dev\modorganizer`.
|
||||
Mod Organizer can be run from `install\bin\ModOrganizer.exe`.
|
||||
The Visual Studio solution for Mod Organizer itself is `build\modorganizer_super\modorganizer\vsbuild\organizer.sln`.
|
||||
|
||||
## Changing options
|
||||
`mob` has two ways of setting options: from INI files, the `MOBINI` environment variable, or from the command line.
|
||||
|
||||
### INI files
|
||||
`mob` builds a list of available INI files in order of priority. Higher numbers override lower numbers:
|
||||
`mob` has two ways of setting options: from INI files, the `MOBINI` environment
|
||||
variable, or from the command line.
|
||||
|
||||
### OVerride options using INI files
|
||||
|
||||
`mob` builds a list of available INI files in order of priority. Higher numbers
|
||||
override lower numbers:
|
||||
|
||||
1) The master INI `mob.ini` in the directory where `mob.exe` lives (required).
|
||||
2) Any files set in `MOBINI` (separated by semicolons).
|
||||
3) Another `mob.ini` in the current directory.
|
||||
4) Files given with `--ini`.
|
||||
|
||||
Use `mob inis` to see the list of INI files in order. If `--no-default-inis` is given, `mob` will skip 1) and 2). The first INI it finds after that is considered the master.
|
||||
Use `mob inis` to see the list of INI files in order. If `--no-default-inis` is given,
|
||||
`mob` will skip 1) and 2). The first INI it finds after that is considered the master.
|
||||
|
||||
### Command line
|
||||
Any option can be overridden from the command like with `-s task:section/key=value`, where `task:` is optional. Some options have shortcuts, such as `--dry` for `-s global/dry=true` and `-l5` for `-s global:output_log_level=5`. See `mob options` for the list of options.
|
||||
### Override options using command line
|
||||
|
||||
Any option can be overridden from the command like with `-s task:section/key=value`,
|
||||
where `task:` is optional. Some options have shortcuts, such as `--dry`
|
||||
for `-s global/dry=true` and `-l5` for `-s global:output_log_level=5`.
|
||||
See `mob options` for the list of options.
|
||||
|
||||
### INI format
|
||||
Inside the INI file are `[sections]` and `key = value` pairs. The `[task]` section is special because it can be changed for specific tasks instead of globally. Any value under a `[task_name:task]` section will only apply to a task named `task_name`. The list of available tasks can be seen with `mob list`. See [Task names](#task-names).
|
||||
|
||||
Inside the INI file are `[sections]` and `key = value` pairs. The `[task]` section is
|
||||
special because it can be changed for specific tasks instead of globally.
|
||||
Any value under a `[task_name:task]` section will only apply to a task
|
||||
named `task_name`. The list of available tasks can be seen with `mob list`.
|
||||
See [Task names](#task-names).
|
||||
|
||||
## Options
|
||||
|
||||
### `[global]`
|
||||
|
||||
| Option | Type | Description |
|
||||
| --- | --- | --- |
|
||||
| `dry` | bool | Whether filesystem operations are simulated. Note that many operations will fail and that the build process will most probably not complete. This is mostly useful to get a dump of the options. |
|
||||
@@ -110,33 +160,36 @@ Inside the INI file are `[sections]` and `key = value` pairs. The `[task]` secti
|
||||
| `clean_task` | bool | For `build`, whether tasks are cleaned. |
|
||||
| `fetch_task` | bool | For `build`, whether tasks are fetched (download, git, etc.) |
|
||||
| `build_task` | bool | For `build`, whether tasks are built (msbuild, jobm etc.) |
|
||||
| `output_log_level` | [0-6]| The log level for stdout: 0=silent, 1=errors, 2=warnings, 3=info (default), 4=debug, 5=trace, 6=dump. Note that 6 will dump _a lot_ of stuff, such as debug information from curl during downloads.
|
||||
| `output_log_level` | [0-6]| The log level for stdout: 0=silent, 1=errors, 2=warnings, 3=info (default), 4=debug, 5=trace, 6=dump. Note that 6 will dump _a lot_ of stuff, such as debug information from curl during downloads. |
|
||||
| `file_log_level` | [0-6]| The log level for the log file. |
|
||||
| `log_file` | path | The path to a log file. |
|
||||
| `ignore_uncommitted` | bool | When `--redownload` or `--reextract` is given, directories controlled by git will be deleted even if they contain uncommitted changes.|
|
||||
|
||||
### `[task]`
|
||||
|
||||
Options for individual tasks. Can be `[task_name:task]`, where `task_name` is the name of a task (see `mob list`) , `super` for all MO tasks or a glob like `installer_*`.
|
||||
|
||||
| Option | Type | Description |
|
||||
| --- | --- | --- |
|
||||
| `enabled` | bool | Whether this task is enabled. Disabled tasks are never built. When specifying task names with `mob build task1 task2...`, all tasks except those given are turned off. |
|
||||
| Option | Type | Description |
|
||||
| --- | --- | --- |
|
||||
| `enabled` | bool | Whether this task is enabled. Disabled tasks are never built. When specifying task names with `mob build task1 task2...`, all tasks except those given are turned off. |
|
||||
| `configuration` | enum | Which configuration to build, should be one of Debug, Release or RelWithDebInfo with RelWithDebInfo being the default.|
|
||||
|
||||
#### Common git options
|
||||
|
||||
Unless otherwise stated, applies to any task that is a git repo.
|
||||
|
||||
| Option | Type | Description |
|
||||
| --- | --- | --- |
|
||||
| `mo_org` | string | The organisation name when pulling from Github. Only applies to ModOrganizer projects, plus NCC and usvfs. |
|
||||
| `mo_branch` | string | The branch name when pulling from Github. Only applies to ModOrganizer projects, plus NCC and usvfs. |
|
||||
| `mo_master` | string | The fallback branch name when pulling from Github. Only applies to ModOrganizer projects, plus NCC and usvfs.
|
||||
This branch is used when `mo_branch` does not exists. If this value is empty, the fallback mechanism is disabled (default behavior). |
|
||||
| `mo_master` | string | The fallback branch name when pulling from Github. Only applies to ModOrganizer projects, plus NCC and usvfs. This branch is used when `mo_branch` does not exists. If this value is empty, the fallback mechanism is disabled (default behavior). |
|
||||
| `no_pull` | bool | If a repo is already cloned, a `git pull` will be done on it every time `mob build` is run. Set to `false` to never pull and build with whatever is in there. |
|
||||
| `ignore_ts` | bool | Marks all the `.ts` files in a repo with `--assume-unchanged`. Note that `mob git ignore-ts off` can be used to revert it. |
|
||||
| `git_url_prefix` | string | When cloning a repo, the URL will be `$(git_url_prefix)mo_org/repo.git`. |
|
||||
| `git_shallow` | bool | When true, clones with `--depth 1` to avoid having to fetch all the history. Defaults to true for third-parties. |
|
||||
|
||||
#### Git credentials
|
||||
|
||||
These are used to set `user.name` and `user.email`. Applies to any task that is a git repo.
|
||||
|
||||
| Option | Type | Description |
|
||||
@@ -145,7 +198,9 @@ These are used to set `user.name` and `user.email`. Applies to any task that is
|
||||
| `git_email` | string | Email |
|
||||
|
||||
#### Origin and upstream remotes
|
||||
|
||||
When `git` clones, it automatically creates a remote named `origin` for the URL that was cloned. When `set_origin_remote` is `true`, this will:
|
||||
|
||||
1) Rename `origin` to `upstream`, and
|
||||
2) Create a new `origin` with the given parameters.
|
||||
|
||||
@@ -159,7 +214,7 @@ When `git` clones, it automatically creates a remote named `origin` for the URL
|
||||
|
||||
For example, this will create an `origin` remote for all ModOrganizer2 projects and mark all `.ts` files as `--assume-unchanged`.
|
||||
|
||||
```
|
||||
```ini
|
||||
[super:task]
|
||||
ignore_ts = true
|
||||
git_username = isanae
|
||||
@@ -172,21 +227,22 @@ remote_push_default_origin = true
|
||||
```
|
||||
|
||||
### `[tools]`
|
||||
|
||||
The various tools in this section are used verbatim when creating processes and so will be looked in the `PATH` environment variable. `vcvars` is best left empty, it will be found using the `vswhere.exe` that's bundled as a third-party.
|
||||
|
||||
### `[prebuilt]`
|
||||
Some tasks can use prebuilt binaries instead of building from source.
|
||||
|
||||
### `[versions]`
|
||||
|
||||
The versions for all the tasks.
|
||||
|
||||
### `[paths]`
|
||||
|
||||
The only path that's required is `prefix`, which is where `mob` will put everything. Within this directory will be `build/`, `downloads/` and `install/`. Everything else is derived from it.
|
||||
|
||||
If `mob` is unable to find the Qt installation directory, it can be specified in `qt_install`. This directory should contain `bin/`, `include/`, etc. It's typically something like `C:\Qt\6.5.1\msvc2019_64\`. The other path `qt_bin` will be derived from it, it's just `$qt_install/bin/`.
|
||||
|
||||
If `mob` is unable to find the Qt installation directory, it can be specified in `qt_install`. This directory should contain `bin/`, `include/`, etc.
|
||||
It's typically something like `C:\Qt\6.7.3\msvc2022_64\`. The other path `qt_bin` will be derived from it, it's just `$qt_install/bin/`.
|
||||
|
||||
## Command line
|
||||
|
||||
Do `mob --help` for global options and the list of available commands. Do `mob <command> --help` for more help about a command.
|
||||
|
||||
To use global options with command options, ensure command options are together, with no global options in the middle.
|
||||
@@ -195,15 +251,15 @@ To use global options with command options, ensure command options are together,
|
||||
|
||||
| Option | Description |
|
||||
| --- | --- |
|
||||
| `--ini` | Adds an INI file, see [INI files](#ini-files). |
|
||||
| `--ini` | Adds an INI file, see [INI files](#override-options-using-ini-files). |
|
||||
| `--dry` | Simulates filesystem operations. Note that many operations will fail and that the build process will stop with errors. This is mostly useful to get a dump of the options. |
|
||||
| `-log-level` | The log level for stdout: 0=silent, 1=errors, 2=warnings, 3=info (default), 4=debug, 5=trace, 6=dump. Note that 6 will dump _a lot_ of stuff, such as debug information from curl during downloads.
|
||||
| `--destination` | The build directory where `mob` will put everything.
|
||||
| `--set` | Sets an option: `-s task:section/key=value`.
|
||||
| `-log-level` | The log level for stdout: 0=silent, 1=errors, 2=warnings, 3=info (default), 4=debug, 5=trace, 6=dump. Note that 6 will dump _a lot_ of stuff, such as debug information from curl during downloads. |
|
||||
| `--destination` | The build directory where `mob` will put everything. |
|
||||
| `--set` | Sets an option: `-s task:section/key=value`. |
|
||||
| `--no-default-inis` | Does not auto detect INI files, only uses `--ini`. |
|
||||
|
||||
|
||||
### `build`
|
||||
|
||||
Builds tasks. The order in which tasks have to be built is handled by `mob`, but dependencies will not be built automatically when specifying tasks manually. That is, `mob build` will build `python` before `pyqt`, but `mob build pyqt` will not build `python`. Many tasks will be able to run in parallel, but not all, either because they hog the CPU (such as `usvfs`) or because they have dependencies that have to be built first.
|
||||
|
||||
If any task fails to build, all the active tasks are aborted as quickly as possible.
|
||||
@@ -212,7 +268,7 @@ If any task fails to build, all the active tasks are aborted as quickly as possi
|
||||
|
||||
Each task has a name, some have more. MO tasks for example have a full name that corresponds to their git repo (such as `modorganizer-game_features`) and a shorter name (such as `game_features`). Both can be used interchangeably. The task name can also be `super`, which refers to all repos hosted on the Mod Organizer Github account, minus `libbsarch`, `usvfs` and `NexusClientCli`. Globs can be used, like `installer_*`. See `mob list` for a list of all available tasks.
|
||||
|
||||
#### Options
|
||||
#### Options for `build`
|
||||
|
||||
| Option | Description |
|
||||
| --- | --- |
|
||||
@@ -221,75 +277,78 @@ Each task has a name, some have more. MO tasks for example have a full name that
|
||||
| `--reconfigure` | Reconfigures the task by running cmake, configure scripts, etc. Some tasks might have to delete the whole source directory. |
|
||||
| `--rebuild` | Cleans and rebuilds projects. Some tasks might have to delete the whole source directory |
|
||||
| `--new` | Implies all the four flags above. |
|
||||
| `--clean-task`,<br>`--no-clean-task` | Sets whether tasks are cleaned. With `--no-clean-task`, the flags above are ignored. |
|
||||
| `--fetch-task`,<br>`--no-fetch-task` | Sets whether tasks are fetched. With `--no-fetch-task`, nothing is downloaded, extracted, cloned or pulled. |
|
||||
| `--build-task`,<br>`--no-build-task` | Sets whether tasks are built. With `--no-build-task`, nothing is ever built or installed. |
|
||||
| `--pull`,<br>`--no-pull` | For repos that are controlled by git, whether to pull repos that are already cloned. With `--no-pull`, once a repo is cloned, it is never updated automatically. |
|
||||
| `--revert-ts`,<br>`--no-revert-ts` | Most projects will generate `.ts` files for translations. These files are typically not committed to Github and so will often conflict when trying to pull. With `--revert-ts`, any `.ts` file is reverted before pulling. |
|
||||
| `--clean-task`, `--no-clean-task` | Sets whether tasks are cleaned. With `--no-clean-task`, the flags above are ignored. |
|
||||
| `--fetch-task`, `--no-fetch-task` | Sets whether tasks are fetched. With `--no-fetch-task`, nothing is downloaded, extracted, cloned or pulled. |
|
||||
| `--build-task`, `--no-build-task` | Sets whether tasks are built. With `--no-build-task`, nothing is ever built or installed. |
|
||||
| `--pull`, `--no-pull` | For repos that are controlled by git, whether to pull repos that are already cloned. With `--no-pull`, once a repo is cloned, it is never updated automatically. |
|
||||
| `--revert-ts`, `--no-revert-ts` | Most projects will generate `.ts` files for translations. These files are typically not committed to Github and so will often conflict when trying to pull. With `--revert-ts`, any `.ts` file is reverted before pulling. |
|
||||
| `--ignore-uncommitted-changes` | With `--reextract`, ignores repos that have uncommitted changes and deletes the directory without confirmation. |
|
||||
| `--keep-msbuild` | `mob` starts a lot of `msbuild.exe` processes, some of which hold locks on the build directory. Because that's pretty darn annoying, `mob` will kill all `msbuild.exe` processes when it finished, unless this flag is given. |
|
||||
| `<task>...` | List of tasks to run, see [Task names](#task-names). |
|
||||
|
||||
|
||||
|
||||
### `list`
|
||||
|
||||
Lists all the available task names. If a task has multiple names, they are all shown, separated by a comma.
|
||||
|
||||
#### Options
|
||||
#### Options for `list`
|
||||
|
||||
| Option | Description |
|
||||
| --- | --- |
|
||||
| `--all` | Shows a task tree to see which are built in parallel. |
|
||||
| `<task>...` | This is the same list of tasks that can be given in the `build` command. With `--all`, this will only show the tasks that would be built. |
|
||||
|
||||
|
||||
### `options`
|
||||
|
||||
Lists all the options after parsing the INIs and the command line.
|
||||
|
||||
|
||||
### `release`
|
||||
|
||||
Creates a release in `prefix/releases`. Only supports devbuilds for now. A release is made out of three archives:
|
||||
- Binaries from `prefix/install/bin`;
|
||||
- PDBs from `prefix/install/pdb`;
|
||||
- Sources from various directories in `prefix/build`.
|
||||
|
||||
- Binaries from `prefix/install/bin`;
|
||||
- PDBs from `prefix/install/pdb`;
|
||||
- Sources from various directories in `prefix/build`.
|
||||
|
||||
The archive filename is `Mod.Organizer-version-suffix-what.7z`, where:
|
||||
- `version` is taken from `ModOrganizer.exe`, `version.rc` or from `--version`;
|
||||
- `suffix` is the optional `--suffix` argument;
|
||||
- `what` is either nothing, `src` or `pdbs`.
|
||||
|
||||
- `version` is taken from `ModOrganizer.exe`, `version.rc` or from `--version`;
|
||||
- `suffix` is the optional `--suffix` argument;
|
||||
- `what` is either nothing, `src` or `pdbs`.
|
||||
|
||||
#### Options for `release`
|
||||
|
||||
#### Options
|
||||
| Option | Description |
|
||||
| --- | --- |
|
||||
| `--bin`,<br>`--no-bin` | Whether the binary archive is created [default: yes] |
|
||||
| `--pdbs`,<br>`--no-pdbs` | Whether the PDBs archive is created [default: yes] |
|
||||
| `--src`,<br>`--no-src` | Whether the source archive is created [default: yes] |
|
||||
| `--bin`, `--no-bin` | Whether the binary archive is created [default: yes] |
|
||||
| `--pdbs`, `--no-pdbs` | Whether the PDBs archive is created [default: yes] |
|
||||
| `--src`,, `--no-src` | Whether the source archive is created [default: yes] |
|
||||
| `--version-from-exe` | Retrieves version information from ModOrganizer.exe [default] |
|
||||
| `--version-from-rc` | Retrieves version information from `modorganizer/src/version.rc` |
|
||||
| `--rc <PATH>` | Overrides the path to `version.rc` |
|
||||
| `--version <VERSION>` | Overrides the version string, ignores `--version-from-exe` and `--version-from-rc` |
|
||||
| `--output-dir <PATH>` | Sets the output directory to use instead of `prefix/releases` |
|
||||
| `--suffix <SUFFIX>` | Optional suffix to add to the archive filenames
|
||||
| `--suffix <SUFFIX>` | Optional suffix to add to the archive filenames. |
|
||||
| `--force` | `mob` will refuse to create a source archive over 20MB because it would probably be incorrect. This ignores the file size warnings and creates the archive regardless of its size. |
|
||||
|
||||
|
||||
### `git`
|
||||
|
||||
Various commands to manage the git repos. Includes `usvfs`, `NexusClientCli` and all the projects under `modorganizer_super`.
|
||||
|
||||
#### `set-remotes`
|
||||
|
||||
Does the same thing as the when `set_origin_remotes` is set in the INI: renames `origin` to `upstream` and adds a new `origin` with the options below. See [Origin and upstream remotes](#origin-and-upstream-remotes).
|
||||
|
||||
| Option | Description |
|
||||
| --- | --- |
|
||||
| `--username <USERNAME>` | Git username |
|
||||
| `--email <EMAIL>` | Git email |
|
||||
| `--key <PATH>` | Path to a putty key |
|
||||
| `--no-push` | Disables pushing to `upstream` by changing the push url to `nopushurl` to avoid accidental pushes |
|
||||
| `--push-origin` | Sets the new `origin` remote as the default push target
|
||||
| `<path>` | Only use this repo instead of going through all of them |
|
||||
| `--username <USERNAME>` | Git username. |
|
||||
| `--email <EMAIL>` | Git email. |
|
||||
| `--key <PATH>` | Path to a putty key. |
|
||||
| `--no-push` | Disables pushing to `upstream` by changing the push url to `nopushurl` to avoid accidental pushes. |
|
||||
| `--push-origin` | Sets the new `origin` remote as the default push target. |
|
||||
| `<path>` | Only use this repo instead of going through all of them. |
|
||||
|
||||
#### `add-remote`
|
||||
|
||||
Simply adds a new remote with the given parameters to all the git repos.
|
||||
|
||||
| Option | Description |
|
||||
@@ -300,31 +359,22 @@ Simply adds a new remote with the given parameters to all the git repos.
|
||||
| `--push-origin` | Sets this new remote as the default push target |
|
||||
| `<path>` | Only use this repo instead of going through all of them |
|
||||
|
||||
### `cmake-config`
|
||||
|
||||
### `cmake`
|
||||
Runs `cmake` in a directory, as if `mob` had done it as part of the build process for a `modorganizer` project. The `cmake` invocation will contain all variables required for `cmake_common` to work.
|
||||
The `cmake-config` command can display the `CMAKE_INSTALL_PREFIX` and
|
||||
`CMAKE_PREFIX_PATH` variable using by `mob` itself when building so that you can run
|
||||
your own `cmake`.
|
||||
|
||||
By default, this runs:
|
||||
Below is a typical use of the command:
|
||||
|
||||
```powershell
|
||||
# configure the current project with preset vs2022-windows using mob PATH
|
||||
cmake --preset vs2022-windows `
|
||||
("-DCMAKE_INSTALL_PREFIX=" + (mob cmake-config install-prefix)) `
|
||||
("-DCMAKE_PREFIX_PATH=" + (mob cmake-config prefix-path))
|
||||
```
|
||||
cmake
|
||||
-G "Visual Studio version year"
|
||||
-A x64
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
-DCMAKE_INSTALL_MESSAGE=NEVER
|
||||
<all defines>
|
||||
--log-level=ERROR
|
||||
--no-warn-unused-cli
|
||||
..
|
||||
```
|
||||
|
||||
#### Options
|
||||
| Option | Description |
|
||||
| --- | --- |
|
||||
| `--generator <GEN>` | Sets the `-G` option |
|
||||
| `--cmd` | Sets the last bit of the command, defaults to `..` |
|
||||
| `--x86`, `--x64` | Whether to use the 32-bit or 64-bit vcvars. If `--generator` is not given, also sets `-A`. |
|
||||
| `--install-prefix <PATH>` | Passes `-DCMAKE_INSTALL_PREFIX=<path>` to cmake |
|
||||
|
||||
|
||||
### `inis`
|
||||
Shows a list of the all the INIs that would be loaded, in order of priority. See [INI files](#ini-files).
|
||||
|
||||
Shows a list of the all the INIs that would be loaded, in order of priority.
|
||||
See [INI files](#override-options-using-ini-files).
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user