Compare commits
372 Commits
Author | SHA1 | Date | |
---|---|---|---|
18051fd0de | |||
|
29985681a1 | ||
|
53cb673849 | ||
|
f72cf388aa | ||
|
87150cc028 | ||
|
704b8aa98e | ||
|
c4f13f04a8 | ||
|
f402495b24 | ||
|
b45295ef7c | ||
|
327ea9dee7 | ||
|
ade05ab153 | ||
|
bfe1baf323 | ||
|
a84ee9062c | ||
|
7c863a351b | ||
|
8fcac9c164 | ||
|
97f6cdfbe2 | ||
|
7a3b3cd96f | ||
|
90e2937b32 | ||
|
23204fcc73 | ||
|
abb470a471 | ||
|
ab527be41a | ||
|
cd1c5bd397 | ||
|
8f8c2556b7 | ||
|
b8558de63e | ||
|
047f8b1185 | ||
|
035861bf52 | ||
|
a7096679aa | ||
|
1f3f05d14a | ||
|
c444095293 | ||
|
57f6bf6eea | ||
|
2636f1a66d | ||
|
e7addfc9ad | ||
|
6447101546 | ||
|
efeda62add | ||
|
b7bd94c52e | ||
|
1d4f7fb2cc | ||
|
b5d6051d98 | ||
|
b73f3b70fa | ||
|
2d3f31d37e | ||
|
5ea9937457 | ||
|
601cfff164 | ||
|
4f10928299 | ||
|
02a3c641a6 | ||
|
7f267853f4 | ||
|
3d0025b594 | ||
|
b6cb0c2696 | ||
|
8acf608b4d | ||
|
0235b1ed4d | ||
|
226d22b896 | ||
|
8b1be47f4d | ||
|
ed901ead1a | ||
|
a6c26f4271 | ||
|
523f4e9eaa | ||
|
697a9f34f9 | ||
|
3b1b08fd93 | ||
|
271c9993da | ||
|
1a584655d9 | ||
|
965ef97212 | ||
|
30f1e02cda | ||
|
657f59ada3 | ||
|
e3edbc2d96 | ||
|
7ceba77616 | ||
|
823e437005 | ||
|
a63138347b | ||
|
852f4052be | ||
|
38fdbf18c2 | ||
|
d9eacc4db7 | ||
|
54c339bdc0 | ||
|
699271f212 | ||
|
ba695d2092 | ||
|
f2fa241ae6 | ||
|
231c1e16b2 | ||
|
1ccbe2bbb6 | ||
|
7d00b0404f | ||
|
89af23bdfb | ||
|
99cad5f7d1 | ||
|
d719a18fa7 | ||
|
e392686d3c | ||
|
d23ae89574 | ||
|
f3b17b77e5 | ||
|
3fcf986853 | ||
|
b2d168c701 | ||
|
92028d4e80 | ||
|
4f063c4053 | ||
|
dcdcf6b733 | ||
|
ceda7d8ad0 | ||
|
f1de24b0b2 | ||
|
d56e855742 | ||
|
46fc2b7090 | ||
|
e998499068 | ||
|
4e87659a1d | ||
|
9008da4f43 | ||
|
5e6e7503bb | ||
|
c0b63d602e | ||
|
88418ebb4d | ||
|
db6a9839fe | ||
|
c970f28804 | ||
|
d06435a8bc | ||
|
6a8da7084b | ||
|
9075ccd9e4 | ||
|
6e7915b6c3 | ||
|
5198d808fa | ||
|
1e3389c70d | ||
|
e84ad80c46 | ||
|
30a97f855e | ||
|
1d39be1a97 | ||
|
92a1eae995 | ||
|
cc7541f132 | ||
|
9919f7ee95 | ||
|
c7056b1aa4 | ||
|
ec3ab23a0e | ||
|
2aa14bb24c | ||
|
e4f5549cbd | ||
|
e9af8c6876 | ||
|
e10f29854e | ||
|
c3417ca08d | ||
|
0fda062e8e | ||
|
67ef35bb78 | ||
|
c48da00b92 | ||
|
2b2ca63b48 | ||
|
efbcaf7820 | ||
|
dda12fcec6 | ||
|
70cc94bd01 | ||
|
bca8a497ad | ||
|
12716fd07f | ||
|
474df720e7 | ||
|
746aa8b1cc | ||
|
0ffcbff303 | ||
|
cf467ff7c8 | ||
|
591534e7e4 | ||
|
6428e90fa2 | ||
|
3345902612 | ||
|
a08b6ae7bf | ||
|
64f7bf9f96 | ||
|
c4b93b30d7 | ||
|
41aa50e66e | ||
|
9586dc98e4 | ||
|
548be38a0b | ||
|
0df7838ee1 | ||
|
17ff01c7ab | ||
|
c69afba381 | ||
|
88cf25ff80 | ||
|
bfb5b44d38 | ||
|
f735e7a036 | ||
|
a15db00bc0 | ||
|
de32c758c1 | ||
|
fed2719657 | ||
|
d7a2277804 | ||
|
ecfe257da2 | ||
|
02c60cf2c7 | ||
|
ef9f4b2965 | ||
|
edb08661f2 | ||
|
3458c36d5a | ||
|
3d43e9fe3a | ||
|
b6de5bb712 | ||
|
e26b40d889 | ||
|
f63849bb34 | ||
|
7ca36e7b43 | ||
|
44fef251c5 | ||
|
be3d0e301f | ||
|
c44ae6211c | ||
|
4f4e74273a | ||
|
892fc662e4 | ||
|
bc909e9f96 | ||
|
ff2211f0ad | ||
|
af8c358ce9 | ||
|
8404418202 | ||
|
eff77f0a0a | ||
|
9bca259e0f | ||
|
8c0f758a57 | ||
|
26184742eb | ||
|
729ac111af | ||
|
20f5783225 | ||
|
d2b202836d | ||
|
2fb712af66 | ||
|
53bd92f7a8 | ||
|
807eaae850 | ||
|
a1c4e27718 | ||
|
ad5790eee6 | ||
|
c2cdd880bf | ||
|
d8580d59d2 | ||
|
54d76a1131 | ||
|
1f3b4583da | ||
|
cb0e405e0f | ||
|
006f82528e | ||
|
80c9ef37d7 | ||
|
dde72b675b | ||
|
de873d3fc3 | ||
|
db3062c60b | ||
|
8fbc002a37 | ||
|
e368f3e9a6 | ||
|
ba90de20d9 | ||
|
3a7d4319d6 | ||
|
b9a21f26ba | ||
|
cf44c39aaf | ||
|
2f15ebbfb8 | ||
|
bca0ae8c59 | ||
|
a68d5d8633 | ||
|
091b49e29c | ||
|
e5eaf0fa9e | ||
|
653e08bce4 | ||
|
d4e0a8108b | ||
|
5c5d990c87 | ||
|
5ab75bf9ef | ||
|
7a26688494 | ||
|
a269b89168 | ||
|
5af39f3d0d | ||
|
3f5ebfbde3 | ||
|
4ace9f8030 | ||
|
9c4ace30c3 | ||
|
a7611c481e | ||
|
d2f789853d | ||
|
5e9ce905f7 | ||
|
2dca8fd6c7 | ||
|
54f174d262 | ||
|
3daa537791 | ||
|
5a28ccec8c | ||
|
b1a3eafbe6 | ||
|
8a7e28d38d | ||
|
f07ba797c5 | ||
|
bf860c87c6 | ||
|
5912845f29 | ||
|
09924b7998 | ||
|
93c71cb74a | ||
|
efc1fc2a9b | ||
|
3e19d26a72 | ||
|
f11087b83a | ||
|
4c49154dc0 | ||
|
c91e68975b | ||
|
216bbf1baa | ||
|
fafc3554a5 | ||
|
1fe1d7b419 | ||
|
32c57a8a49 | ||
|
2cb00530c7 | ||
|
e11a21ea19 | ||
|
3dbe2cdd32 | ||
|
faca1ab142 | ||
|
3b153bc9c3 | ||
|
1f0ae521d6 | ||
|
c41148b9dd | ||
|
40c4f2b96f | ||
|
a16123e4be | ||
|
0a66367243 | ||
|
c909de8faf | ||
|
53ed9e3bd8 | ||
|
0d48bf354a | ||
|
dd1dc186f9 | ||
|
c0cbc669bc | ||
|
45d33c6b97 | ||
|
8b6ad0d342 | ||
|
9aa0ecab6a | ||
|
08e3444409 | ||
|
c0472cccbf | ||
|
9a03faec58 | ||
|
8a366537e7 | ||
|
27339449c0 | ||
|
69b377495b | ||
|
4838d9ee3f | ||
|
42b528dec3 | ||
|
387d15521a | ||
|
a0d8a59d58 | ||
|
148035ce31 | ||
|
21c54015a2 | ||
|
2e969d3890 | ||
|
81c354ee0d | ||
|
047b3e3150 | ||
|
68483bd0f6 | ||
|
d8f5cdfd3c | ||
|
8ab4c90f54 | ||
|
872243be56 | ||
|
c68b7af554 | ||
|
38fcc71c6e | ||
|
41414854db | ||
|
a87918565a | ||
|
08073ae622 | ||
|
c5607661f0 | ||
|
e852953d9d | ||
|
448b353844 | ||
|
b525e49d6f | ||
|
31c5944b5e | ||
|
d958e12dbd | ||
|
6c42a04f8a | ||
|
38209fe326 | ||
|
e8ffb402de | ||
|
e6901ffadf | ||
|
ccf0357a51 | ||
|
d628a7ae80 | ||
|
5caf8adbd7 | ||
|
e0db3b1a40 | ||
|
e8f26b4401 | ||
|
9779491774 | ||
|
29080d7649 | ||
|
3b475331f2 | ||
|
4ae9719b74 | ||
|
0f7d9d029f | ||
|
a9c5da7d69 | ||
|
48aa042ee1 | ||
|
50ff9922a6 | ||
|
1aa326b7f2 | ||
|
79e83bb97f | ||
|
8200eda3ec | ||
|
168e52e428 | ||
|
d7ba172ece | ||
|
60dcc89289 | ||
|
c4ef0e90a4 | ||
|
000b2db0b7 | ||
|
ba8fd2952f | ||
|
661415174e | ||
|
97e7d4a870 | ||
|
7268663f24 | ||
|
9c2c7e3529 | ||
|
d1ac11a5c7 | ||
|
320e56643e | ||
|
a1009570cc | ||
|
1a07841a0c | ||
|
9dbdad3dc4 | ||
|
062596c881 | ||
|
84ed551ceb | ||
|
66f8f4ba51 | ||
|
91df08ed0f | ||
|
9a095d6b4b | ||
|
de84690884 | ||
|
0aa1fe0b8d | ||
|
e2f577b5e2 | ||
|
786efaa9e8 | ||
|
5206f38b9b | ||
|
991585bb98 | ||
|
90d76398ba | ||
|
26f8862cac | ||
|
4464eef24d | ||
|
34efe20d10 | ||
|
88729be1cb | ||
|
733dc35479 | ||
|
cf5d54c6c7 | ||
|
1c74b72cc1 | ||
|
4fc6661cb4 | ||
|
e5c944b72a | ||
|
eb78802b5d | ||
|
3faf6a69ac | ||
|
6bc71d1491 | ||
|
90cd6e0e15 | ||
|
a53fff833f | ||
|
1dc309d1ed | ||
|
f384046eba | ||
|
99e6aee472 | ||
|
447d80b76f | ||
|
4d628885b7 | ||
|
8334f8a378 | ||
|
f266efa942 | ||
|
a26270cb57 | ||
|
5e1ed3bd26 | ||
|
ae94aa060d | ||
|
c739b2c5bb | ||
|
46fa635cb2 | ||
|
977db93cae | ||
|
42f9ada917 | ||
|
760dafae86 | ||
|
dc5774a698 | ||
|
b3ef8242db | ||
|
bf0062066d | ||
|
9a1ab79372 | ||
|
ddafaa790e | ||
|
ff99055be1 | ||
|
f8c6d23362 | ||
|
791012ef95 | ||
|
edbe1baceb | ||
|
b296444d0c | ||
|
38ad2399ed | ||
|
f24e68c845 | ||
|
879adbfcc0 | ||
|
0b27896396 | ||
|
5e27785d40 |
112
.github/workflows/build.yml
vendored
Normal file
112
.github/workflows/build.yml
vendored
Normal file
@ -0,0 +1,112 @@
|
||||
name: Build
|
||||
|
||||
on: [push, pull_request]
|
||||
|
||||
|
||||
jobs:
|
||||
build-linux-i386:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build linux-i386
|
||||
run: |
|
||||
scripts/build-ubuntu-i386.sh
|
||||
|
||||
build-linux-amd64:
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build linux-amd64
|
||||
run: |
|
||||
scripts/build-ubuntu-amd64.sh
|
||||
|
||||
build-android-armv7a:
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build android-armv7a
|
||||
run: |
|
||||
scripts/build-android-armv7a.sh
|
||||
|
||||
build-windows-i386:
|
||||
runs-on: windows-2019
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build windows-i386
|
||||
run: |
|
||||
git submodule init && git submodule update
|
||||
./waf.bat configure -T debug --32bits
|
||||
./waf.bat build
|
||||
|
||||
build-windows-amd64:
|
||||
runs-on: windows-2019
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build windows-amd64
|
||||
run: |
|
||||
git submodule init && git submodule update
|
||||
./waf.bat configure -T debug
|
||||
./waf.bat build
|
||||
|
||||
build-dedicated-windows-i386:
|
||||
runs-on: windows-2019
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build dedicated windows-i386
|
||||
run: |
|
||||
git submodule init && git submodule update
|
||||
./waf.bat configure -T debug -d
|
||||
./waf.bat build
|
||||
|
||||
build-dedicated-windows-amd64:
|
||||
runs-on: windows-2019
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build dedicated windows-amd64
|
||||
run: |
|
||||
git submodule init && git submodule update
|
||||
./waf.bat configure -T debug -d
|
||||
./waf.bat build
|
||||
|
||||
build-dedicated-linux-i386:
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build dedicated linux-i386
|
||||
run: |
|
||||
scripts/build-ubuntu-i386.sh -d
|
||||
|
||||
build-dedicated-linux-amd64:
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build dedicated linux-amd64
|
||||
run: |
|
||||
scripts/build-ubuntu-amd64.sh -d
|
||||
|
||||
build-macos-amd64:
|
||||
runs-on: macos-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build macos-amd64
|
||||
run: |
|
||||
scripts/build-macos-amd64.sh
|
||||
|
||||
build-dedicated-macos-amd64:
|
||||
runs-on: macos-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build dedicated macos-amd64
|
||||
run: |
|
||||
scripts/build-macos-amd64.sh -d
|
59
.github/workflows/tests.yml
vendored
Normal file
59
.github/workflows/tests.yml
vendored
Normal file
@ -0,0 +1,59 @@
|
||||
name: Tests
|
||||
|
||||
on: [push, pull_request]
|
||||
|
||||
jobs:
|
||||
tests-linux-i386:
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Run tests linux-i386
|
||||
run: |
|
||||
scripts/tests-ubuntu-i386.sh
|
||||
|
||||
tests-linux-amd64:
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Run tests linux-amd64
|
||||
run: |
|
||||
scripts/tests-ubuntu-amd64.sh
|
||||
|
||||
tests-macos-amd64:
|
||||
runs-on: macos-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Run tests macos-amd64
|
||||
run: |
|
||||
scripts/tests-macos-amd64.sh
|
||||
|
||||
tests-windows-i386:
|
||||
runs-on: windows-2019
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Run tests windows-i386
|
||||
run: |
|
||||
git submodule init && git submodule update
|
||||
./waf.bat configure -T release --tests --prefix=out/ --32bits
|
||||
./waf.bat install
|
||||
cd out
|
||||
$env:Path = "bin";
|
||||
./unittest.exe
|
||||
|
||||
tests-windows-amd64:
|
||||
runs-on: windows-2019
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Run tests windows-amd64
|
||||
run: |
|
||||
git submodule init && git submodule update
|
||||
./waf.bat configure -T release --tests --prefix=out/
|
||||
./waf.bat install
|
||||
cd out
|
||||
$env:Path = "bin";
|
||||
./unittest.exe
|
30
.gitignore
vendored
30
.gitignore
vendored
@ -1,11 +1,39 @@
|
||||
*.mak
|
||||
*.mak.vpc_crc
|
||||
*.vpc_crc
|
||||
*.vpc.*
|
||||
*.project
|
||||
*obj_*
|
||||
build/
|
||||
.waf*
|
||||
.lock-waf*
|
||||
__pycache__
|
||||
*.pyc
|
||||
.vs/
|
||||
Debug/
|
||||
Debug_*/
|
||||
Release/
|
||||
Release_*/
|
||||
*.tlog/
|
||||
*.obj
|
||||
*.pch
|
||||
*.log
|
||||
*.idb
|
||||
*.pdb
|
||||
*.rc
|
||||
*.bin
|
||||
*.vcxproj*
|
||||
*.sln
|
||||
*.dll*
|
||||
*.exp
|
||||
*.ilk
|
||||
ValveETWProviderEvents.h
|
||||
game/client/*/client.lib
|
||||
game/server/*/server.lib
|
||||
.DS_Store
|
||||
build*/
|
||||
.cache/
|
||||
.ccache/
|
||||
waf3*/
|
||||
.vscode/
|
||||
.depproj/
|
||||
source-engine.sln
|
||||
|
3
.gitmodules
vendored
3
.gitmodules
vendored
@ -4,3 +4,6 @@
|
||||
[submodule "ivp"]
|
||||
path = ivp
|
||||
url = https://github.com/nillerusr/source-physics
|
||||
[submodule "lib"]
|
||||
path = lib
|
||||
url = https://github.com/nillerusr/source-engine-libs.git
|
||||
|
64
.vscode/tasks.json
vendored
Normal file
64
.vscode/tasks.json
vendored
Normal file
@ -0,0 +1,64 @@
|
||||
{
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
"label": "Configure Waf for Debug 32-bit",
|
||||
"type": "shell",
|
||||
"command": "./waf configure -T debug --prefix=build/out/",
|
||||
"problemMatcher": [],
|
||||
"windows": {
|
||||
"command": "./waf.bat configure -T debug --prefix=build/out/"
|
||||
},
|
||||
"osx": {
|
||||
"command": "python3 waf configure -T debug --prefix=build/out/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"label": "Configure Waf for Debug 64-bit",
|
||||
"type": "shell",
|
||||
"command": "./waf configure -T debug --64bits --prefix=build/out/",
|
||||
"problemMatcher": [],
|
||||
"windows": {
|
||||
"command": "./waf.bat configure -T debug --64bits --prefix=build/out/"
|
||||
},
|
||||
"osx": {
|
||||
"command": "python3 waf configure -T debug --64bits --prefix=build/out/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"label": "Configure Waf for Debug on Android (NDK r10e)",
|
||||
"type": "shell",
|
||||
"command": "./waf configure -T debug --android=armeabi-v7a-hard,4.9,21",
|
||||
"problemMatcher": [],
|
||||
"windows": {
|
||||
"command": "./waf.bat configure -T debug --android=armeabi-v7a-hard,4.9,21"
|
||||
},
|
||||
"osx": {
|
||||
"command": "python3 waf configure -T debug --android=armeabi-v7a-hard,4.9,21"
|
||||
}
|
||||
},
|
||||
{
|
||||
"label": "Build",
|
||||
"type": "shell",
|
||||
"command": "./waf install",
|
||||
"problemMatcher": {
|
||||
"base": "$gcc",
|
||||
"fileLocation": ["relative", "${workspaceFolder}/build"]
|
||||
},
|
||||
"group": {
|
||||
"kind": "build",
|
||||
"isDefault": true
|
||||
},
|
||||
"windows": {
|
||||
"command": "./waf.bat install",
|
||||
"problemMatcher": {
|
||||
"base": "$msCompile",
|
||||
"fileLocation": ["relative", "${workspaceFolder}/build"]
|
||||
}
|
||||
},
|
||||
"osx": {
|
||||
"command": "python3 waf install"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
76
README.md
76
README.md
@ -1,36 +1,48 @@
|
||||
# source-engine
|
||||
# Source Engine
|
||||
[![GitHub Actions Status](https://github.com/nillerusr/source-engine/actions/workflows/build.yml/badge.svg)](https://github.com/nillerusr/source-engine/actions/workflows/build.yml) [![GitHub Actions Status](https://github.com/nillerusr/source-engine/actions/workflows/tests.yml/badge.svg)](https://github.com/nillerusr/source-engine/actions/workflows/tests.yml)
|
||||
Discord: [![Discord Server](https://img.shields.io/discord/672055862608658432.svg)](https://discord.gg/hZRB7WMgGw)
|
||||
|
||||
# Goals
|
||||
* fixing bugs
|
||||
* ~~NEON support~~
|
||||
* DXVK support
|
||||
* remove unnecessary dependencies
|
||||
* Elbrus port
|
||||
* ~~Arm(android) port~~
|
||||
* improve performance
|
||||
* ~~replace current buildsystem with waf~~
|
||||
* rewrite achivement system( to work without steam )
|
||||
* 64-bit support
|
||||
|
||||
Information from [wikipedia](https://wikipedia.org/wiki/Source_(game_engine)):
|
||||
|
||||
Source is a 3D game engine developed by Valve.
|
||||
It debuted as the successor to GoldSrc with Half-Life: Source in June 2004,
|
||||
followed by Counter-Strike: Source and Half-Life 2 later that year.
|
||||
Source does not have a concise version numbering scheme; instead, it was released in incremental versions
|
||||
|
||||
Source code is based on TF2 2018 leak. Don't use it for commercial purposes.
|
||||
|
||||
This project is using waf buildsystem. If you have waf-related questions look https://waf.io/book
|
||||
|
||||
# Features:
|
||||
- Android, OSX, FreeBSD, Windows, Linux( glibc, musl ) support
|
||||
- Arm support( except windows )
|
||||
- 64bit support
|
||||
- Modern toolchains support
|
||||
- Fixed many undefined behaviours
|
||||
- Touch support( even on windows/linux/osx )
|
||||
- VTF 7.5 support
|
||||
- PBR support
|
||||
- bsp v19-v21 support( bsp v21 support is partial, portal 2 and csgo maps works fine )
|
||||
- mdl v46-49 support
|
||||
- Removed useless/unnecessary dependencies
|
||||
- Achivement system working without steam
|
||||
- Fixed many bugs
|
||||
- Serverbrowser works without steam
|
||||
|
||||
# Current tasks
|
||||
- Rewrite materialsystem for OpenGL render
|
||||
- dxvk-native support
|
||||
- Elbrus port
|
||||
- Bink audio support( for video_bink )
|
||||
|
||||
# How to Build?
|
||||
Clone repo and change directory:
|
||||
```
|
||||
git clone https://github.com/nillerusr/source-engine --recursive --depth 1
|
||||
cd source-engine
|
||||
```
|
||||
On Linux:
|
||||
- [Building instructions(EN)](https://github.com/nillerusr/source-engine/wiki/Source-Engine-(EN))
|
||||
- [Building instructions(RU)](https://github.com/nillerusr/source-engine/wiki/Source-Engine-(RU))
|
||||
|
||||
dependencies:
|
||||
fontconfig, freetype2, OpenAL, SDL2, libbz2, libcurl, libjpeg, libpng, zlib
|
||||
```
|
||||
./waf configure -T debug
|
||||
./waf build
|
||||
```
|
||||
On Linux for Android(**Note: only Android NDK r10e is supported**):
|
||||
```
|
||||
export ANDROID_NDK=/path/to/ndk
|
||||
./waf configure -T debug --android=armeabi-v7a,4.9,21
|
||||
./waf build
|
||||
```
|
||||
On Windows/MacOS:
|
||||
**TODO(WAF is not configured for Windows/MacOS. Use VPC as temporary solution)**
|
||||
# Support me
|
||||
BTC: `bc1qnjq92jj9uqjtafcx2zvnwd48q89hgtd6w8a6na`
|
||||
|
||||
ETH: `0x5d0D561146Ed758D266E59B56e85Af0b03ABAF46`
|
||||
|
||||
XMR: `48iXvX61MU24m5VGc77rXQYKmoww3dZh6hn7mEwDaLVTfGhyBKq2teoPpeBq6xvqj4itsGh6EzNTzBty6ZDDevApCFNpsJ`
|
||||
|
@ -28,14 +28,6 @@
|
||||
#include "tier3/tier3.h"
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Constructor
|
||||
//-----------------------------------------------------------------------------
|
||||
CVguiMatSysApp::CVguiMatSysApp()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Create all singleton systems
|
||||
//-----------------------------------------------------------------------------
|
||||
|
@ -631,8 +631,8 @@ void GLMDisplayInfo::Dump( int which )
|
||||
{
|
||||
SDLAPP_FUNC;
|
||||
|
||||
GLMPRINTF(("\n #%d: GLMDisplayInfo @ %08x, pixwidth=%d pixheight=%d",
|
||||
which, (int)this, m_info.m_displayPixelWidth, m_info.m_displayPixelHeight ));
|
||||
GLMPRINTF(("\n #%d: GLMDisplayInfo @ %p, pixwidth=%d pixheight=%d",
|
||||
which, this, m_info.m_displayPixelWidth, m_info.m_displayPixelHeight ));
|
||||
|
||||
FOR_EACH_VEC( *m_modes, i )
|
||||
{
|
||||
|
@ -14,7 +14,10 @@
|
||||
#include "filesystem_init.h"
|
||||
#include "tier1/convar.h"
|
||||
#include "vstdlib/cvar.h"
|
||||
|
||||
#ifndef DEDICATED
|
||||
#include "togl/rendermechanism.h"
|
||||
#endif
|
||||
|
||||
// NOTE: This has to be the last file included! (turned off below, since this is included like a header)
|
||||
#include "tier0/memdbgon.h"
|
||||
|
@ -36,8 +36,8 @@
|
||||
#define GLMPRINTF(args)
|
||||
#endif
|
||||
|
||||
#ifdef OSX
|
||||
ConVar osx_rawinput_set_one_time( "osx_rawinput_set_one_time", "0", FCVAR_ARCHIVE|FCVAR_HIDDEN, "");
|
||||
#if defined( OSX ) || defined( ANDROID )
|
||||
ConVar rawinput_set_one_time( "rawinput_set_one_time", "0", FCVAR_ARCHIVE|FCVAR_HIDDEN, "");
|
||||
#endif
|
||||
|
||||
ConVar gl_blit_halfx( "gl_blit_halfx", "0" );
|
||||
@ -206,8 +206,6 @@ void *VoidFnPtrLookup_GlMgr(const char *fn, bool &okay, const bool bRequired, vo
|
||||
{
|
||||
retval = _glGetProcAddress(fn);
|
||||
|
||||
Msg("_glGetProcAddress(%s) = %x\n", fn, retval);
|
||||
|
||||
if( !retval && l_gles )
|
||||
retval = dlsym( l_gles, fn );
|
||||
}
|
||||
@ -272,7 +270,7 @@ public:
|
||||
|
||||
// Get the next N events. The function returns the number of events that were filled into your array.
|
||||
virtual int GetEvents( CCocoaEvent *pEvents, int nMaxEventsToReturn, bool debugEvents = false );
|
||||
#ifdef LINUX
|
||||
#if defined(LINUX) || defined(PLATFORM_BSD)
|
||||
virtual int PeekAndRemoveKeyboardEvents( bool *pbEsc, bool *pbReturn, bool *pbSpace, bool debugEvent = false );
|
||||
#endif
|
||||
|
||||
@ -406,6 +404,9 @@ private:
|
||||
int m_MouseButtonDownX;
|
||||
int m_MouseButtonDownY;
|
||||
|
||||
bool m_bResetVsync;
|
||||
int m_nFramesToSkip;
|
||||
|
||||
double m_flPrevGLSwapWindowTime;
|
||||
};
|
||||
|
||||
@ -586,6 +587,9 @@ InitReturnVal_t CSDLMgr::Init()
|
||||
m_nWarpDelta = 0;
|
||||
m_bRawInput = false;
|
||||
|
||||
m_nFramesToSkip = 0;
|
||||
m_bResetVsync = false;
|
||||
|
||||
m_flPrevGLSwapWindowTime = 0.0f;
|
||||
|
||||
memset(m_pixelFormatAttribs, '\0', sizeof (m_pixelFormatAttribs));
|
||||
@ -1006,7 +1010,7 @@ int CSDLMgr::GetEvents( CCocoaEvent *pEvents, int nMaxEventsToReturn, bool debug
|
||||
return nToWrite;
|
||||
}
|
||||
|
||||
#ifdef LINUX
|
||||
#if defined(LINUX) || defined(PLATFORM_BSD)
|
||||
|
||||
int CSDLMgr::PeekAndRemoveKeyboardEvents( bool *pbEsc, bool *pbReturn, bool *pbSpace, bool debugEvent )
|
||||
{
|
||||
@ -1141,17 +1145,15 @@ void CSDLMgr::OnFrameRendered()
|
||||
|
||||
ConVarRef rawinput( "m_rawinput" );
|
||||
|
||||
|
||||
#ifdef OSX
|
||||
// We default raw input to on on Mac and set it one time for all users since
|
||||
#if defined( OSX ) || defined( ANDROID )
|
||||
// We default raw input to on on Mac/Android and set it one time for all users since
|
||||
// it didn't used to be the default.
|
||||
if ( !osx_rawinput_set_one_time.GetBool() )
|
||||
if ( !rawinput_set_one_time.GetBool() )
|
||||
{
|
||||
osx_rawinput_set_one_time.SetValue( 1 );
|
||||
rawinput_set_one_time.SetValue( 1 );
|
||||
rawinput.SetValue( 1 );
|
||||
}
|
||||
#endif
|
||||
|
||||
m_bRawInput = !m_bCursorVisible && rawinput.IsValid() && rawinput.GetBool();
|
||||
|
||||
SDL_bool bWindowGrab = !m_bCursorVisible ? SDL_TRUE : SDL_FALSE;
|
||||
@ -1435,6 +1437,19 @@ void CSDLMgr::ShowPixels( CShowPixelsParams *params )
|
||||
|
||||
m_flPrevGLSwapWindowTime = tm.GetDurationInProgress().GetMillisecondsF();
|
||||
|
||||
#ifdef ANDROID
|
||||
// ADRENO GPU MOMENT, SKIP 5 FRAMES
|
||||
if( m_bResetVsync )
|
||||
{
|
||||
if( m_nFramesToSkip <= 0 )
|
||||
{
|
||||
SDL_GL_SetSwapInterval(swapInterval);
|
||||
m_bResetVsync = false;
|
||||
}
|
||||
else
|
||||
m_nFramesToSkip--;
|
||||
}
|
||||
#endif
|
||||
|
||||
CheckGLError( __LINE__ );
|
||||
}
|
||||
@ -1891,6 +1906,7 @@ void CSDLMgr::PumpWindowsMessageLoop()
|
||||
}
|
||||
case SDL_WINDOWEVENT_FOCUS_GAINED:
|
||||
{
|
||||
m_bResetVsync = true; m_nFramesToSkip = 3;
|
||||
m_bHasFocus = true;
|
||||
SDL_ShowCursor( m_bCursorVisible ? 1 : 0 );
|
||||
CCocoaEvent theEvent;
|
||||
@ -2228,7 +2244,7 @@ GLMDisplayDB *CSDLMgr::GetDisplayDB( void )
|
||||
}
|
||||
|
||||
#ifndef OSX
|
||||
# include "glmdisplaydb_linuxwin.inl"
|
||||
#include "glmdisplaydb_linuxwin.inl"
|
||||
#endif
|
||||
|
||||
|
||||
|
@ -18,11 +18,25 @@ def build(bld):
|
||||
source = [
|
||||
'AppSystemGroup.cpp',
|
||||
'../public/filesystem_init.cpp',
|
||||
# 'vguimatsysapp.cpp' [$WIN32]
|
||||
# 'winapp.cpp' [$WIN32]
|
||||
]
|
||||
|
||||
if bld.env.SDL:
|
||||
source += [
|
||||
'sdlmgr.cpp'
|
||||
]
|
||||
|
||||
if bld.env.DEST_OS == 'darwin' and bld.env.GL:
|
||||
source += ['glmrendererinfo_osx.mm']
|
||||
|
||||
|
||||
if bld.env.DEST_OS == 'win32':
|
||||
source += [
|
||||
'vguimatsysapp.cpp',
|
||||
'winapp.cpp'
|
||||
]
|
||||
else:
|
||||
source += [
|
||||
'posixapp.cpp',# [$POSIX]
|
||||
'sdlmgr.cpp'# [$SDL]
|
||||
# 'glmrendererinfo_osx.mm' [$OSXALL]
|
||||
]
|
||||
|
||||
includes = [
|
||||
@ -36,6 +50,9 @@ def build(bld):
|
||||
|
||||
libs = []
|
||||
|
||||
if bld.env.DEST_OS == 'darwin':
|
||||
libs += ['FOUNDATION', 'APPKIT', 'IOKIT']
|
||||
|
||||
bld.stlib(
|
||||
source = source,
|
||||
target = PROJECT_NAME,
|
||||
|
@ -88,14 +88,7 @@ namespace ImageLoader
|
||||
|
||||
Assert( IsFormatValidForConversion( imageFormat ) );
|
||||
|
||||
#if !defined( DX_TO_GL_ABSTRACTION ) && !defined( NO_X360_XDK )
|
||||
if ( IsPC() )
|
||||
{
|
||||
// running as a win32 tool, data is in expected order
|
||||
// for conversion code
|
||||
return;
|
||||
}
|
||||
|
||||
#ifdef _X360
|
||||
// running on 360 and converting, input data must be x86 order
|
||||
// swap to ensure conversion code gets valid data
|
||||
XGENDIANTYPE xEndian;
|
||||
@ -137,7 +130,7 @@ namespace ImageLoader
|
||||
{
|
||||
Assert( IsFormatValidForConversion( imageFormat ) );
|
||||
|
||||
#if !defined( DX_TO_GL_ABSTRACTION ) && !defined( NO_X360_XDK )
|
||||
#ifdef _X360
|
||||
// It would have been nice to use the 360 D3DFORMAT bit encodings, but the codes
|
||||
// are different for win32, and this routine is used by a win32 library to
|
||||
// manipulate 360 data, so there can be no reliance on D3DFORMAT bits
|
||||
@ -201,7 +194,7 @@ namespace ImageLoader
|
||||
{
|
||||
Assert( IsFormatValidForConversion( imageFormat ) );
|
||||
|
||||
#if !defined( DX_TO_GL_ABSTRACTION ) && !defined( NO_X360_XDK )
|
||||
#ifdef _X360
|
||||
XGENDIANTYPE xEndian;
|
||||
switch ( imageFormat )
|
||||
{
|
||||
@ -256,5 +249,4 @@ namespace ImageLoader
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -15,6 +15,8 @@ $Configuration
|
||||
$AdditionalIncludeDirectories "$BASE;$SRCDIR\dx9sdk\include" [$WINDOWS]
|
||||
$AdditionalIncludeDirectories "$BASE;$SRCDIR\x360xdk\include\win32\vs2005" [$WINDOWS]
|
||||
$AdditionalIncludeDirectories "$BASE;$SRCDIR\thirdparty\stb"
|
||||
|
||||
$PreprocessorDefinitions "$BASE;NO_X360_XDK;" [!$X360]
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -828,7 +828,7 @@ bool ConvertToATIxN( const uint8 *src, ImageFormat srcImageFormat,
|
||||
uint8 *dst, ImageFormat dstImageFormat,
|
||||
int width, int height, int srcStride, int dstStride )
|
||||
{
|
||||
#if !defined( _X360 ) && !defined( POSIX )
|
||||
#if 0
|
||||
|
||||
// from rgb(a) to ATIxN
|
||||
if( srcStride != 0 || dstStride != 0 )
|
||||
@ -877,7 +877,7 @@ bool ConvertToDXTLegacy( const uint8 *src, ImageFormat srcImageFormat,
|
||||
uint8 *dst, ImageFormat dstImageFormat,
|
||||
int width, int height, int srcStride, int dstStride )
|
||||
{
|
||||
#if !defined( _X360 ) && !defined( POSIX )
|
||||
#if 0
|
||||
// from rgb(a) to dxtN
|
||||
if( srcStride != 0 || dstStride != 0 )
|
||||
return false;
|
||||
|
@ -288,13 +288,11 @@ int GetNumMipMapLevels( int width, int height, int depth )
|
||||
// Turn off warning about FOURCC formats below...
|
||||
#pragma warning (disable:4063)
|
||||
|
||||
#ifdef DX_TO_GL_ABSTRACTION
|
||||
#ifndef MAKEFOURCC
|
||||
#define MAKEFOURCC(ch0, ch1, ch2, ch3) \
|
||||
((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \
|
||||
((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24 ))
|
||||
#endif //defined(MAKEFOURCC)
|
||||
#endif
|
||||
//-----------------------------------------------------------------------------
|
||||
// convert back and forth from D3D format to ImageFormat, regardless of
|
||||
// whether it's supported or not
|
||||
|
@ -784,6 +784,50 @@ bool ResampleRGB323232F( const ResampleInfo_t& info )
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ResampleRGBA32323232F( const ResampleInfo_t& info )
|
||||
{
|
||||
// HDRFIXME: This is some lame shit right here. (We need to get NICE working, etc, etc.)
|
||||
|
||||
// Make sure everything is power of two.
|
||||
Assert( ( info.m_nSrcWidth & ( info.m_nSrcWidth - 1 ) ) == 0 );
|
||||
Assert( ( info.m_nSrcHeight & ( info.m_nSrcHeight - 1 ) ) == 0 );
|
||||
Assert( ( info.m_nDestWidth & ( info.m_nDestWidth - 1 ) ) == 0 );
|
||||
Assert( ( info.m_nDestHeight & ( info.m_nDestHeight - 1 ) ) == 0 );
|
||||
|
||||
// Make sure that we aren't upscaling the image. . .we don't support that very well.
|
||||
Assert( info.m_nSrcWidth >= info.m_nDestWidth );
|
||||
Assert( info.m_nSrcHeight >= info.m_nDestHeight );
|
||||
|
||||
int nSampleWidth = info.m_nSrcWidth / info.m_nDestWidth;
|
||||
int nSampleHeight = info.m_nSrcHeight / info.m_nDestHeight;
|
||||
|
||||
float *pSrc = ( float * )info.m_pSrc;
|
||||
float *pDst = ( float * )info.m_pDest;
|
||||
for( int y = 0; y < info.m_nDestHeight; y++ )
|
||||
{
|
||||
for( int x = 0; x < info.m_nDestWidth; x++ )
|
||||
{
|
||||
float accum[4] = { 0.0f, 0.0f, 0.0f, 0.0f };
|
||||
for( int nSampleY = 0; nSampleY < nSampleHeight; nSampleY++ )
|
||||
{
|
||||
for( int nSampleX = 0; nSampleX < nSampleWidth; nSampleX++ )
|
||||
{
|
||||
accum[0] += pSrc[((x*nSampleWidth+nSampleX)+(y*nSampleHeight+nSampleY)*info.m_nSrcWidth)*4+0];
|
||||
accum[1] += pSrc[((x*nSampleWidth+nSampleX)+(y*nSampleHeight+nSampleY)*info.m_nSrcWidth)*4+1];
|
||||
accum[2] += pSrc[((x*nSampleWidth+nSampleX)+(y*nSampleHeight+nSampleY)*info.m_nSrcWidth)*4+2];
|
||||
accum[3] += pSrc[((x*nSampleWidth+nSampleX)+(y*nSampleHeight+nSampleY)*info.m_nSrcWidth)*4+3];
|
||||
}
|
||||
}
|
||||
for( int i = 0; i < 4; i++ )
|
||||
{
|
||||
accum[i] /= ( nSampleWidth * nSampleHeight );
|
||||
pDst[(x+y*info.m_nDestWidth)*4+i] = accum[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Generates mipmap levels
|
||||
//-----------------------------------------------------------------------------
|
||||
|
@ -21,7 +21,6 @@ def build(bld):
|
||||
'float_bm.cpp',
|
||||
'float_bm2.cpp',
|
||||
'float_bm3.cpp',
|
||||
#'float_bm4.cpp', [$WINDOWS]
|
||||
'float_bm_bilateral_filter.cpp',
|
||||
'float_cube.cpp',
|
||||
'imageformat.cpp',
|
||||
@ -32,6 +31,11 @@ def build(bld):
|
||||
'bitmap.cpp'
|
||||
]
|
||||
|
||||
if bld.env.DEST_OS == 'win32':
|
||||
source += [
|
||||
'float_bm4.cpp'
|
||||
]
|
||||
|
||||
includes = [
|
||||
'.',
|
||||
'../public',
|
||||
@ -44,6 +48,9 @@ def build(bld):
|
||||
|
||||
libs = []
|
||||
|
||||
#if bld.env.DEST_OS == 'win32':
|
||||
# libs += ['NVTC', 'ATI_COMPRESS_MT_VC10']
|
||||
|
||||
bld.stlib(
|
||||
source = source,
|
||||
target = PROJECT_NAME,
|
||||
|
5
build.sh
5
build.sh
@ -1,5 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# example: ./build.sh everything togl
|
||||
|
||||
make MAKE_VERBOSE=1 NO_CHROOT=1 -f $1.mak $2 -j$(nproc --all)
|
@ -53,12 +53,12 @@ int CBlacklistedServerManager::LoadServersFromFile( const char *pszFilename, boo
|
||||
{
|
||||
const char *pszName = pData->GetString( "name" );
|
||||
|
||||
uint32 ulDate = pData->GetInt( "date" );
|
||||
uint64 ullDate = pData->GetUint64( "date" );
|
||||
if ( bResetTimes )
|
||||
{
|
||||
time_t today;
|
||||
time( &today );
|
||||
ulDate = today;
|
||||
ullDate = (uint64)today;
|
||||
}
|
||||
|
||||
const char *pszNetAddr = pData->GetString( "addr" );
|
||||
@ -68,7 +68,7 @@ int CBlacklistedServerManager::LoadServersFromFile( const char *pszFilename, boo
|
||||
|
||||
m_Blacklist[iIdx].m_nServerID = m_iNextServerID++;
|
||||
V_strncpy( m_Blacklist[iIdx].m_szServerName, pszName, sizeof( m_Blacklist[iIdx].m_szServerName ) );
|
||||
m_Blacklist[iIdx].m_ulTimeBlacklistedAt = ulDate;
|
||||
m_Blacklist[iIdx].m_ullTimeBlacklistedAt = ullDate;
|
||||
m_Blacklist[iIdx].m_NetAdr.SetFromString( pszNetAddr );
|
||||
|
||||
++count;
|
||||
@ -92,7 +92,7 @@ void CBlacklistedServerManager::SaveToFile( const char *pszFilename )
|
||||
{
|
||||
KeyValues *pSubKey = new KeyValues( "server" );
|
||||
pSubKey->SetString( "name", m_Blacklist[i].m_szServerName );
|
||||
pSubKey->SetInt( "date", m_Blacklist[i].m_ulTimeBlacklistedAt );
|
||||
pSubKey->SetUint64( "date", m_Blacklist[i].m_ullTimeBlacklistedAt );
|
||||
pSubKey->SetString( "addr", m_Blacklist[i].m_NetAdr.ToString() );
|
||||
pKV->AddSubKey( pSubKey );
|
||||
}
|
||||
@ -120,7 +120,7 @@ blacklisted_server_t *CBlacklistedServerManager::AddServer( gameserveritem_t &se
|
||||
|
||||
time_t today;
|
||||
time( &today );
|
||||
m_Blacklist[iIdx].m_ulTimeBlacklistedAt = today;
|
||||
m_Blacklist[iIdx].m_ullTimeBlacklistedAt = (uint64)today;
|
||||
m_Blacklist[iIdx].m_NetAdr = netAdr;
|
||||
m_Blacklist[iIdx].m_nServerID = m_iNextServerID++;
|
||||
|
||||
@ -145,7 +145,7 @@ blacklisted_server_t *CBlacklistedServerManager::AddServer( const char *serverNa
|
||||
|
||||
time_t today;
|
||||
time( &today );
|
||||
m_Blacklist[iIdx].m_ulTimeBlacklistedAt = today;
|
||||
m_Blacklist[iIdx].m_ullTimeBlacklistedAt = (uint64)today;
|
||||
|
||||
m_Blacklist[iIdx].m_NetAdr = netAdr;
|
||||
m_Blacklist[iIdx].m_nServerID = m_iNextServerID++;
|
||||
@ -157,7 +157,7 @@ blacklisted_server_t *CBlacklistedServerManager::AddServer( const char *serverNa
|
||||
//-----------------------------------------------------------------------------
|
||||
// Purpose: Add the given server to the blacklist. Return added server.
|
||||
//-----------------------------------------------------------------------------
|
||||
blacklisted_server_t *CBlacklistedServerManager::AddServer( const char *serverName, const char *netAddressString, uint32 timestamp )
|
||||
blacklisted_server_t *CBlacklistedServerManager::AddServer( const char *serverName, const char *netAddressString, uint64 timestamp )
|
||||
{
|
||||
netadr_t netAdr( netAddressString );
|
||||
|
||||
@ -168,7 +168,7 @@ blacklisted_server_t *CBlacklistedServerManager::AddServer( const char *serverNa
|
||||
int iIdx = m_Blacklist.AddToTail();
|
||||
|
||||
V_strncpy( m_Blacklist[iIdx].m_szServerName, serverName, sizeof( m_Blacklist[iIdx].m_szServerName ) );
|
||||
m_Blacklist[iIdx].m_ulTimeBlacklistedAt = timestamp;
|
||||
m_Blacklist[iIdx].m_ullTimeBlacklistedAt = timestamp;
|
||||
m_Blacklist[iIdx].m_NetAdr = netAdr;
|
||||
m_Blacklist[iIdx].m_nServerID = m_iNextServerID++;
|
||||
|
||||
|
@ -23,7 +23,7 @@ struct blacklisted_server_t
|
||||
{
|
||||
int m_nServerID;
|
||||
char m_szServerName[64];
|
||||
uint32 m_ulTimeBlacklistedAt;
|
||||
uint64 m_ullTimeBlacklistedAt;
|
||||
netadr_t m_NetAdr;
|
||||
};
|
||||
|
||||
@ -40,7 +40,7 @@ public:
|
||||
|
||||
blacklisted_server_t *AddServer( gameserveritem_t &server );
|
||||
blacklisted_server_t *AddServer( const char *serverName, uint32 serverIP, int serverPort );
|
||||
blacklisted_server_t *AddServer( const char *serverName, const char *netAddressString, uint32 timestamp );
|
||||
blacklisted_server_t *AddServer( const char *serverName, const char *netAddressString, uint64 timestamp );
|
||||
|
||||
void RemoveServer( int iServerID ); // remove server with matching 'server id' from list
|
||||
|
||||
|
@ -1,350 +0,0 @@
|
||||
/* ftconfig.h. Generated from ftconfig.in by configure. */
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftconfig.in */
|
||||
/* */
|
||||
/* UNIX-specific configuration file (specification only). */
|
||||
/* */
|
||||
/* Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This header file contains a number of macro definitions that are used */
|
||||
/* by the rest of the engine. Most of the macros here are automatically */
|
||||
/* determined at compile time, and you should not need to change it to */
|
||||
/* port FreeType, except to compile the library with a non-ANSI */
|
||||
/* compiler. */
|
||||
/* */
|
||||
/* Note however that if some specific modifications are needed, we */
|
||||
/* advise you to place a modified copy in your build directory. */
|
||||
/* */
|
||||
/* The build directory is usually `freetype/builds/<system>', and */
|
||||
/* contains system-specific files that are always included first when */
|
||||
/* building the library. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#ifndef __FTCONFIG_H__
|
||||
#define __FTCONFIG_H__
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_CONFIG_OPTIONS_H
|
||||
#include FT_CONFIG_STANDARD_LIBRARY_H
|
||||
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* PLATFORM-SPECIFIC CONFIGURATION MACROS */
|
||||
/* */
|
||||
/* These macros can be toggled to suit a specific system. The current */
|
||||
/* ones are defaults used to compile FreeType in an ANSI C environment */
|
||||
/* (16bit compilers are also supported). Copy this file to your own */
|
||||
/* `freetype/builds/<system>' directory, and edit it to port the engine. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#define HAVE_UNISTD_H 1
|
||||
#define HAVE_FCNTL_H 1
|
||||
|
||||
#define SIZEOF_INT 4
|
||||
#define SIZEOF_LONG 4
|
||||
|
||||
|
||||
#define FT_SIZEOF_INT SIZEOF_INT
|
||||
#define FT_SIZEOF_LONG SIZEOF_LONG
|
||||
|
||||
#define FT_CHAR_BIT CHAR_BIT
|
||||
|
||||
/* Preferred alignment of data */
|
||||
#define FT_ALIGNMENT 8
|
||||
|
||||
|
||||
/* FT_UNUSED is a macro used to indicate that a given parameter is not */
|
||||
/* used -- this is only used to get rid of unpleasant compiler warnings */
|
||||
#ifndef FT_UNUSED
|
||||
#define FT_UNUSED( arg ) ( (arg) = (arg) )
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* AUTOMATIC CONFIGURATION MACROS */
|
||||
/* */
|
||||
/* These macros are computed from the ones defined above. Don't touch */
|
||||
/* their definition, unless you know precisely what you are doing. No */
|
||||
/* porter should need to mess with them. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Mac support */
|
||||
/* */
|
||||
/* This is the only necessary change, so it is defined here instead */
|
||||
/* providing a new configuration file. */
|
||||
/* */
|
||||
#if ( defined( __APPLE__ ) && !defined( DARWIN_NO_CARBON ) ) || \
|
||||
( defined( __MWERKS__ ) && defined( macintosh ) )
|
||||
/* no Carbon frameworks for 64bit 10.4.x */
|
||||
#include "AvailabilityMacros.h"
|
||||
#if defined( __LP64__ ) && \
|
||||
( MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_4 )
|
||||
#define DARWIN_NO_CARBON 1
|
||||
#else
|
||||
#define FT_MACINTOSH 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
/* Fix compiler warning with sgi compiler */
|
||||
#if defined( __sgi ) && !defined( __GNUC__ )
|
||||
#if defined( _COMPILER_VERSION ) && ( _COMPILER_VERSION >= 730 )
|
||||
#pragma set woff 3505
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* IntN types */
|
||||
/* */
|
||||
/* Used to guarantee the size of some specific integers. */
|
||||
/* */
|
||||
typedef signed short FT_Int16;
|
||||
typedef unsigned short FT_UInt16;
|
||||
|
||||
#if FT_SIZEOF_INT == 4
|
||||
|
||||
typedef signed int FT_Int32;
|
||||
typedef unsigned int FT_UInt32;
|
||||
|
||||
#elif FT_SIZEOF_LONG == 4
|
||||
|
||||
typedef signed long FT_Int32;
|
||||
typedef unsigned long FT_UInt32;
|
||||
|
||||
#else
|
||||
#error "no 32bit type found -- please check your configuration files"
|
||||
#endif
|
||||
|
||||
|
||||
/* look up an integer type that is at least 32 bits */
|
||||
#if FT_SIZEOF_INT >= 4
|
||||
|
||||
typedef int FT_Fast;
|
||||
typedef unsigned int FT_UFast;
|
||||
|
||||
#elif FT_SIZEOF_LONG >= 4
|
||||
|
||||
typedef long FT_Fast;
|
||||
typedef unsigned long FT_UFast;
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* determine whether we have a 64-bit int type for platforms without */
|
||||
/* Autoconf */
|
||||
#if FT_SIZEOF_LONG == 8
|
||||
|
||||
/* FT_LONG64 must be defined if a 64-bit type is available */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long
|
||||
|
||||
#elif defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */
|
||||
|
||||
/* this compiler provides the __int64 type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 __int64
|
||||
|
||||
#elif defined( __BORLANDC__ ) /* Borland C++ */
|
||||
|
||||
/* XXXX: We should probably check the value of __BORLANDC__ in order */
|
||||
/* to test the compiler version. */
|
||||
|
||||
/* this compiler provides the __int64 type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 __int64
|
||||
|
||||
#elif defined( __WATCOMC__ ) /* Watcom C++ */
|
||||
|
||||
/* Watcom doesn't provide 64-bit data types */
|
||||
|
||||
#elif defined( __MWERKS__ ) /* Metrowerks CodeWarrior */
|
||||
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long long int
|
||||
|
||||
#elif defined( __GNUC__ )
|
||||
|
||||
/* GCC provides the `long long' type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long long int
|
||||
|
||||
#endif /* FT_SIZEOF_LONG == 8 */
|
||||
|
||||
|
||||
#define FT_BEGIN_STMNT do {
|
||||
#define FT_END_STMNT } while ( 0 )
|
||||
#define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* A 64-bit data type will create compilation problems if you compile */
|
||||
/* in strict ANSI mode. To avoid them, we disable their use if */
|
||||
/* __STDC__ is defined. You can however ignore this rule by */
|
||||
/* defining the FT_CONFIG_OPTION_FORCE_INT64 configuration macro. */
|
||||
/* */
|
||||
#if defined( FT_LONG64 ) && !defined( FT_CONFIG_OPTION_FORCE_INT64 )
|
||||
|
||||
#ifdef __STDC__
|
||||
|
||||
/* Undefine the 64-bit macros in strict ANSI compilation mode. */
|
||||
/* Since `#undef' doesn't survive in configuration header files */
|
||||
/* we use the postprocessing facility of AC_CONFIG_HEADERS to */
|
||||
/* replace the leading `/' with `#'. */
|
||||
#undef FT_LONG64
|
||||
#undef FT_INT64
|
||||
|
||||
#endif /* __STDC__ */
|
||||
|
||||
#endif /* FT_LONG64 && !FT_CONFIG_OPTION_FORCE_INT64 */
|
||||
|
||||
|
||||
#ifdef FT_MAKE_OPTION_SINGLE_OBJECT
|
||||
|
||||
#define FT_LOCAL( x ) static x
|
||||
#define FT_LOCAL_DEF( x ) static x
|
||||
|
||||
#else
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_LOCAL( x ) extern "C" x
|
||||
#define FT_LOCAL_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_LOCAL( x ) extern x
|
||||
#define FT_LOCAL_DEF( x ) x
|
||||
#endif
|
||||
|
||||
#endif /* FT_MAKE_OPTION_SINGLE_OBJECT */
|
||||
|
||||
|
||||
#ifndef FT_BASE
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_BASE( x ) extern "C" x
|
||||
#else
|
||||
#define FT_BASE( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_BASE */
|
||||
|
||||
|
||||
#ifndef FT_BASE_DEF
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_BASE_DEF( x ) x
|
||||
#else
|
||||
#define FT_BASE_DEF( x ) x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_BASE_DEF */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT_DEF
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT_DEF( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT_DEF */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT_VAR
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT_VAR( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT_VAR( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT_VAR */
|
||||
|
||||
/* The following macros are needed to compile the library with a */
|
||||
/* C++ compiler and with 16bit compilers. */
|
||||
/* */
|
||||
|
||||
/* This is special. Within C++, you must specify `extern "C"' for */
|
||||
/* functions which are used via function pointers, and you also */
|
||||
/* must do that for structures which contain function pointers to */
|
||||
/* assure C linkage -- it's not possible to have (local) anonymous */
|
||||
/* functions which are accessed by (global) function pointers. */
|
||||
/* */
|
||||
/* */
|
||||
/* FT_CALLBACK_DEF is used to _define_ a callback function. */
|
||||
/* */
|
||||
/* FT_CALLBACK_TABLE is used to _declare_ a constant variable that */
|
||||
/* contains pointers to callback functions. */
|
||||
/* */
|
||||
/* FT_CALLBACK_TABLE_DEF is used to _define_ a constant variable */
|
||||
/* that contains pointers to callback functions. */
|
||||
/* */
|
||||
/* */
|
||||
/* Some 16bit compilers have to redefine these macros to insert */
|
||||
/* the infamous `_cdecl' or `__fastcall' declarations. */
|
||||
/* */
|
||||
#ifndef FT_CALLBACK_DEF
|
||||
#ifdef __cplusplus
|
||||
#define FT_CALLBACK_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_CALLBACK_DEF( x ) static x
|
||||
#endif
|
||||
#endif /* FT_CALLBACK_DEF */
|
||||
|
||||
#ifndef FT_CALLBACK_TABLE
|
||||
#ifdef __cplusplus
|
||||
#define FT_CALLBACK_TABLE extern "C"
|
||||
#define FT_CALLBACK_TABLE_DEF extern "C"
|
||||
#else
|
||||
#define FT_CALLBACK_TABLE extern
|
||||
#define FT_CALLBACK_TABLE_DEF /* nothing */
|
||||
#endif
|
||||
#endif /* FT_CALLBACK_TABLE */
|
||||
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
||||
#endif /* __FTCONFIG_H__ */
|
||||
|
||||
|
||||
/* END */
|
@ -1,350 +0,0 @@
|
||||
/* ftconfig.h. Generated from ftconfig.in by configure. */
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftconfig.in */
|
||||
/* */
|
||||
/* UNIX-specific configuration file (specification only). */
|
||||
/* */
|
||||
/* Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This header file contains a number of macro definitions that are used */
|
||||
/* by the rest of the engine. Most of the macros here are automatically */
|
||||
/* determined at compile time, and you should not need to change it to */
|
||||
/* port FreeType, except to compile the library with a non-ANSI */
|
||||
/* compiler. */
|
||||
/* */
|
||||
/* Note however that if some specific modifications are needed, we */
|
||||
/* advise you to place a modified copy in your build directory. */
|
||||
/* */
|
||||
/* The build directory is usually `freetype/builds/<system>', and */
|
||||
/* contains system-specific files that are always included first when */
|
||||
/* building the library. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#ifndef __FTCONFIG_H__
|
||||
#define __FTCONFIG_H__
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_CONFIG_OPTIONS_H
|
||||
#include FT_CONFIG_STANDARD_LIBRARY_H
|
||||
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* PLATFORM-SPECIFIC CONFIGURATION MACROS */
|
||||
/* */
|
||||
/* These macros can be toggled to suit a specific system. The current */
|
||||
/* ones are defaults used to compile FreeType in an ANSI C environment */
|
||||
/* (16bit compilers are also supported). Copy this file to your own */
|
||||
/* `freetype/builds/<system>' directory, and edit it to port the engine. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#define HAVE_UNISTD_H 1
|
||||
#define HAVE_FCNTL_H 1
|
||||
|
||||
#define SIZEOF_INT 4
|
||||
#define SIZEOF_LONG 8
|
||||
|
||||
|
||||
#define FT_SIZEOF_INT SIZEOF_INT
|
||||
#define FT_SIZEOF_LONG SIZEOF_LONG
|
||||
|
||||
#define FT_CHAR_BIT CHAR_BIT
|
||||
|
||||
/* Preferred alignment of data */
|
||||
#define FT_ALIGNMENT 8
|
||||
|
||||
|
||||
/* FT_UNUSED is a macro used to indicate that a given parameter is not */
|
||||
/* used -- this is only used to get rid of unpleasant compiler warnings */
|
||||
#ifndef FT_UNUSED
|
||||
#define FT_UNUSED( arg ) ( (arg) = (arg) )
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* AUTOMATIC CONFIGURATION MACROS */
|
||||
/* */
|
||||
/* These macros are computed from the ones defined above. Don't touch */
|
||||
/* their definition, unless you know precisely what you are doing. No */
|
||||
/* porter should need to mess with them. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Mac support */
|
||||
/* */
|
||||
/* This is the only necessary change, so it is defined here instead */
|
||||
/* providing a new configuration file. */
|
||||
/* */
|
||||
#if ( defined( __APPLE__ ) && !defined( DARWIN_NO_CARBON ) ) || \
|
||||
( defined( __MWERKS__ ) && defined( macintosh ) )
|
||||
/* no Carbon frameworks for 64bit 10.4.x */
|
||||
#include "AvailabilityMacros.h"
|
||||
#if defined( __LP64__ ) && \
|
||||
( MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_4 )
|
||||
#define DARWIN_NO_CARBON 1
|
||||
#else
|
||||
#define FT_MACINTOSH 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
/* Fix compiler warning with sgi compiler */
|
||||
#if defined( __sgi ) && !defined( __GNUC__ )
|
||||
#if defined( _COMPILER_VERSION ) && ( _COMPILER_VERSION >= 730 )
|
||||
#pragma set woff 3505
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* IntN types */
|
||||
/* */
|
||||
/* Used to guarantee the size of some specific integers. */
|
||||
/* */
|
||||
typedef signed short FT_Int16;
|
||||
typedef unsigned short FT_UInt16;
|
||||
|
||||
#if FT_SIZEOF_INT == 4
|
||||
|
||||
typedef signed int FT_Int32;
|
||||
typedef unsigned int FT_UInt32;
|
||||
|
||||
#elif FT_SIZEOF_LONG == 4
|
||||
|
||||
typedef signed long FT_Int32;
|
||||
typedef unsigned long FT_UInt32;
|
||||
|
||||
#else
|
||||
#error "no 32bit type found -- please check your configuration files"
|
||||
#endif
|
||||
|
||||
|
||||
/* look up an integer type that is at least 32 bits */
|
||||
#if FT_SIZEOF_INT >= 4
|
||||
|
||||
typedef int FT_Fast;
|
||||
typedef unsigned int FT_UFast;
|
||||
|
||||
#elif FT_SIZEOF_LONG >= 4
|
||||
|
||||
typedef long FT_Fast;
|
||||
typedef unsigned long FT_UFast;
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* determine whether we have a 64-bit int type for platforms without */
|
||||
/* Autoconf */
|
||||
#if FT_SIZEOF_LONG == 8
|
||||
|
||||
/* FT_LONG64 must be defined if a 64-bit type is available */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long
|
||||
|
||||
#elif defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */
|
||||
|
||||
/* this compiler provides the __int64 type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 __int64
|
||||
|
||||
#elif defined( __BORLANDC__ ) /* Borland C++ */
|
||||
|
||||
/* XXXX: We should probably check the value of __BORLANDC__ in order */
|
||||
/* to test the compiler version. */
|
||||
|
||||
/* this compiler provides the __int64 type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 __int64
|
||||
|
||||
#elif defined( __WATCOMC__ ) /* Watcom C++ */
|
||||
|
||||
/* Watcom doesn't provide 64-bit data types */
|
||||
|
||||
#elif defined( __MWERKS__ ) /* Metrowerks CodeWarrior */
|
||||
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long long int
|
||||
|
||||
#elif defined( __GNUC__ )
|
||||
|
||||
/* GCC provides the `long long' type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long long int
|
||||
|
||||
#endif /* FT_SIZEOF_LONG == 8 */
|
||||
|
||||
|
||||
#define FT_BEGIN_STMNT do {
|
||||
#define FT_END_STMNT } while ( 0 )
|
||||
#define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* A 64-bit data type will create compilation problems if you compile */
|
||||
/* in strict ANSI mode. To avoid them, we disable their use if */
|
||||
/* __STDC__ is defined. You can however ignore this rule by */
|
||||
/* defining the FT_CONFIG_OPTION_FORCE_INT64 configuration macro. */
|
||||
/* */
|
||||
#if defined( FT_LONG64 ) && !defined( FT_CONFIG_OPTION_FORCE_INT64 )
|
||||
|
||||
#ifdef __STDC__
|
||||
|
||||
/* Undefine the 64-bit macros in strict ANSI compilation mode. */
|
||||
/* Since `#undef' doesn't survive in configuration header files */
|
||||
/* we use the postprocessing facility of AC_CONFIG_HEADERS to */
|
||||
/* replace the leading `/' with `#'. */
|
||||
#undef FT_LONG64
|
||||
#undef FT_INT64
|
||||
|
||||
#endif /* __STDC__ */
|
||||
|
||||
#endif /* FT_LONG64 && !FT_CONFIG_OPTION_FORCE_INT64 */
|
||||
|
||||
|
||||
#ifdef FT_MAKE_OPTION_SINGLE_OBJECT
|
||||
|
||||
#define FT_LOCAL( x ) static x
|
||||
#define FT_LOCAL_DEF( x ) static x
|
||||
|
||||
#else
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_LOCAL( x ) extern "C" x
|
||||
#define FT_LOCAL_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_LOCAL( x ) extern x
|
||||
#define FT_LOCAL_DEF( x ) x
|
||||
#endif
|
||||
|
||||
#endif /* FT_MAKE_OPTION_SINGLE_OBJECT */
|
||||
|
||||
|
||||
#ifndef FT_BASE
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_BASE( x ) extern "C" x
|
||||
#else
|
||||
#define FT_BASE( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_BASE */
|
||||
|
||||
|
||||
#ifndef FT_BASE_DEF
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_BASE_DEF( x ) x
|
||||
#else
|
||||
#define FT_BASE_DEF( x ) x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_BASE_DEF */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT_DEF
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT_DEF( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT_DEF */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT_VAR
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT_VAR( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT_VAR( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT_VAR */
|
||||
|
||||
/* The following macros are needed to compile the library with a */
|
||||
/* C++ compiler and with 16bit compilers. */
|
||||
/* */
|
||||
|
||||
/* This is special. Within C++, you must specify `extern "C"' for */
|
||||
/* functions which are used via function pointers, and you also */
|
||||
/* must do that for structures which contain function pointers to */
|
||||
/* assure C linkage -- it's not possible to have (local) anonymous */
|
||||
/* functions which are accessed by (global) function pointers. */
|
||||
/* */
|
||||
/* */
|
||||
/* FT_CALLBACK_DEF is used to _define_ a callback function. */
|
||||
/* */
|
||||
/* FT_CALLBACK_TABLE is used to _declare_ a constant variable that */
|
||||
/* contains pointers to callback functions. */
|
||||
/* */
|
||||
/* FT_CALLBACK_TABLE_DEF is used to _define_ a constant variable */
|
||||
/* that contains pointers to callback functions. */
|
||||
/* */
|
||||
/* */
|
||||
/* Some 16bit compilers have to redefine these macros to insert */
|
||||
/* the infamous `_cdecl' or `__fastcall' declarations. */
|
||||
/* */
|
||||
#ifndef FT_CALLBACK_DEF
|
||||
#ifdef __cplusplus
|
||||
#define FT_CALLBACK_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_CALLBACK_DEF( x ) static x
|
||||
#endif
|
||||
#endif /* FT_CALLBACK_DEF */
|
||||
|
||||
#ifndef FT_CALLBACK_TABLE
|
||||
#ifdef __cplusplus
|
||||
#define FT_CALLBACK_TABLE extern "C"
|
||||
#define FT_CALLBACK_TABLE_DEF extern "C"
|
||||
#else
|
||||
#define FT_CALLBACK_TABLE extern
|
||||
#define FT_CALLBACK_TABLE_DEF /* nothing */
|
||||
#endif
|
||||
#endif /* FT_CALLBACK_TABLE */
|
||||
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
||||
#endif /* __FTCONFIG_H__ */
|
||||
|
||||
|
||||
/* END */
|
@ -1,20 +0,0 @@
|
||||
#ifndef __FTCONFIG_H__MULTILIB
|
||||
#define __FTCONFIG_H__MULTILIB
|
||||
|
||||
#ifdef ANDROID
|
||||
#include <sys/cdefs.h>
|
||||
#elif defined(OSX)
|
||||
#include <stdint.h>
|
||||
#else
|
||||
#include <bits/wordsize.h>
|
||||
#endif
|
||||
|
||||
#if __WORDSIZE == 32
|
||||
# include "ftconfig-32.h"
|
||||
#elif __WORDSIZE == 64
|
||||
# include "ftconfig-64.h"
|
||||
#else
|
||||
# error "unexpected value for __WORDSIZE macro"
|
||||
#endif
|
||||
|
||||
#endif
|
@ -1,729 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftheader.h */
|
||||
/* */
|
||||
/* Build macros of the FreeType 2 library. */
|
||||
/* */
|
||||
/* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2006, 2007 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
#ifndef __FT_HEADER_H__
|
||||
#define __FT_HEADER_H__
|
||||
|
||||
|
||||
/*@***********************************************************************/
|
||||
/* */
|
||||
/* <Macro> */
|
||||
/* FT_BEGIN_HEADER */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* This macro is used in association with @FT_END_HEADER in header */
|
||||
/* files to ensure that the declarations within are properly */
|
||||
/* encapsulated in an `extern "C" { .. }' block when included from a */
|
||||
/* C++ compiler. */
|
||||
/* */
|
||||
#ifdef __cplusplus
|
||||
#define FT_BEGIN_HEADER extern "C" {
|
||||
#else
|
||||
#define FT_BEGIN_HEADER /* nothing */
|
||||
#endif
|
||||
|
||||
|
||||
/*@***********************************************************************/
|
||||
/* */
|
||||
/* <Macro> */
|
||||
/* FT_END_HEADER */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* This macro is used in association with @FT_BEGIN_HEADER in header */
|
||||
/* files to ensure that the declarations within are properly */
|
||||
/* encapsulated in an `extern "C" { .. }' block when included from a */
|
||||
/* C++ compiler. */
|
||||
/* */
|
||||
#ifdef __cplusplus
|
||||
#define FT_END_HEADER }
|
||||
#else
|
||||
#define FT_END_HEADER /* nothing */
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Aliases for the FreeType 2 public and configuration files. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Section> */
|
||||
/* header_file_macros */
|
||||
/* */
|
||||
/* <Title> */
|
||||
/* Header File Macros */
|
||||
/* */
|
||||
/* <Abstract> */
|
||||
/* Macro definitions used to #include specific header files. */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The following macros are defined to the name of specific */
|
||||
/* FreeType 2 header files. They can be used directly in #include */
|
||||
/* statements as in: */
|
||||
/* */
|
||||
/* { */
|
||||
/* #include FT_FREETYPE_H */
|
||||
/* #include FT_MULTIPLE_MASTERS_H */
|
||||
/* #include FT_GLYPH_H */
|
||||
/* } */
|
||||
/* */
|
||||
/* There are several reasons why we are now using macros to name */
|
||||
/* public header files. The first one is that such macros are not */
|
||||
/* limited to the infamous 8.3 naming rule required by DOS (and */
|
||||
/* `FT_MULTIPLE_MASTERS_H' is a lot more meaningful than `ftmm.h'). */
|
||||
/* */
|
||||
/* The second reason is that it allows for more flexibility in the */
|
||||
/* way FreeType 2 is installed on a given system. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/* configuration files */
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_CONFIG_CONFIG_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing
|
||||
* FreeType 2 configuration data.
|
||||
*
|
||||
*/
|
||||
#ifndef FT_CONFIG_CONFIG_H
|
||||
#define FT_CONFIG_CONFIG_H <freetype/config/ftconfig.h>
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_CONFIG_STANDARD_LIBRARY_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing
|
||||
* FreeType 2 interface to the standard C library functions.
|
||||
*
|
||||
*/
|
||||
#ifndef FT_CONFIG_STANDARD_LIBRARY_H
|
||||
#define FT_CONFIG_STANDARD_LIBRARY_H <freetype/config/ftstdlib.h>
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_CONFIG_OPTIONS_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing
|
||||
* FreeType 2 project-specific configuration options.
|
||||
*
|
||||
*/
|
||||
#ifndef FT_CONFIG_OPTIONS_H
|
||||
#define FT_CONFIG_OPTIONS_H <freetype/config/ftoption.h>
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_CONFIG_MODULES_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* list of FreeType 2 modules that are statically linked to new library
|
||||
* instances in @FT_Init_FreeType.
|
||||
*
|
||||
*/
|
||||
#ifndef FT_CONFIG_MODULES_H
|
||||
#define FT_CONFIG_MODULES_H <freetype/config/ftmodule.h>
|
||||
#endif
|
||||
|
||||
|
||||
/* public headers */
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_FREETYPE_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* base FreeType 2 API.
|
||||
*
|
||||
*/
|
||||
#define FT_FREETYPE_H <freetype/freetype.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_ERRORS_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* list of FreeType 2 error codes (and messages).
|
||||
*
|
||||
* It is included by @FT_FREETYPE_H.
|
||||
*
|
||||
*/
|
||||
#define FT_ERRORS_H <freetype/fterrors.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_MODULE_ERRORS_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* list of FreeType 2 module error offsets (and messages).
|
||||
*
|
||||
*/
|
||||
#define FT_MODULE_ERRORS_H <freetype/ftmoderr.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_SYSTEM_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* FreeType 2 interface to low-level operations (i.e., memory management
|
||||
* and stream i/o).
|
||||
*
|
||||
* It is included by @FT_FREETYPE_H.
|
||||
*
|
||||
*/
|
||||
#define FT_SYSTEM_H <freetype/ftsystem.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_IMAGE_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing type
|
||||
* definitions related to glyph images (i.e., bitmaps, outlines,
|
||||
* scan-converter parameters).
|
||||
*
|
||||
* It is included by @FT_FREETYPE_H.
|
||||
*
|
||||
*/
|
||||
#define FT_IMAGE_H <freetype/ftimage.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_TYPES_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* basic data types defined by FreeType 2.
|
||||
*
|
||||
* It is included by @FT_FREETYPE_H.
|
||||
*
|
||||
*/
|
||||
#define FT_TYPES_H <freetype/fttypes.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_LIST_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* list management API of FreeType 2.
|
||||
*
|
||||
* (Most applications will never need to include this file.)
|
||||
*
|
||||
*/
|
||||
#define FT_LIST_H <freetype/ftlist.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_OUTLINE_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* scalable outline management API of FreeType 2.
|
||||
*
|
||||
*/
|
||||
#define FT_OUTLINE_H <freetype/ftoutln.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_SIZES_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* API which manages multiple @FT_Size objects per face.
|
||||
*
|
||||
*/
|
||||
#define FT_SIZES_H <freetype/ftsizes.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_MODULE_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* module management API of FreeType 2.
|
||||
*
|
||||
*/
|
||||
#define FT_MODULE_H <freetype/ftmodapi.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_RENDER_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* renderer module management API of FreeType 2.
|
||||
*
|
||||
*/
|
||||
#define FT_RENDER_H <freetype/ftrender.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_TYPE1_TABLES_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* types and API specific to the Type 1 format.
|
||||
*
|
||||
*/
|
||||
#define FT_TYPE1_TABLES_H <freetype/t1tables.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_TRUETYPE_IDS_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* enumeration values which identify name strings, languages, encodings,
|
||||
* etc. This file really contains a _large_ set of constant macro
|
||||
* definitions, taken from the TrueType and OpenType specifications.
|
||||
*
|
||||
*/
|
||||
#define FT_TRUETYPE_IDS_H <freetype/ttnameid.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_TRUETYPE_TABLES_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* types and API specific to the TrueType (as well as OpenType) format.
|
||||
*
|
||||
*/
|
||||
#define FT_TRUETYPE_TABLES_H <freetype/tttables.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_TRUETYPE_TAGS_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* definitions of TrueType four-byte `tags' which identify blocks in
|
||||
* SFNT-based font formats (i.e., TrueType and OpenType).
|
||||
*
|
||||
*/
|
||||
#define FT_TRUETYPE_TAGS_H <freetype/tttags.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_BDF_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* definitions of an API which accesses BDF-specific strings from a
|
||||
* face.
|
||||
*
|
||||
*/
|
||||
#define FT_BDF_H <freetype/ftbdf.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_GZIP_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* definitions of an API which supports gzip-compressed files.
|
||||
*
|
||||
*/
|
||||
#define FT_GZIP_H <freetype/ftgzip.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_LZW_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* definitions of an API which supports LZW-compressed files.
|
||||
*
|
||||
*/
|
||||
#define FT_LZW_H <freetype/ftlzw.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_WINFONTS_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* definitions of an API which supports Windows FNT files.
|
||||
*
|
||||
*/
|
||||
#define FT_WINFONTS_H <freetype/ftwinfnt.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_GLYPH_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* API of the optional glyph management component.
|
||||
*
|
||||
*/
|
||||
#define FT_GLYPH_H <freetype/ftglyph.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_BITMAP_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* API of the optional bitmap conversion component.
|
||||
*
|
||||
*/
|
||||
#define FT_BITMAP_H <freetype/ftbitmap.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_BBOX_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* API of the optional exact bounding box computation routines.
|
||||
*
|
||||
*/
|
||||
#define FT_BBOX_H <freetype/ftbbox.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_CACHE_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* API of the optional FreeType 2 cache sub-system.
|
||||
*
|
||||
*/
|
||||
#define FT_CACHE_H <freetype/ftcache.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_CACHE_IMAGE_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* `glyph image' API of the FreeType 2 cache sub-system.
|
||||
*
|
||||
* It is used to define a cache for @FT_Glyph elements. You can also
|
||||
* use the API defined in @FT_CACHE_SMALL_BITMAPS_H if you only need to
|
||||
* store small glyph bitmaps, as it will use less memory.
|
||||
*
|
||||
* This macro is deprecated. Simply include @FT_CACHE_H to have all
|
||||
* glyph image-related cache declarations.
|
||||
*
|
||||
*/
|
||||
#define FT_CACHE_IMAGE_H FT_CACHE_H
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_CACHE_SMALL_BITMAPS_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* `small bitmaps' API of the FreeType 2 cache sub-system.
|
||||
*
|
||||
* It is used to define a cache for small glyph bitmaps in a relatively
|
||||
* memory-efficient way. You can also use the API defined in
|
||||
* @FT_CACHE_IMAGE_H if you want to cache arbitrary glyph images,
|
||||
* including scalable outlines.
|
||||
*
|
||||
* This macro is deprecated. Simply include @FT_CACHE_H to have all
|
||||
* small bitmaps-related cache declarations.
|
||||
*
|
||||
*/
|
||||
#define FT_CACHE_SMALL_BITMAPS_H FT_CACHE_H
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_CACHE_CHARMAP_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* `charmap' API of the FreeType 2 cache sub-system.
|
||||
*
|
||||
* This macro is deprecated. Simply include @FT_CACHE_H to have all
|
||||
* charmap-based cache declarations.
|
||||
*
|
||||
*/
|
||||
#define FT_CACHE_CHARMAP_H FT_CACHE_H
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_MAC_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* Macintosh-specific FreeType 2 API. The latter is used to access
|
||||
* fonts embedded in resource forks.
|
||||
*
|
||||
* This header file must be explicitly included by client applications
|
||||
* compiled on the Mac (note that the base API still works though).
|
||||
*
|
||||
*/
|
||||
#define FT_MAC_H <freetype/ftmac.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_MULTIPLE_MASTERS_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* optional multiple-masters management API of FreeType 2.
|
||||
*
|
||||
*/
|
||||
#define FT_MULTIPLE_MASTERS_H <freetype/ftmm.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_SFNT_NAMES_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* optional FreeType 2 API which accesses embedded `name' strings in
|
||||
* SFNT-based font formats (i.e., TrueType and OpenType).
|
||||
*
|
||||
*/
|
||||
#define FT_SFNT_NAMES_H <freetype/ftsnames.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_OPENTYPE_VALIDATE_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* optional FreeType 2 API which validates OpenType tables (BASE, GDEF,
|
||||
* GPOS, GSUB, JSTF).
|
||||
*
|
||||
*/
|
||||
#define FT_OPENTYPE_VALIDATE_H <freetype/ftotval.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_GX_VALIDATE_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* optional FreeType 2 API which validates TrueTypeGX/AAT tables (feat,
|
||||
* mort, morx, bsln, just, kern, opbd, trak, prop).
|
||||
*
|
||||
*/
|
||||
#define FT_GX_VALIDATE_H <freetype/ftgxval.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_PFR_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* FreeType 2 API which accesses PFR-specific data.
|
||||
*
|
||||
*/
|
||||
#define FT_PFR_H <freetype/ftpfr.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_STROKER_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* FreeType 2 API which provides functions to stroke outline paths.
|
||||
*/
|
||||
#define FT_STROKER_H <freetype/ftstroke.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_SYNTHESIS_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* FreeType 2 API which performs artificial obliquing and emboldening.
|
||||
*/
|
||||
#define FT_SYNTHESIS_H <freetype/ftsynth.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_XFREE86_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* FreeType 2 API which provides functions specific to the XFree86 and
|
||||
* X.Org X11 servers.
|
||||
*/
|
||||
#define FT_XFREE86_H <freetype/ftxf86.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_TRIGONOMETRY_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* FreeType 2 API which performs trigonometric computations (e.g.,
|
||||
* cosines and arc tangents).
|
||||
*/
|
||||
#define FT_TRIGONOMETRY_H <freetype/fttrigon.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_LCD_FILTER_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* FreeType 2 API which performs color filtering for subpixel rendering.
|
||||
*/
|
||||
#define FT_LCD_FILTER_H <freetype/ftlcdfil.h>
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* @macro:
|
||||
* FT_GASP_H
|
||||
*
|
||||
* @description:
|
||||
* A macro used in #include statements to name the file containing the
|
||||
* FreeType 2 API which returns entries from the TrueType GASP table.
|
||||
*/
|
||||
#define FT_GASP_H <freetype/ftgasp.h>
|
||||
|
||||
|
||||
/* */
|
||||
|
||||
#define FT_ERROR_DEFINITIONS_H <freetype/fterrdef.h>
|
||||
|
||||
|
||||
/* The internals of the cache sub-system are no longer exposed. We */
|
||||
/* default to FT_CACHE_H at the moment just in case, but we know of */
|
||||
/* no rogue client that uses them. */
|
||||
/* */
|
||||
#define FT_CACHE_MANAGER_H <freetype/ftcache.h>
|
||||
#define FT_CACHE_INTERNAL_MRU_H <freetype/ftcache.h>
|
||||
#define FT_CACHE_INTERNAL_MANAGER_H <freetype/ftcache.h>
|
||||
#define FT_CACHE_INTERNAL_CACHE_H <freetype/ftcache.h>
|
||||
#define FT_CACHE_INTERNAL_GLYPH_H <freetype/ftcache.h>
|
||||
#define FT_CACHE_INTERNAL_IMAGE_H <freetype/ftcache.h>
|
||||
#define FT_CACHE_INTERNAL_SBITS_H <freetype/ftcache.h>
|
||||
|
||||
|
||||
#define FT_INCREMENTAL_H <freetype/ftincrem.h>
|
||||
|
||||
#define FT_TRUETYPE_UNPATENTED_H <freetype/ttunpat.h>
|
||||
|
||||
|
||||
/*
|
||||
* Include internal headers definitions from <freetype/internal/...>
|
||||
* only when building the library.
|
||||
*/
|
||||
#ifdef FT2_BUILD_LIBRARY
|
||||
#define FT_INTERNAL_INTERNAL_H <freetype/internal/internal.h>
|
||||
#include FT_INTERNAL_INTERNAL_H
|
||||
#endif /* FT2_BUILD_LIBRARY */
|
||||
|
||||
|
||||
#endif /* __FT2_BUILD_H__ */
|
||||
|
||||
|
||||
/* END */
|
@ -1,22 +0,0 @@
|
||||
/* This is a generated file. */
|
||||
FT_USE_MODULE(tt_driver_class)
|
||||
FT_USE_MODULE(t1_driver_class)
|
||||
FT_USE_MODULE(cff_driver_class)
|
||||
FT_USE_MODULE(t1cid_driver_class)
|
||||
FT_USE_MODULE(pfr_driver_class)
|
||||
FT_USE_MODULE(t42_driver_class)
|
||||
FT_USE_MODULE(winfnt_driver_class)
|
||||
FT_USE_MODULE(pcf_driver_class)
|
||||
FT_USE_MODULE(bdf_driver_class)
|
||||
FT_USE_MODULE(sfnt_module_class)
|
||||
FT_USE_MODULE(autofit_module_class)
|
||||
FT_USE_MODULE(pshinter_module_class)
|
||||
FT_USE_MODULE(ft_raster1_renderer_class)
|
||||
FT_USE_MODULE(ft_smooth_renderer_class)
|
||||
FT_USE_MODULE(ft_smooth_lcd_renderer_class)
|
||||
FT_USE_MODULE(ft_smooth_lcdv_renderer_class)
|
||||
FT_USE_MODULE(gxv_module_class)
|
||||
FT_USE_MODULE(otv_module_class)
|
||||
FT_USE_MODULE(psaux_module_class)
|
||||
FT_USE_MODULE(psnames_module_class)
|
||||
/* EOF */
|
@ -1,669 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftoption.h */
|
||||
/* */
|
||||
/* User-selectable configuration macros (specification only). */
|
||||
/* */
|
||||
/* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2006, 2007 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#ifndef __FTOPTION_H__
|
||||
#define __FTOPTION_H__
|
||||
|
||||
|
||||
#include <ft2build.h>
|
||||
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* USER-SELECTABLE CONFIGURATION MACROS */
|
||||
/* */
|
||||
/* This file contains the default configuration macro definitions for */
|
||||
/* a standard build of the FreeType library. There are three ways to */
|
||||
/* use this file to build project-specific versions of the library: */
|
||||
/* */
|
||||
/* - You can modify this file by hand, but this is not recommended in */
|
||||
/* cases where you would like to build several versions of the */
|
||||
/* library from a single source directory. */
|
||||
/* */
|
||||
/* - You can put a copy of this file in your build directory, more */
|
||||
/* precisely in `$BUILD/freetype/config/ftoption.h', where `$BUILD' */
|
||||
/* is the name of a directory that is included _before_ the FreeType */
|
||||
/* include path during compilation. */
|
||||
/* */
|
||||
/* The default FreeType Makefiles and Jamfiles use the build */
|
||||
/* directory `builds/<system>' by default, but you can easily change */
|
||||
/* that for your own projects. */
|
||||
/* */
|
||||
/* - Copy the file <ft2build.h> to `$BUILD/ft2build.h' and modify it */
|
||||
/* slightly to pre-define the macro FT_CONFIG_OPTIONS_H used to */
|
||||
/* locate this file during the build. For example, */
|
||||
/* */
|
||||
/* #define FT_CONFIG_OPTIONS_H <myftoptions.h> */
|
||||
/* #include <freetype/config/ftheader.h> */
|
||||
/* */
|
||||
/* will use `$BUILD/myftoptions.h' instead of this file for macro */
|
||||
/* definitions. */
|
||||
/* */
|
||||
/* Note also that you can similarly pre-define the macro */
|
||||
/* FT_CONFIG_MODULES_H used to locate the file listing of the modules */
|
||||
/* that are statically linked to the library at compile time. By */
|
||||
/* default, this file is <freetype/config/ftmodule.h>. */
|
||||
/* */
|
||||
/* We highly recommend using the third method whenever possible. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/**** ****/
|
||||
/**** G E N E R A L F R E E T Y P E 2 C O N F I G U R A T I O N ****/
|
||||
/**** ****/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Uncomment the line below if you want to activate sub-pixel rendering */
|
||||
/* (a.k.a. LCD rendering, or ClearType) in this build of the library. */
|
||||
/* */
|
||||
/* Note that this feature is covered by several Microsoft patents */
|
||||
/* and should not be activated in any default build of the library. */
|
||||
/* */
|
||||
/* This macro has no impact on the FreeType API, only on its */
|
||||
/* _implementation_. For example, using FT_RENDER_MODE_LCD when calling */
|
||||
/* FT_Render_Glyph still generates a bitmap that is 3 times larger than */
|
||||
/* the original size; the difference will be that each triplet of */
|
||||
/* subpixels has R=G=B. */
|
||||
/* */
|
||||
/* This is done to allow FreeType clients to run unmodified, forcing */
|
||||
/* them to display normal gray-level anti-aliased glyphs. */
|
||||
/* */
|
||||
/* #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING */
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Many compilers provide a non-ANSI 64-bit data type that can be used */
|
||||
/* by FreeType to speed up some computations. However, this will create */
|
||||
/* some problems when compiling the library in strict ANSI mode. */
|
||||
/* */
|
||||
/* For this reason, the use of 64-bit integers is normally disabled when */
|
||||
/* the __STDC__ macro is defined. You can however disable this by */
|
||||
/* defining the macro FT_CONFIG_OPTION_FORCE_INT64 here. */
|
||||
/* */
|
||||
/* For most compilers, this will only create compilation warnings when */
|
||||
/* building the library. */
|
||||
/* */
|
||||
/* ObNote: The compiler-specific 64-bit integers are detected in the */
|
||||
/* file `ftconfig.h' either statically or through the */
|
||||
/* `configure' script on supported platforms. */
|
||||
/* */
|
||||
#undef FT_CONFIG_OPTION_FORCE_INT64
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* LZW-compressed file support. */
|
||||
/* */
|
||||
/* FreeType now handles font files that have been compressed with the */
|
||||
/* `compress' program. This is mostly used to parse many of the PCF */
|
||||
/* files that come with various X11 distributions. The implementation */
|
||||
/* uses NetBSD's `zopen' to partially uncompress the file on the fly */
|
||||
/* (see src/lzw/ftgzip.c). */
|
||||
/* */
|
||||
/* Define this macro if you want to enable this `feature'. */
|
||||
/* */
|
||||
#define FT_CONFIG_OPTION_USE_LZW
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Gzip-compressed file support. */
|
||||
/* */
|
||||
/* FreeType now handles font files that have been compressed with the */
|
||||
/* `gzip' program. This is mostly used to parse many of the PCF files */
|
||||
/* that come with XFree86. The implementation uses `zlib' to */
|
||||
/* partially uncompress the file on the fly (see src/gzip/ftgzip.c). */
|
||||
/* */
|
||||
/* Define this macro if you want to enable this `feature'. See also */
|
||||
/* the macro FT_CONFIG_OPTION_SYSTEM_ZLIB below. */
|
||||
/* */
|
||||
#define FT_CONFIG_OPTION_USE_ZLIB
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* ZLib library selection */
|
||||
/* */
|
||||
/* This macro is only used when FT_CONFIG_OPTION_USE_ZLIB is defined. */
|
||||
/* It allows FreeType's `ftgzip' component to link to the system's */
|
||||
/* installation of the ZLib library. This is useful on systems like */
|
||||
/* Unix or VMS where it generally is already available. */
|
||||
/* */
|
||||
/* If you let it undefined, the component will use its own copy */
|
||||
/* of the zlib sources instead. These have been modified to be */
|
||||
/* included directly within the component and *not* export external */
|
||||
/* function names. This allows you to link any program with FreeType */
|
||||
/* _and_ ZLib without linking conflicts. */
|
||||
/* */
|
||||
/* Do not #undef this macro here since the build system might define */
|
||||
/* it for certain configurations only. */
|
||||
/* */
|
||||
/* #define FT_CONFIG_OPTION_SYSTEM_ZLIB */
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* DLL export compilation */
|
||||
/* */
|
||||
/* When compiling FreeType as a DLL, some systems/compilers need a */
|
||||
/* special keyword in front OR after the return type of function */
|
||||
/* declarations. */
|
||||
/* */
|
||||
/* Two macros are used within the FreeType source code to define */
|
||||
/* exported library functions: FT_EXPORT and FT_EXPORT_DEF. */
|
||||
/* */
|
||||
/* FT_EXPORT( return_type ) */
|
||||
/* */
|
||||
/* is used in a function declaration, as in */
|
||||
/* */
|
||||
/* FT_EXPORT( FT_Error ) */
|
||||
/* FT_Init_FreeType( FT_Library* alibrary ); */
|
||||
/* */
|
||||
/* */
|
||||
/* FT_EXPORT_DEF( return_type ) */
|
||||
/* */
|
||||
/* is used in a function definition, as in */
|
||||
/* */
|
||||
/* FT_EXPORT_DEF( FT_Error ) */
|
||||
/* FT_Init_FreeType( FT_Library* alibrary ) */
|
||||
/* { */
|
||||
/* ... some code ... */
|
||||
/* return FT_Err_Ok; */
|
||||
/* } */
|
||||
/* */
|
||||
/* You can provide your own implementation of FT_EXPORT and */
|
||||
/* FT_EXPORT_DEF here if you want. If you leave them undefined, they */
|
||||
/* will be later automatically defined as `extern return_type' to */
|
||||
/* allow normal compilation. */
|
||||
/* */
|
||||
/* Do not #undef these macros here since the build system might define */
|
||||
/* them for certain configurations only. */
|
||||
/* */
|
||||
/* #define FT_EXPORT(x) extern x */
|
||||
/* #define FT_EXPORT_DEF(x) x */
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Glyph Postscript Names handling */
|
||||
/* */
|
||||
/* By default, FreeType 2 is compiled with the `PSNames' module. This */
|
||||
/* module is in charge of converting a glyph name string into a */
|
||||
/* Unicode value, or return a Macintosh standard glyph name for the */
|
||||
/* use with the TrueType `post' table. */
|
||||
/* */
|
||||
/* Undefine this macro if you do not want `PSNames' compiled in your */
|
||||
/* build of FreeType. This has the following effects: */
|
||||
/* */
|
||||
/* - The TrueType driver will provide its own set of glyph names, */
|
||||
/* if you build it to support postscript names in the TrueType */
|
||||
/* `post' table. */
|
||||
/* */
|
||||
/* - The Type 1 driver will not be able to synthetize a Unicode */
|
||||
/* charmap out of the glyphs found in the fonts. */
|
||||
/* */
|
||||
/* You would normally undefine this configuration macro when building */
|
||||
/* a version of FreeType that doesn't contain a Type 1 or CFF driver. */
|
||||
/* */
|
||||
#define FT_CONFIG_OPTION_POSTSCRIPT_NAMES
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Postscript Names to Unicode Values support */
|
||||
/* */
|
||||
/* By default, FreeType 2 is built with the `PSNames' module compiled */
|
||||
/* in. Among other things, the module is used to convert a glyph name */
|
||||
/* into a Unicode value. This is especially useful in order to */
|
||||
/* synthetize on the fly a Unicode charmap from the CFF/Type 1 driver */
|
||||
/* through a big table named the `Adobe Glyph List' (AGL). */
|
||||
/* */
|
||||
/* Undefine this macro if you do not want the Adobe Glyph List */
|
||||
/* compiled in your `PSNames' module. The Type 1 driver will not be */
|
||||
/* able to synthetize a Unicode charmap out of the glyphs found in the */
|
||||
/* fonts. */
|
||||
/* */
|
||||
#define FT_CONFIG_OPTION_ADOBE_GLYPH_LIST
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Support for Mac fonts */
|
||||
/* */
|
||||
/* Define this macro if you want support for outline fonts in Mac */
|
||||
/* format (mac dfont, mac resource, macbinary containing a mac */
|
||||
/* resource) on non-Mac platforms. */
|
||||
/* */
|
||||
/* Note that the `FOND' resource isn't checked. */
|
||||
/* */
|
||||
#define FT_CONFIG_OPTION_MAC_FONTS
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Guessing methods to access embedded resource forks */
|
||||
/* */
|
||||
/* Enable extra Mac fonts support on non-Mac platforms (e.g. */
|
||||
/* GNU/Linux). */
|
||||
/* */
|
||||
/* Resource forks which include fonts data are stored sometimes in */
|
||||
/* locations which users or developers don't expected. In some cases, */
|
||||
/* resource forks start with some offset from the head of a file. In */
|
||||
/* other cases, the actual resource fork is stored in file different */
|
||||
/* from what the user specifies. If this option is activated, */
|
||||
/* FreeType tries to guess whether such offsets or different file */
|
||||
/* names must be used. */
|
||||
/* */
|
||||
/* Note that normal, direct access of resource forks is controlled via */
|
||||
/* the FT_CONFIG_OPTION_MAC_FONTS option. */
|
||||
/* */
|
||||
#ifdef FT_CONFIG_OPTION_MAC_FONTS
|
||||
#define FT_CONFIG_OPTION_GUESSING_EMBEDDED_RFORK
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Allow the use of FT_Incremental_Interface to load typefaces that */
|
||||
/* contain no glyph data, but supply it via a callback function. */
|
||||
/* This allows FreeType to be used with the PostScript language, using */
|
||||
/* the GhostScript interpreter. */
|
||||
/* */
|
||||
/* #define FT_CONFIG_OPTION_INCREMENTAL */
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The size in bytes of the render pool used by the scan-line converter */
|
||||
/* to do all of its work. */
|
||||
/* */
|
||||
/* This must be greater than 4KByte if you use FreeType to rasterize */
|
||||
/* glyphs; otherwise, you may set it to zero to avoid unnecessary */
|
||||
/* allocation of the render pool. */
|
||||
/* */
|
||||
#define FT_RENDER_POOL_SIZE 16384L
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* FT_MAX_MODULES */
|
||||
/* */
|
||||
/* The maximum number of modules that can be registered in a single */
|
||||
/* FreeType library object. 32 is the default. */
|
||||
/* */
|
||||
#define FT_MAX_MODULES 32
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Debug level */
|
||||
/* */
|
||||
/* FreeType can be compiled in debug or trace mode. In debug mode, */
|
||||
/* errors are reported through the `ftdebug' component. In trace */
|
||||
/* mode, additional messages are sent to the standard output during */
|
||||
/* execution. */
|
||||
/* */
|
||||
/* Define FT_DEBUG_LEVEL_ERROR to build the library in debug mode. */
|
||||
/* Define FT_DEBUG_LEVEL_TRACE to build it in trace mode. */
|
||||
/* */
|
||||
/* Don't define any of these macros to compile in `release' mode! */
|
||||
/* */
|
||||
/* Do not #undef these macros here since the build system might define */
|
||||
/* them for certain configurations only. */
|
||||
/* */
|
||||
/* #define FT_DEBUG_LEVEL_ERROR */
|
||||
/* #define FT_DEBUG_LEVEL_TRACE */
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Memory Debugging */
|
||||
/* */
|
||||
/* FreeType now comes with an integrated memory debugger that is */
|
||||
/* capable of detecting simple errors like memory leaks or double */
|
||||
/* deletes. To compile it within your build of the library, you */
|
||||
/* should define FT_DEBUG_MEMORY here. */
|
||||
/* */
|
||||
/* Note that the memory debugger is only activated at runtime when */
|
||||
/* when the _environment_ variable `FT2_DEBUG_MEMORY' is defined also! */
|
||||
/* */
|
||||
/* Do not #undef this macro here since the build system might define */
|
||||
/* it for certain configurations only. */
|
||||
/* */
|
||||
/* #define FT_DEBUG_MEMORY */
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Module errors */
|
||||
/* */
|
||||
/* If this macro is set (which is _not_ the default), the higher byte */
|
||||
/* of an error code gives the module in which the error has occurred, */
|
||||
/* while the lower byte is the real error code. */
|
||||
/* */
|
||||
/* Setting this macro makes sense for debugging purposes only, since */
|
||||
/* it would break source compatibility of certain programs that use */
|
||||
/* FreeType 2. */
|
||||
/* */
|
||||
/* More details can be found in the files ftmoderr.h and fterrors.h. */
|
||||
/* */
|
||||
#undef FT_CONFIG_OPTION_USE_MODULE_ERRORS
|
||||
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/**** ****/
|
||||
/**** S F N T D R I V E R C O N F I G U R A T I O N ****/
|
||||
/**** ****/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Define TT_CONFIG_OPTION_EMBEDDED_BITMAPS if you want to support */
|
||||
/* embedded bitmaps in all formats using the SFNT module (namely */
|
||||
/* TrueType & OpenType). */
|
||||
/* */
|
||||
#define TT_CONFIG_OPTION_EMBEDDED_BITMAPS
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Define TT_CONFIG_OPTION_POSTSCRIPT_NAMES if you want to be able to */
|
||||
/* load and enumerate the glyph Postscript names in a TrueType or */
|
||||
/* OpenType file. */
|
||||
/* */
|
||||
/* Note that when you do not compile the `PSNames' module by undefining */
|
||||
/* the above FT_CONFIG_OPTION_POSTSCRIPT_NAMES, the `sfnt' module will */
|
||||
/* contain additional code used to read the PS Names table from a font. */
|
||||
/* */
|
||||
/* (By default, the module uses `PSNames' to extract glyph names.) */
|
||||
/* */
|
||||
#define TT_CONFIG_OPTION_POSTSCRIPT_NAMES
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Define TT_CONFIG_OPTION_SFNT_NAMES if your applications need to */
|
||||
/* access the internal name table in a SFNT-based format like TrueType */
|
||||
/* or OpenType. The name table contains various strings used to */
|
||||
/* describe the font, like family name, copyright, version, etc. It */
|
||||
/* does not contain any glyph name though. */
|
||||
/* */
|
||||
/* Accessing SFNT names is done through the functions declared in */
|
||||
/* `freetype/ftnames.h'. */
|
||||
/* */
|
||||
#define TT_CONFIG_OPTION_SFNT_NAMES
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* TrueType CMap support */
|
||||
/* */
|
||||
/* Here you can fine-tune which TrueType CMap table format shall be */
|
||||
/* supported. */
|
||||
#define TT_CONFIG_CMAP_FORMAT_0
|
||||
#define TT_CONFIG_CMAP_FORMAT_2
|
||||
#define TT_CONFIG_CMAP_FORMAT_4
|
||||
#define TT_CONFIG_CMAP_FORMAT_6
|
||||
#define TT_CONFIG_CMAP_FORMAT_8
|
||||
#define TT_CONFIG_CMAP_FORMAT_10
|
||||
#define TT_CONFIG_CMAP_FORMAT_12
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/**** ****/
|
||||
/**** T R U E T Y P E D R I V E R C O N F I G U R A T I O N ****/
|
||||
/**** ****/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Define TT_CONFIG_OPTION_BYTECODE_INTERPRETER if you want to compile */
|
||||
/* a bytecode interpreter in the TrueType driver. Note that there are */
|
||||
/* important patent issues related to the use of the interpreter. */
|
||||
/* */
|
||||
/* By undefining this, you will only compile the code necessary to load */
|
||||
/* TrueType glyphs without hinting. */
|
||||
/* */
|
||||
/* Do not #undef this macro here, since the build system might */
|
||||
/* define it for certain configurations only. */
|
||||
/* */
|
||||
/* #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* If you define TT_CONFIG_OPTION_UNPATENTED_HINTING, a special version */
|
||||
/* of the TrueType bytecode interpreter is used that doesn't implement */
|
||||
/* any of the patented opcodes and algorithms. Note that the */
|
||||
/* the TT_CONFIG_OPTION_UNPATENTED_HINTING macro is *ignored* if you */
|
||||
/* define TT_CONFIG_OPTION_BYTECODE_INTERPRETER; with other words, */
|
||||
/* either define TT_CONFIG_OPTION_BYTECODE_INTERPRETER or */
|
||||
/* TT_CONFIG_OPTION_UNPATENTED_HINTING but not both at the same time. */
|
||||
/* */
|
||||
/* This macro is only useful for a small number of font files (mostly */
|
||||
/* for Asian scripts) that require bytecode interpretation to properly */
|
||||
/* load glyphs. For all other fonts, this produces unpleasant results, */
|
||||
/* thus the unpatented interpreter is never used to load glyphs from */
|
||||
/* TrueType fonts unless one of the following two options is used. */
|
||||
/* */
|
||||
/* - The unpatented interpreter is explicitly activated by the user */
|
||||
/* through the FT_PARAM_TAG_UNPATENTED_HINTING parameter tag */
|
||||
/* when opening the FT_Face. */
|
||||
/* */
|
||||
/* - FreeType detects that the FT_Face corresponds to one of the */
|
||||
/* `trick' fonts (e.g., `Mingliu') it knows about. The font engine */
|
||||
/* contains a hard-coded list of font names and other matching */
|
||||
/* parameters (see function `tt_face_init' in file */
|
||||
/* `src/truetype/ttobjs.c'). */
|
||||
/* */
|
||||
/* Here a sample code snippet for using FT_PARAM_TAG_UNPATENTED_HINTING. */
|
||||
/* */
|
||||
/* { */
|
||||
/* FT_Parameter parameter; */
|
||||
/* FT_Open_Args open_args; */
|
||||
/* */
|
||||
/* */
|
||||
/* parameter.tag = FT_PARAM_TAG_UNPATENTED_HINTING; */
|
||||
/* */
|
||||
/* open_args.flags = FT_OPEN_PATHNAME | FT_OPEN_PARAMS; */
|
||||
/* open_args.pathname = my_font_pathname; */
|
||||
/* open_args.num_params = 1; */
|
||||
/* open_args.params = ¶meter; */
|
||||
/* */
|
||||
/* error = FT_Open_Face( library, &open_args, index, &face ); */
|
||||
/* ... */
|
||||
/* } */
|
||||
/* */
|
||||
#define TT_CONFIG_OPTION_UNPATENTED_HINTING
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Define TT_CONFIG_OPTION_INTERPRETER_SWITCH to compile the TrueType */
|
||||
/* bytecode interpreter with a huge switch statement, rather than a call */
|
||||
/* table. This results in smaller and faster code for a number of */
|
||||
/* architectures. */
|
||||
/* */
|
||||
/* Note however that on some compiler/processor combinations, undefining */
|
||||
/* this macro will generate faster, though larger, code. */
|
||||
/* */
|
||||
#define TT_CONFIG_OPTION_INTERPRETER_SWITCH
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Define TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED to compile the */
|
||||
/* TrueType glyph loader to use Apple's definition of how to handle */
|
||||
/* component offsets in composite glyphs. */
|
||||
/* */
|
||||
/* Apple and MS disagree on the default behavior of component offsets */
|
||||
/* in composites. Apple says that they should be scaled by the scaling */
|
||||
/* factors in the transformation matrix (roughly, it's more complex) */
|
||||
/* while MS says they should not. OpenType defines two bits in the */
|
||||
/* composite flags array which can be used to disambiguate, but old */
|
||||
/* fonts will not have them. */
|
||||
/* */
|
||||
/* http://partners.adobe.com/asn/developer/opentype/glyf.html */
|
||||
/* http://fonts.apple.com/TTRefMan/RM06/Chap6glyf.html */
|
||||
/* */
|
||||
#undef TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Define TT_CONFIG_OPTION_GX_VAR_SUPPORT if you want to include */
|
||||
/* support for Apple's distortable font technology (fvar, gvar, cvar, */
|
||||
/* and avar tables). This has many similarities to Type 1 Multiple */
|
||||
/* Masters support. */
|
||||
/* */
|
||||
#define TT_CONFIG_OPTION_GX_VAR_SUPPORT
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Define TT_CONFIG_OPTION_BDF if you want to include support for */
|
||||
/* an embedded `BDF ' table within SFNT-based bitmap formats. */
|
||||
/* */
|
||||
#define TT_CONFIG_OPTION_BDF
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/**** ****/
|
||||
/**** T Y P E 1 D R I V E R C O N F I G U R A T I O N ****/
|
||||
/**** ****/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* T1_MAX_DICT_DEPTH is the maximal depth of nest dictionaries and */
|
||||
/* arrays in the Type 1 stream (see t1load.c). A minimum of 4 is */
|
||||
/* required. */
|
||||
/* */
|
||||
#define T1_MAX_DICT_DEPTH 5
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* T1_MAX_SUBRS_CALLS details the maximum number of nested sub-routine */
|
||||
/* calls during glyph loading. */
|
||||
/* */
|
||||
#define T1_MAX_SUBRS_CALLS 16
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* T1_MAX_CHARSTRING_OPERANDS is the charstring stack's capacity. A */
|
||||
/* minimum of 16 is required. */
|
||||
/* */
|
||||
/* The Chinese font MingTiEG-Medium (CNS 11643 character set) needs 256. */
|
||||
/* */
|
||||
#define T1_MAX_CHARSTRINGS_OPERANDS 256
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Define this configuration macro if you want to prevent the */
|
||||
/* compilation of `t1afm', which is in charge of reading Type 1 AFM */
|
||||
/* files into an existing face. Note that if set, the T1 driver will be */
|
||||
/* unable to produce kerning distances. */
|
||||
/* */
|
||||
#undef T1_CONFIG_OPTION_NO_AFM
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Define this configuration macro if you want to prevent the */
|
||||
/* compilation of the Multiple Masters font support in the Type 1 */
|
||||
/* driver. */
|
||||
/* */
|
||||
#undef T1_CONFIG_OPTION_NO_MM_SUPPORT
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/**** ****/
|
||||
/**** A U T O F I T M O D U L E C O N F I G U R A T I O N ****/
|
||||
/**** ****/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Compile autofit module with CJK script support. */
|
||||
/* */
|
||||
#define AF_CONFIG_OPTION_CJK
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Compile autofit module with Indic script support. */
|
||||
/* */
|
||||
#define AF_CONFIG_OPTION_INDIC
|
||||
|
||||
/* */
|
||||
|
||||
|
||||
/*
|
||||
* Define this variable if you want to keep the layout of internal
|
||||
* structures that was used prior to FreeType 2.2. This also compiles in
|
||||
* a few obsolete functions to avoid linking problems on typical Unix
|
||||
* distributions.
|
||||
*
|
||||
* For embedded systems or building a new distribution from scratch, it
|
||||
* is recommended to disable the macro since it reduces the library's code
|
||||
* size and activates a few memory-saving optimizations as well.
|
||||
*/
|
||||
#define FT_CONFIG_OPTION_OLD_INTERNALS
|
||||
|
||||
|
||||
/*
|
||||
* This variable is defined if either unpatented or native TrueType
|
||||
* hinting is requested by the definitions above.
|
||||
*/
|
||||
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
|
||||
#define TT_USE_BYTECODE_INTERPRETER
|
||||
#elif defined TT_CONFIG_OPTION_UNPATENTED_HINTING
|
||||
#define TT_USE_BYTECODE_INTERPRETER
|
||||
#endif
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
||||
#endif /* __FTOPTION_H__ */
|
||||
|
||||
|
||||
/* END */
|
@ -1,180 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftstdlib.h */
|
||||
/* */
|
||||
/* ANSI-specific library and header configuration file (specification */
|
||||
/* only). */
|
||||
/* */
|
||||
/* Copyright 2002, 2003, 2004, 2005, 2006, 2007 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This file is used to group all #includes to the ANSI C library that */
|
||||
/* FreeType normally requires. It also defines macros to rename the */
|
||||
/* standard functions within the FreeType source code. */
|
||||
/* */
|
||||
/* Load a file which defines __FTSTDLIB_H__ before this one to override */
|
||||
/* it. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#ifndef __FTSTDLIB_H__
|
||||
#define __FTSTDLIB_H__
|
||||
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
#define ft_ptrdiff_t ptrdiff_t
|
||||
|
||||
|
||||
/**********************************************************************/
|
||||
/* */
|
||||
/* integer limits */
|
||||
/* */
|
||||
/* UINT_MAX and ULONG_MAX are used to automatically compute the size */
|
||||
/* of `int' and `long' in bytes at compile-time. So far, this works */
|
||||
/* for all platforms the library has been tested on. */
|
||||
/* */
|
||||
/* Note that on the extremely rare platforms that do not provide */
|
||||
/* integer types that are _exactly_ 16 and 32 bits wide (e.g. some */
|
||||
/* old Crays where `int' is 36 bits), we do not make any guarantee */
|
||||
/* about the correct behaviour of FT2 with all fonts. */
|
||||
/* */
|
||||
/* In these case, `ftconfig.h' will refuse to compile anyway with a */
|
||||
/* message like `couldn't find 32-bit type' or something similar. */
|
||||
/* */
|
||||
/* IMPORTANT NOTE: We do not define aliases for heap management and */
|
||||
/* i/o routines (i.e. malloc/free/fopen/fread/...) */
|
||||
/* since these functions should all be encapsulated */
|
||||
/* by platform-specific implementations of */
|
||||
/* `ftsystem.c'. */
|
||||
/* */
|
||||
/**********************************************************************/
|
||||
|
||||
|
||||
#include <limits.h>
|
||||
|
||||
#define FT_CHAR_BIT CHAR_BIT
|
||||
#define FT_INT_MAX INT_MAX
|
||||
#define FT_UINT_MAX UINT_MAX
|
||||
#define FT_ULONG_MAX ULONG_MAX
|
||||
|
||||
|
||||
/**********************************************************************/
|
||||
/* */
|
||||
/* character and string processing */
|
||||
/* */
|
||||
/**********************************************************************/
|
||||
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#define ft_memchr memchr
|
||||
#define ft_memcmp memcmp
|
||||
#define ft_memcpy memcpy
|
||||
#define ft_memmove memmove
|
||||
#define ft_memset memset
|
||||
#define ft_strcat strcat
|
||||
#define ft_strcmp strcmp
|
||||
#define ft_strcpy strcpy
|
||||
#define ft_strlen strlen
|
||||
#define ft_strncmp strncmp
|
||||
#define ft_strncpy strncpy
|
||||
#define ft_strrchr strrchr
|
||||
#define ft_strstr strstr
|
||||
|
||||
|
||||
/**********************************************************************/
|
||||
/* */
|
||||
/* file handling */
|
||||
/* */
|
||||
/**********************************************************************/
|
||||
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#define FT_FILE FILE
|
||||
#define ft_fclose fclose
|
||||
#define ft_fopen fopen
|
||||
#define ft_fread fread
|
||||
#define ft_fseek fseek
|
||||
#define ft_ftell ftell
|
||||
#define ft_sprintf sprintf
|
||||
|
||||
|
||||
/**********************************************************************/
|
||||
/* */
|
||||
/* sorting */
|
||||
/* */
|
||||
/**********************************************************************/
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#define ft_qsort qsort
|
||||
|
||||
#define ft_exit exit /* only used to exit from unhandled exceptions */
|
||||
|
||||
|
||||
/**********************************************************************/
|
||||
/* */
|
||||
/* memory allocation */
|
||||
/* */
|
||||
/**********************************************************************/
|
||||
|
||||
|
||||
#define ft_scalloc calloc
|
||||
#define ft_sfree free
|
||||
#define ft_smalloc malloc
|
||||
#define ft_srealloc realloc
|
||||
|
||||
|
||||
/**********************************************************************/
|
||||
/* */
|
||||
/* miscellaneous */
|
||||
/* */
|
||||
/**********************************************************************/
|
||||
|
||||
|
||||
#define ft_atol atol
|
||||
#define ft_labs labs
|
||||
|
||||
|
||||
/**********************************************************************/
|
||||
/* */
|
||||
/* execution control */
|
||||
/* */
|
||||
/**********************************************************************/
|
||||
|
||||
|
||||
#include <setjmp.h>
|
||||
|
||||
#define ft_jmp_buf jmp_buf /* note: this cannot be a typedef since */
|
||||
/* jmp_buf is defined as a macro */
|
||||
/* on certain platforms */
|
||||
|
||||
#define ft_longjmp longjmp
|
||||
#define ft_setjmp( b ) setjmp( *(jmp_buf*) &(b) ) /* same thing here */
|
||||
|
||||
|
||||
/* the following is only used for debugging purposes, i.e., if */
|
||||
/* FT_DEBUG_LEVEL_ERROR or FT_DEBUG_LEVEL_TRACE are defined */
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
|
||||
#endif /* __FTSTDLIB_H__ */
|
||||
|
||||
|
||||
/* END */
|
@ -54,6 +54,8 @@ extern void longjmp( jmp_buf, int ) __attribute__((noreturn));
|
||||
extern IEngineReplay *g_pEngine;
|
||||
#elif ENGINE_DLL
|
||||
#include "EngineInterface.h"
|
||||
#elif UTILS
|
||||
// OwO
|
||||
#else
|
||||
#include "cdll_int.h"
|
||||
extern IVEngineClient *engine;
|
||||
@ -61,10 +63,26 @@ extern void longjmp( jmp_buf, int ) __attribute__((noreturn));
|
||||
|
||||
// use the JPEGLIB_USE_STDIO define so that we can read in jpeg's from outside the game directory tree.
|
||||
#define JPEGLIB_USE_STDIO
|
||||
#if ANDROID
|
||||
#include "android/jpeglib/jpeglib.h"
|
||||
#elif defined WIN32
|
||||
#include "jpeglib/jpeglib.h"
|
||||
#else
|
||||
#include <jpeglib.h>
|
||||
#endif
|
||||
|
||||
#undef JPEGLIB_USE_STDIO
|
||||
|
||||
|
||||
#if HAVE_PNG
|
||||
|
||||
#if ANDROID || WIN32
|
||||
#include "libpng/png.h"
|
||||
#else
|
||||
#include <png.h>
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#include <setjmp.h>
|
||||
|
||||
@ -93,6 +111,8 @@ extern void longjmp( jmp_buf, int ) __attribute__((noreturn));
|
||||
//-----------------------------------------------------------------------------
|
||||
// Purpose:
|
||||
//-----------------------------------------------------------------------------
|
||||
#if HAVE_JPEG
|
||||
|
||||
struct ValveJpegErrorHandler_t
|
||||
{
|
||||
// The default manager
|
||||
@ -129,12 +149,12 @@ static void ValveJpegErrorHandler( j_common_ptr cinfo )
|
||||
// Bail
|
||||
longjmp( pError->m_ErrorContext, 1 );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
// convert the JPEG file given to a TGA file at the given output path.
|
||||
ConversionErrorType ImgUtl_ConvertJPEGToTGA( const char *jpegpath, const char *tgaPath, bool bRequirePowerOfTwo )
|
||||
{
|
||||
#if !defined( _X360 )
|
||||
#if !defined( _X360 ) && HAVE_JPEG
|
||||
|
||||
//
|
||||
// !FIXME! This really probably should use ImgUtl_ReadJPEGAsRGBA, to avoid duplicated code.
|
||||
@ -485,7 +505,7 @@ unsigned char * ImgUtl_ReadTGAAsRGBA(const char *tgaPath, int &width, int &heigh
|
||||
|
||||
unsigned char *ImgUtl_ReadJPEGAsRGBA( const char *jpegPath, int &width, int &height, ConversionErrorType &errcode )
|
||||
{
|
||||
#if !defined( _X360 )
|
||||
#if !defined( _X360 ) && HAVE_JPEG
|
||||
struct jpeg_decompress_struct jpegInfo;
|
||||
struct ValveJpegErrorHandler_t jerr;
|
||||
JSAMPROW row_pointer[1];
|
||||
@ -636,6 +656,7 @@ unsigned char *ImgUtl_ReadJPEGAsRGBA( const char *jpegPath, int &width, int &hei
|
||||
#endif
|
||||
}
|
||||
|
||||
#if HAVE_PNG
|
||||
static void ReadPNGData( png_structp png_ptr, png_bytep outBytes, png_size_t byteCountToRead )
|
||||
{
|
||||
|
||||
@ -654,19 +675,37 @@ static void ReadPNGData( png_structp png_ptr, png_bytep outBytes, png_size_t byt
|
||||
// Read the bytes
|
||||
pBuf->Get( outBytes, byteCountToRead );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
unsigned char *ImgUtl_ReadPNGAsRGBA( const char *pngPath, int &width, int &height, ConversionErrorType &errcode )
|
||||
{
|
||||
#if !defined( _X360 )
|
||||
#if !defined( _X360 ) && HAVE_PNG
|
||||
|
||||
// Just load the whole file into a memory buffer
|
||||
CUtlBuffer bufFileContents;
|
||||
|
||||
#if UTILS
|
||||
static char buf[8192];
|
||||
FILE *readfile = fopen(pngPath, "rb");
|
||||
if( !readfile )
|
||||
{
|
||||
errcode = CE_CANT_OPEN_SOURCE_FILE;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
size_t size;
|
||||
while( ( size = fread(buf, 1, sizeof(buf), readfile ) ) > 0 )
|
||||
bufFileContents.Put( buf, size );
|
||||
|
||||
// Load it
|
||||
return ImgUtl_ReadPNGAsRGBAFromBuffer( bufFileContents, width, height, errcode );
|
||||
#else
|
||||
if ( !g_pFullFileSystem->ReadFile( pngPath, NULL, bufFileContents ) )
|
||||
{
|
||||
errcode = CE_CANT_OPEN_SOURCE_FILE;
|
||||
return NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
// Load it
|
||||
return ImgUtl_ReadPNGAsRGBAFromBuffer( bufFileContents, width, height, errcode );
|
||||
@ -679,7 +718,7 @@ unsigned char *ImgUtl_ReadPNGAsRGBA( const char *pngPath, int &width, int &heigh
|
||||
|
||||
unsigned char *ImgUtl_ReadPNGAsRGBAFromBuffer( CUtlBuffer &buffer, int &width, int &height, ConversionErrorType &errcode )
|
||||
{
|
||||
#if !defined( _X360 )
|
||||
#if !defined( _X360 ) && HAVE_PNG
|
||||
|
||||
png_const_bytep pngData = (png_const_bytep)buffer.Base();
|
||||
if (png_sig_cmp( pngData, 0, 8))
|
||||
@ -1470,7 +1509,7 @@ ConversionErrorType ImgUtl_ConvertTGAToVTF(const char *tgaPath, int nMaxWidth/*=
|
||||
inbuf.SeekPut( CUtlBuffer::SEEK_HEAD, nBytesRead );
|
||||
|
||||
// load vtex_dll.dll and get the interface to it.
|
||||
CSysModule *vtexmod = Sys_LoadModule("vtex_dll");
|
||||
CSysModule *vtexmod = Sys_LoadModule("vtex_dll" DLL_EXT_STRING);
|
||||
if (vtexmod == NULL)
|
||||
{
|
||||
Msg( "Failed to open TGA conversion module vtex_dll: %s\n", tgaPath);
|
||||
@ -1519,6 +1558,17 @@ static void DoCopyFile( const char *source, const char *destination )
|
||||
::COM_CopyFile( source, destination );
|
||||
#elif REPLAY_DLL
|
||||
g_pEngine->CopyFile( source, destination );
|
||||
#elif UTILS
|
||||
static char buf[16384];
|
||||
FILE *readfile = fopen(source, "rb");
|
||||
FILE *writefile = fopen(destination, "wb");
|
||||
|
||||
size_t size = 0;
|
||||
while( (size = fread(buf, sizeof(buf), 1, readfile)) != 0 )
|
||||
fwrite(buf, size, 1, writefile);
|
||||
|
||||
fclose(readfile);
|
||||
fclose(writefile);
|
||||
#else
|
||||
engine->CopyLocalFile( source, destination );
|
||||
#endif
|
||||
@ -1709,7 +1759,7 @@ ConversionErrorType ImgUtl_ConvertToVTFAndDumpVMT( const char *pInPath, const ch
|
||||
Q_strncpy(finalPath, com_gamedir, sizeof(finalPath));
|
||||
#elif REPLAY_DLL
|
||||
Q_strncpy(finalPath, g_pEngine->GetGameDir(), sizeof(finalPath));
|
||||
#else
|
||||
#elif !UTILS
|
||||
Q_strncpy(finalPath, engine->GetGameDirectory(), sizeof(finalPath));
|
||||
#endif
|
||||
Q_strncat(finalPath, szOutDir, sizeof(finalPath), COPY_ALL_CHARACTERS);
|
||||
@ -1826,6 +1876,7 @@ ConversionErrorType ImgUtl_WriteGenericVMT( const char *vtfPath, const char *pMa
|
||||
return CE_SUCCESS;
|
||||
}
|
||||
|
||||
#if HAVE_PNG
|
||||
static void WritePNGData( png_structp png_ptr, png_bytep inBytes, png_size_t byteCountToWrite )
|
||||
{
|
||||
|
||||
@ -1927,11 +1978,13 @@ fail:
|
||||
return CE_SOURCE_FILE_FORMAT_NOT_SUPPORTED;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Purpose: Initialize destination --- called by jpeg_start_compress
|
||||
// before any data is actually written.
|
||||
//-----------------------------------------------------------------------------
|
||||
#if HAVE_JPEG
|
||||
METHODDEF(void) init_destination (j_compress_ptr cinfo)
|
||||
{
|
||||
JPEGDestinationManager_t *dest = ( JPEGDestinationManager_t *) cinfo->dest;
|
||||
@ -2012,12 +2065,14 @@ GLOBAL(void) jpeg_UtlBuffer_dest (j_compress_ptr cinfo, CUtlBuffer *pBuffer )
|
||||
dest->pub.term_destination = term_destination;
|
||||
dest->pBuffer = pBuffer;
|
||||
}
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Purpose: Write three channel RGB data to a JPEG file
|
||||
//-----------------------------------------------------------------------------
|
||||
bool ImgUtl_WriteRGBToJPEG( unsigned char *pSrcBuf, unsigned int nSrcWidth, unsigned int nSrcHeight, const char *lpszFilename )
|
||||
{
|
||||
#if HAVE_JPEG
|
||||
CUtlBuffer dstBuf;
|
||||
|
||||
JSAMPROW row_pointer[1]; // pointer to JSAMPLE row[s]
|
||||
@ -2069,11 +2124,14 @@ bool ImgUtl_WriteRGBToJPEG( unsigned char *pSrcBuf, unsigned int nSrcWidth, unsi
|
||||
jpeg_destroy_compress(&cinfo);
|
||||
|
||||
return CE_SUCCESS;
|
||||
#else
|
||||
return CE_SOURCE_FILE_FORMAT_NOT_SUPPORTED;
|
||||
#endif
|
||||
}
|
||||
|
||||
ConversionErrorType ImgUtl_WriteRGBAAsJPEGToBuffer( const unsigned char *pRGBAData, int nWidth, int nHeight, CUtlBuffer &bufOutData, int nStride )
|
||||
{
|
||||
#if !defined( _X360 )
|
||||
#if !defined( _X360 ) && HAVE_JPEG
|
||||
|
||||
JSAMPROW row_pointer[1]; // pointer to JSAMPLE row[s]
|
||||
int row_stride; // physical row width in image buffer
|
||||
@ -2214,6 +2272,7 @@ ConversionErrorType ImgUtl_SaveBitmapToBuffer( CUtlBuffer &fileData, const Bitma
|
||||
|
||||
ConversionErrorType ImgUtl_LoadPNGBitmapFromBuffer( CUtlBuffer &fileData, Bitmap_t &bitmap )
|
||||
{
|
||||
#if HAVE_PNG
|
||||
bitmap.Clear();
|
||||
ConversionErrorType nErrorCode;
|
||||
int width, height;
|
||||
@ -2226,10 +2285,14 @@ ConversionErrorType ImgUtl_LoadPNGBitmapFromBuffer( CUtlBuffer &fileData, Bitmap
|
||||
// Install the buffer into the bitmap, and transfer ownership
|
||||
bitmap.SetBuffer( width, height, IMAGE_FORMAT_RGBA8888, buffer, true, width*4 );
|
||||
return CE_SUCCESS;
|
||||
#else
|
||||
return CE_SOURCE_FILE_FORMAT_NOT_SUPPORTED;
|
||||
#endif
|
||||
}
|
||||
|
||||
ConversionErrorType ImgUtl_SavePNGBitmapToBuffer( CUtlBuffer &fileData, const Bitmap_t &bitmap )
|
||||
{
|
||||
#if HAVE_PNG
|
||||
if ( !bitmap.IsValid() )
|
||||
{
|
||||
Assert( bitmap.IsValid() );
|
||||
@ -2252,6 +2315,9 @@ ConversionErrorType ImgUtl_SavePNGBitmapToBuffer( CUtlBuffer &fileData, const Bi
|
||||
bitmap.Stride()
|
||||
);
|
||||
return result;
|
||||
#else
|
||||
return CE_SOURCE_FILE_FORMAT_NOT_SUPPORTED;
|
||||
#endif
|
||||
}
|
||||
|
||||
ConversionErrorType ImgUtl_ResizeBitmap( Bitmap_t &destBitmap, int nWidth, int nHeight, const Bitmap_t *pImgSource )
|
||||
|
@ -16,6 +16,8 @@
|
||||
// This is used, unless overridden in the registry
|
||||
#define VALVE_MASTER_ADDRESS "207.173.177.10:27011"
|
||||
|
||||
#define HB_TIMEOUT 15
|
||||
|
||||
#define PORT_RCON 27015 // defualt RCON port, TCP
|
||||
#define PORT_MASTER 27011 // Default master port, UDP
|
||||
#define PORT_CLIENT 27005 // Default client port, UDP/TCP
|
||||
@ -29,6 +31,8 @@
|
||||
#endif // ENABLE_RPT
|
||||
#define PORT_REPLAY 27040 // Default replay port
|
||||
|
||||
#define PORT_SERVERSINFO 27069 // Default matchmaking port
|
||||
|
||||
// out of band message id bytes
|
||||
|
||||
// M = master, S = server, C = client, A = any
|
||||
@ -80,16 +84,17 @@
|
||||
|
||||
|
||||
// A user is requesting the list of master servers, auth servers, and titan dir servers from the Client Master server
|
||||
#define A2M_GETMASTERSERVERS 'v' // + byte (type of request, TYPE_CLIENT_MASTER or TYPE_SERVER_MASTER)
|
||||
|
||||
// Master server list response
|
||||
#define M2A_MASTERSERVERS 'w' // + byte type + 6 byte IP/Port List
|
||||
#define S2M_GETCHALLENGE 'w' // + dword challenge
|
||||
#define S2M_HEARTBEAT 'y'
|
||||
#define S2M_SHUTDOWN 'z' // Master peering message
|
||||
#define M2S_CHALLENGE 'x' // + dword challenge
|
||||
#define M2C_QUERY 'J' // request module from master
|
||||
#define C2M_CLIENTQUERY '1' // New style server query
|
||||
|
||||
#define A2M_GETACTIVEMODS 'x' // + string Request to master to provide mod statistics ( current usage ). "1" for first mod.
|
||||
|
||||
#define M2A_ACTIVEMODS 'y' // response: modname\r\nusers\r\nservers
|
||||
|
||||
#define M2M_MSG 'z' // Master peering message
|
||||
#define C2S_INFOREQUEST 'v'
|
||||
#define S2C_INFOREPLY 'K'
|
||||
|
||||
// SERVER TO CLIENT/ANY
|
||||
|
||||
@ -106,9 +111,6 @@
|
||||
#define S2A_INFO_SRC 'I' // + Address, hostname, map, gamedir, gamedescription, active players, maxplayers, protocol
|
||||
#define S2A_INFO_GOLDSRC 'm' // Reserved for use by goldsrc servers
|
||||
|
||||
#define S2M_GETFILE 'J' // request module from master
|
||||
#define M2S_SENDFILE 'K' // send module to server
|
||||
|
||||
#define S2C_REDIRECT 'L' // + IP x.x.x.x:port, redirect client to other server/proxy
|
||||
|
||||
#define C2M_CHECKMD5 'M' // player client asks secure master if Module MD5 is valid
|
||||
@ -133,8 +135,6 @@
|
||||
|
||||
#define A2S_KEY_STRING "Source Engine Query" // required postfix to a A2S_INFO query
|
||||
|
||||
#define A2M_GET_SERVERS_BATCH2 '1' // New style server query
|
||||
|
||||
#define A2M_GETACTIVEMODS2 '2' // New style mod info query
|
||||
|
||||
#define C2S_AUTHREQUEST1 '3' //
|
||||
|
@ -12,7 +12,7 @@
|
||||
#endif
|
||||
|
||||
// The current network protocol version. Changing this makes clients and servers incompatible
|
||||
#define PROTOCOL_VERSION 24
|
||||
#define PROTOCOL_VERSION 25
|
||||
|
||||
#define DEMO_BACKWARDCOMPATABILITY
|
||||
|
||||
|
@ -420,7 +420,7 @@ FORCE_INLINE uint32_t _mm_crc32_u8(uint32_t, uint8_t);
|
||||
|
||||
// Older gcc does not define vld1q_u8_x4 type
|
||||
#if defined(__GNUC__) && !defined(__clang__) && \
|
||||
((__GNUC__ <= 10 && defined(__arm__)) || \
|
||||
(defined(__arm__) || \
|
||||
(__GNUC__ == 10 && __GNUC_MINOR__ < 3 && defined(__aarch64__)) || \
|
||||
(__GNUC__ <= 9 && defined(__aarch64__)))
|
||||
FORCE_INLINE uint8x16x4_t _sse2neon_vld1q_u8_x4(const uint8_t *p)
|
||||
|
@ -17,7 +17,7 @@
|
||||
#include "filesystem.h"
|
||||
#include "vguifont.h"
|
||||
|
||||
#if defined(LINUX) || defined(OSX)
|
||||
#ifdef POSIX
|
||||
#include <ft2build.h>
|
||||
#include FT_FREETYPE_H
|
||||
typedef void *(*FontDataHelper)( const char *pchFontName, int &size, const char *fontFileName );
|
||||
@ -71,7 +71,7 @@ public:
|
||||
IFileSystem *FileSystem() { return m_pFileSystem; }
|
||||
IMaterialSystem *MaterialSystem() { return m_pMaterialSystem; }
|
||||
|
||||
#if defined(LINUX) || defined(OSX)
|
||||
#ifdef POSIX
|
||||
FT_Library GetFontLibraryHandle() { return library; }
|
||||
void SetFontDataHelper( FontDataHelper helper ) { m_pFontDataHelper = helper; }
|
||||
#endif
|
||||
@ -96,7 +96,7 @@ private:
|
||||
CUtlVector<CFontAmalgam> m_FontAmalgams;
|
||||
CUtlVector<font_t *> m_Win32Fonts;
|
||||
|
||||
#if defined(LINUX) || defined(OSX)
|
||||
#ifdef POSIX
|
||||
FT_Library library;
|
||||
FontDataHelper m_pFontDataHelper;
|
||||
#endif
|
||||
|
@ -23,7 +23,7 @@ struct newChar_t
|
||||
#ifdef WIN32
|
||||
#include "Win32Font.h"
|
||||
typedef CWin32Font font_t;
|
||||
#elif defined(LINUX) || defined(OSX)
|
||||
#elif defined(POSIX)
|
||||
#include "linuxfont.h"
|
||||
typedef CLinuxFont font_t;
|
||||
#else
|
||||
|
@ -1,5 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
pushd `dirname $0`
|
||||
devtools/bin/vpc /f /hl2 +everything /mksln everything
|
||||
popd
|
@ -1 +0,0 @@
|
||||
devtools\bin\vpc.exe /2013 +everything /mksln everything.sln
|
@ -181,10 +181,9 @@ private:
|
||||
DataCacheItem_t *m_pFirst;
|
||||
int m_iThread;
|
||||
};
|
||||
typedef CThreadLocal<FrameLock_t *> CThreadFrameLock;
|
||||
|
||||
CDataCacheLRU & m_LRU;
|
||||
CThreadFrameLock m_ThreadFrameLock;
|
||||
CTHREADLOCAL(FrameLock_t*) m_ThreadFrameLock;
|
||||
DataCacheStatus_t m_status;
|
||||
DataCacheLimits_t m_limits;
|
||||
IDataCacheClient * m_pClient;
|
||||
|
@ -5,7 +5,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
$macro SRCDIR ".."
|
||||
$Macro OUTBINDIR "$LIBPUBLIC"
|
||||
$Macro OUTBINDIR "$SRCDIR\..\game\bin"
|
||||
|
||||
$include "$SRCDIR\vpc_scripts\source_dll_base.vpc"
|
||||
|
||||
|
@ -1680,6 +1680,36 @@ bool CMDLCache::BuildHardwareData( MDLHandle_t handle, studiodata_t *pStudioData
|
||||
|
||||
Assert( GetVertexData( handle ) );
|
||||
|
||||
if( pStudioHdr->version == 49 )
|
||||
{
|
||||
for( int i = 0; i < pVtxHdr->numBodyParts; i++)
|
||||
{
|
||||
OptimizedModel::BodyPartHeader_t *pBodyPartHdr = pVtxHdr->pBodyPart(i);
|
||||
|
||||
for( int j = 0; j < pBodyPartHdr->numModels; j++ )
|
||||
{
|
||||
OptimizedModel::ModelHeader_t *pModelHdr = pBodyPartHdr->pModel(j);
|
||||
|
||||
for( int k = 0; k < pModelHdr->numLODs; k++)
|
||||
{
|
||||
OptimizedModel::ModelLODHeader_t *pModelLODHdr = pModelHdr->pLOD(k);
|
||||
|
||||
for( int l = 0; l < pModelLODHdr->numMeshes; l++ )
|
||||
{
|
||||
OptimizedModel::MeshHeader_t *pMeshHdr = pModelLODHdr->pMesh(l);
|
||||
pMeshHdr->flags |= OptimizedModel::MESH_IS_MDL49;
|
||||
|
||||
for( int m = 0; m < pMeshHdr->numStripGroups; m++ )
|
||||
{
|
||||
OptimizedModel::StripGroupHeader_t *pStripGroupHdr = pMeshHdr->pStripGroup(m);
|
||||
pStripGroupHdr->flags |= OptimizedModel::STRIPGROUP_IS_MDL49;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BeginLock();
|
||||
bool bLoaded = g_pStudioRender->LoadModel( pStudioHdr, pVtxHdr, &pStudioData->m_HardwareData );
|
||||
EndLock();
|
||||
|
@ -20,7 +20,8 @@ def build(bld):
|
||||
'mdlcache.cpp',
|
||||
'../public/studio.cpp',
|
||||
'../public/studio_virtualmodel.cpp',
|
||||
'../common/studiobyteswap.cpp'
|
||||
'../common/studiobyteswap.cpp',
|
||||
'../public/tier0/memoverride.cpp'
|
||||
]
|
||||
|
||||
includes = [
|
||||
|
@ -377,7 +377,7 @@ private:
|
||||
{
|
||||
DmObjectId_t m_id;
|
||||
DmElementReference_t m_ref;
|
||||
ElementIdHandlePair_t() {}
|
||||
ElementIdHandlePair_t() = default;
|
||||
explicit ElementIdHandlePair_t( const DmObjectId_t &id ) : m_ref()
|
||||
{
|
||||
CopyUniqueId( id, &m_id );
|
||||
|
@ -86,7 +86,7 @@ private:
|
||||
{
|
||||
DmObjectId_t m_oldId;
|
||||
DmObjectId_t m_newId;
|
||||
DmIdPair_t() {}
|
||||
DmIdPair_t() = default;
|
||||
DmIdPair_t( const DmObjectId_t &id )
|
||||
{
|
||||
CopyUniqueId( id, &m_oldId );
|
||||
|
@ -5,7 +5,7 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
$Macro SRCDIR ".."
|
||||
$Macro OUTBINDIR "$LIBPUBLIC"
|
||||
$Macro OUTBINDIR "$SRCDIR\..\game\bin"
|
||||
|
||||
$Include "$SRCDIR\vpc_scripts\source_dll_base.vpc"
|
||||
$include "$SRCDIR\vpc_scripts\source_cryptlib_include.vpc"
|
||||
@ -142,6 +142,7 @@ $Project "Dedicated"
|
||||
$Lib tier2
|
||||
$Lib tier3
|
||||
$Lib vgui_controls [$WIN32]
|
||||
$Lib vpklib
|
||||
$LibExternal "$SRCDIR/thirdparty/libedit-3.1/src/.libs/libedit" [$LINUXALL]
|
||||
$ImpLibExternal steam_api
|
||||
$ImpLib SDL2 [$SDL]
|
||||
|
@ -13,7 +13,11 @@
|
||||
#include <stdlib.h>
|
||||
#include "interface.h"
|
||||
#include <string.h>
|
||||
#ifdef OSX
|
||||
#include <malloc/malloc.h>
|
||||
#else
|
||||
#include <malloc.h>
|
||||
#endif
|
||||
#include "tier1/strtools.h"
|
||||
#include "tier0/icommandline.h"
|
||||
#include "tier0/dbg.h"
|
||||
|
@ -278,7 +278,7 @@ bool CDedicatedAppSystemGroup::PreInit( )
|
||||
return false;
|
||||
|
||||
#ifdef _WIN32
|
||||
g_bVGui = !CommandLine()->CheckParm( "-console" );
|
||||
g_bVGui = CommandLine()->CheckParm( "-vgui" );
|
||||
#endif
|
||||
|
||||
CreateInterfaceFn factory = GetFactory();
|
||||
@ -470,7 +470,7 @@ bool CDedicatedSteamApplication::Create( )
|
||||
//-----------------------------------------------------------------------------
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
#ifndef POSIX
|
||||
#if !defined( POSIX ) && !defined( PLATFORM_64BITS )
|
||||
_asm
|
||||
{
|
||||
fninit
|
||||
|
@ -12,7 +12,11 @@
|
||||
#include <stdarg.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
#ifdef OSX
|
||||
#include <malloc/malloc.h>
|
||||
#else
|
||||
#include <malloc.h>
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <dlfcn.h>
|
||||
|
@ -24,11 +24,8 @@ def build(bld):
|
||||
'../common/SteamAppStartup.cpp',
|
||||
'sys_common.cpp',
|
||||
'sys_ded.cpp',
|
||||
#'sys_windows.cpp', [$WINDOWS]
|
||||
'sys_linux.cpp', # [$POSIX]
|
||||
'console/conproc.cpp',
|
||||
'console/textconsole.cpp',
|
||||
'console/TextConsoleUnix.cpp', # [$POSIX]
|
||||
'../filesystem/filetracker.cpp',
|
||||
'../filesystem/basefilesystem.cpp',
|
||||
'../filesystem/packfile.cpp',
|
||||
@ -36,6 +33,22 @@ def build(bld):
|
||||
'../filesystem/filesystem_stdio.cpp',
|
||||
'../filesystem/QueuedLoader.cpp',
|
||||
'../public/zip_utils.cpp',
|
||||
'../public/tier0/memoverride.cpp'
|
||||
]
|
||||
|
||||
if bld.env.DEST_OS == 'win32':
|
||||
source += [
|
||||
'sys_windows.cpp',
|
||||
'vgui/CreateMultiplayerGameServerPage.cpp',
|
||||
'vgui/MainPanel.cpp',
|
||||
'../public/vgui_controls/vgui_controls.cpp',
|
||||
'vgui/vguihelpers.cpp',
|
||||
'console/TextConsoleWin32.cpp'
|
||||
]
|
||||
else:
|
||||
source += [
|
||||
'sys_linux.cpp', # [$POSIX]
|
||||
'console/TextConsoleUnix.cpp', # [$POSIX]
|
||||
'../filesystem/linux_support.cpp' # [$POSIX]
|
||||
]
|
||||
|
||||
@ -51,6 +64,9 @@ def build(bld):
|
||||
|
||||
libs = ['tier0','vpklib','tier1','tier2','tier3','vstdlib','steam_api','appframework','mathlib', 'EDIT']
|
||||
|
||||
if bld.env.DEST_OS == 'win32':
|
||||
libs += ['vgui_controls', 'USER32', 'SHELL32']
|
||||
|
||||
install_path = bld.env.LIBDIR
|
||||
|
||||
bld.shlib(
|
||||
|
@ -7,7 +7,7 @@
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include "afxres.h"
|
||||
#include "windows.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
@ -206,11 +206,11 @@ int main( int argc, char *argv[] )
|
||||
void *tier0 = dlopen( "libtier0" DLL_EXT_STRING, RTLD_NOW );
|
||||
void *vstdlib = dlopen( "libvstdlib" DLL_EXT_STRING, RTLD_NOW );
|
||||
|
||||
const char *pBinaryName = "dedicated" DLL_EXT_STRING;
|
||||
const char *pBinaryName = "bin/dedicated" DLL_EXT_STRING;
|
||||
|
||||
void *dedicated = dlopen( pBinaryName, RTLD_NOW );
|
||||
if ( !dedicated )
|
||||
dedicated = dlopen( "libdedicated" DLL_EXT_STRING, RTLD_NOW );
|
||||
dedicated = dlopen( "bin/libdedicated" DLL_EXT_STRING, RTLD_NOW );
|
||||
|
||||
if ( !dedicated )
|
||||
{
|
||||
|
Binary file not shown.
@ -231,7 +231,7 @@ enum
|
||||
class CDmxElementDictionary
|
||||
{
|
||||
public:
|
||||
CDmxElementDictionary();
|
||||
CDmxElementDictionary() = default;
|
||||
|
||||
DmxElementDictHandle_t InsertElement( CDmxElement *pElement );
|
||||
CDmxElement *GetElement( DmxElementDictHandle_t handle );
|
||||
@ -287,15 +287,6 @@ private:
|
||||
AttributeList_t m_ArrayAttributes;
|
||||
};
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Constructor
|
||||
//-----------------------------------------------------------------------------
|
||||
CDmxElementDictionary::CDmxElementDictionary()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Clears the dictionary
|
||||
//-----------------------------------------------------------------------------
|
||||
|
@ -56,7 +56,7 @@ typedef struct D3DXFLOAT16
|
||||
{
|
||||
#ifdef __cplusplus
|
||||
public:
|
||||
D3DXFLOAT16() {};
|
||||
D3DXFLOAT16() = default;
|
||||
D3DXFLOAT16( FLOAT );
|
||||
D3DXFLOAT16( CONST D3DXFLOAT16& );
|
||||
|
||||
@ -88,7 +88,7 @@ typedef struct D3DXVECTOR2
|
||||
{
|
||||
#ifdef __cplusplus
|
||||
public:
|
||||
D3DXVECTOR2() {};
|
||||
D3DXVECTOR2() = default;
|
||||
D3DXVECTOR2( CONST FLOAT * );
|
||||
D3DXVECTOR2( CONST D3DXFLOAT16 * );
|
||||
D3DXVECTOR2( FLOAT x, FLOAT y );
|
||||
@ -134,7 +134,7 @@ typedef struct D3DXVECTOR2_16F
|
||||
{
|
||||
#ifdef __cplusplus
|
||||
public:
|
||||
D3DXVECTOR2_16F() {};
|
||||
D3DXVECTOR2_16F() = default;
|
||||
D3DXVECTOR2_16F( CONST FLOAT * );
|
||||
D3DXVECTOR2_16F( CONST D3DXFLOAT16 * );
|
||||
D3DXVECTOR2_16F( CONST D3DXFLOAT16 &x, CONST D3DXFLOAT16 &y );
|
||||
@ -162,7 +162,7 @@ public:
|
||||
typedef struct D3DXVECTOR3 : public D3DVECTOR
|
||||
{
|
||||
public:
|
||||
D3DXVECTOR3() {};
|
||||
D3DXVECTOR3() = default;
|
||||
D3DXVECTOR3( CONST FLOAT * );
|
||||
D3DXVECTOR3( CONST D3DVECTOR& );
|
||||
D3DXVECTOR3( CONST D3DXFLOAT16 * );
|
||||
@ -208,7 +208,7 @@ typedef struct D3DXVECTOR3_16F
|
||||
{
|
||||
#ifdef __cplusplus
|
||||
public:
|
||||
D3DXVECTOR3_16F() {};
|
||||
D3DXVECTOR3_16F() = default;
|
||||
D3DXVECTOR3_16F( CONST FLOAT * );
|
||||
D3DXVECTOR3_16F( CONST D3DVECTOR& );
|
||||
D3DXVECTOR3_16F( CONST D3DXFLOAT16 * );
|
||||
@ -237,7 +237,7 @@ typedef struct D3DXVECTOR4
|
||||
{
|
||||
#ifdef __cplusplus
|
||||
public:
|
||||
D3DXVECTOR4() {};
|
||||
D3DXVECTOR4() = default;
|
||||
D3DXVECTOR4( CONST FLOAT* );
|
||||
D3DXVECTOR4( CONST D3DXFLOAT16* );
|
||||
D3DXVECTOR4( CONST D3DVECTOR& xyz, FLOAT w );
|
||||
@ -281,7 +281,7 @@ typedef struct D3DXVECTOR4_16F
|
||||
{
|
||||
#ifdef __cplusplus
|
||||
public:
|
||||
D3DXVECTOR4_16F() {};
|
||||
D3DXVECTOR4_16F() = default;
|
||||
D3DXVECTOR4_16F( CONST FLOAT * );
|
||||
D3DXVECTOR4_16F( CONST D3DXFLOAT16* );
|
||||
D3DXVECTOR4_16F( CONST D3DXVECTOR3_16F& xyz, CONST D3DXFLOAT16& w );
|
||||
@ -426,7 +426,7 @@ typedef struct D3DXQUATERNION
|
||||
{
|
||||
#ifdef __cplusplus
|
||||
public:
|
||||
D3DXQUATERNION() {}
|
||||
D3DXQUATERNION() = default;
|
||||
D3DXQUATERNION( CONST FLOAT * );
|
||||
D3DXQUATERNION( CONST D3DXFLOAT16 * );
|
||||
D3DXQUATERNION( FLOAT x, FLOAT y, FLOAT z, FLOAT w );
|
||||
@ -472,7 +472,7 @@ typedef struct D3DXPLANE
|
||||
{
|
||||
#ifdef __cplusplus
|
||||
public:
|
||||
D3DXPLANE() {}
|
||||
D3DXPLANE() = default;
|
||||
D3DXPLANE( CONST FLOAT* );
|
||||
D3DXPLANE( CONST D3DXFLOAT16* );
|
||||
D3DXPLANE( FLOAT a, FLOAT b, FLOAT c, FLOAT d );
|
||||
@ -513,7 +513,7 @@ typedef struct D3DXCOLOR
|
||||
{
|
||||
#ifdef __cplusplus
|
||||
public:
|
||||
D3DXCOLOR() {}
|
||||
D3DXCOLOR() = default;
|
||||
D3DXCOLOR( DWORD argb );
|
||||
D3DXCOLOR( CONST FLOAT * );
|
||||
D3DXCOLOR( CONST D3DXFLOAT16 * );
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:3e3a0893326c705d44a13d9263681df9b50a3112f37c45488f5e4919f3b3d26e
|
||||
size 1083572
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:0dcf72695c4dc029768d2d8fadb5d61d56dcf896bb9683dc936f8a046c608495
|
||||
size 3901404
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ef5622f062ea151ea49aee29903562b819bd65c90b052877c127ebcd428895dd
|
||||
size 3436
|
BIN
dx9sdk/lib/amd64/D3DCSX.lib
Normal file
BIN
dx9sdk/lib/amd64/D3DCSX.lib
Normal file
Binary file not shown.
BIN
dx9sdk/lib/amd64/D3DCSXd.lib
Normal file
BIN
dx9sdk/lib/amd64/D3DCSXd.lib
Normal file
Binary file not shown.
BIN
dx9sdk/lib/amd64/DxErr.lib
Normal file
BIN
dx9sdk/lib/amd64/DxErr.lib
Normal file
Binary file not shown.
BIN
dx9sdk/lib/amd64/X3DAudio.lib
Normal file
BIN
dx9sdk/lib/amd64/X3DAudio.lib
Normal file
Binary file not shown.
BIN
dx9sdk/lib/amd64/XAPOFX.lib
Normal file
BIN
dx9sdk/lib/amd64/XAPOFX.lib
Normal file
Binary file not shown.
BIN
dx9sdk/lib/amd64/XInput.lib
Normal file
BIN
dx9sdk/lib/amd64/XInput.lib
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user