Glad: рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рд╕реАрдПрдордХреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 21 рд╕рд┐рддре░ 2018  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: Dav1dde/glad

рдирдорд╕реНрддреЗ,

рдореБрдЭреЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рд╕реАрдПрдордХреЗ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИред рдореИрдВ рдЕрдкрдиреЗ рд╕реАрдПрдордХреЗ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЦреБрд╢реА рд╕реЗ рджреМрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдФрд░ рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЬреЗрдирд░реЗрдЯ рдХреА рдЧрдИ рд╣реИрдкреНрдкреА.рдПрдЪ/рд▓рд┐рдм рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП, рдореЗрд░реА рдлрд╝реЛрд▓реНрдбрд░ рд╕рдВрд░рдЪрдирд╛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИ:
C:\Users\me\projects\glad (GitHub рд╕реЗ рдХреНрд▓реЛрди рдХрд┐рдпрд╛ рдЧрдпрд╛)
C:\Users\me\projects\glad-driver (рдПрдХ CMakeLists.txt рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХреЗ рд╕рд╛рде рдирдИ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛)

рдореИрдВрдиреЗ рдЗрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ рд╕реЗ рдЦрд╛рд▓реА build\ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдВ рднреА рдмрдирд╛рдИрдВред

glad-driver\CMakeLists.txt рд╣реИрдВ:

cmake_minimum_required(VERSION 3.0)
set(glad_DIR "..\\glad\\build")
find_package(glad REQUIRED)

рдпрд╣рд╛рдВ рд╡реЗ рдЖрджреЗрд╢ рджрд┐рдП рдЧрдП рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдореИрдВ рд╣реИрдкреНрдкреА-рдбреНрд░рд╛рдЗрд╡рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддрд╛ рд╣реВрдВред рдЦреБрд╢реА рдкрд░ рдкрд╣рд▓реЗ рд╕реАрдПрдордХреЗ рдЪрд▓рд╛рдПрдВ:

> рд╕реАрдбреА рд╣реИрдкреНрдкреА\рдмрд┐рд▓реНрдб
> рд╕реЗрдореЗрдХ -DGLAD_INSTALL=ON ..

рдкрд░рд┐рдгрд╛рдо:

-- рдЗрд╕рдХреЗ рд▓рд┐рдП рднрд╡рди: рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 15 2017
- рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдкрд╣рдЪрд╛рди рдПрдордПрд╕рд╡реАрд╕реА 19.15.26729.0 рд╣реИ
- рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ: рд╕реА:/рдкреНрд░реЛрдЧреНрд░рд╛рдо рдлрд╛рдЗрд▓реНрд╕ (x86)/рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ/2017/рдХрдореНрдпреБрдирд┐рдЯреА/рд╡реАрд╕реА/рдЯреВрд▓реНрд╕/рдПрдордПрд╕рд╡реАрд╕реА/14.15.26726/рдмрд┐рди/рд╣реЛрд╕реНрдЯрдПрдХреНрд╕86/x86/cl.exe
- рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ: рд╕реА:/рдкреНрд░реЛрдЧреНрд░рд╛рдо рдлрд╛рдЗрд▓реНрд╕ (x86)/рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ/2017/рдХрдореНрдпреБрдирд┐рдЯреА/рд╡реАрд╕реА/рдЯреВрд▓реНрд╕/рдПрдордПрд╕рд╡реАрд╕реА/14.15.26726/рдмрд┐рди/рд╣реЛрд╕реНрдЯрдПрдХреНрд╕ 86/x86/cl.exe - рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
- рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдПрдмреАрдЖрдИ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛
- рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдПрдмреАрдЖрдИ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ - рдХрд┐рдпрд╛ рдЧрдпрд╛
- рд╕реА рд╕рдВрдХрд▓рди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛
- рд╕реА рд╕рдВрдХрд▓рди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ - рдХрд┐рдпрд╛ рдЧрдпрд╛
- PythonInterp рдорд┐рд▓рд╛: C:/Users/me/AppData/Local/Programs/Python/Python36/python.exe (рдорд┐рд▓рд╛ рд╕рдВрд╕реНрдХрд░рдг "3.6.5)")
-- рд╡рд┐рдиреНрдпрд╛рд╕ рд╣реЛ рдЧрдпрд╛
-- рдЬрдирд░реЗрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ
--рдмрд┐рд▓реНрдб рдлрд╛рдЗрд▓реНрд╕ рдХреЛ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ: C:/Users/me/projects/glad/build

рдЗрд╕рдХреЗ рдмрд╛рдж, рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ:

> рдПрдордПрд╕рдмрд┐рд▓реНрдб / рдкреА: рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди = рд░рд┐рд▓реАрдЬ ALL_BUILD.vcxproj

рдкрд░рд┐рдгрд╛рдо:
(рдлрд┐рд░ рдмрд╣реБрдд рд╕рд╛рд░реА рдЪреАрдЬрд╝реЗрдВ):

рдкреВрд░реНрдг рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдкреНрд░реЛрдЬреЗрдХреНрдЯ "рд╕реА: \ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ \ рдореБрдЭреЗ \ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ \ рдЦреБрд╢реА \ рдмрд┐рд▓реНрдб \ ALL_BUILD.vcxproj" (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд▓рдХреНрд╖реНрдп)ред

рдирд┐рд░реНрдорд╛рдг рд╕рдлрд▓ рд░рд╣рд╛ред
0 рдЪреЗрддрд╛рд╡рдиреА
0 рддреНрд░реБрдЯрд┐рдпрд╛рдБ

рдмреАрддрд╛ рд╣реБрдЖ рд╕рдордп 00:00:02.08

рдЕрдВрддрд┐рдо рдЪрд░рдг, рд╕реАрдПрдордХреЗ рдХреЗ find_package рдХрдорд╛рдВрдб рд╕реЗ рдЦреБрд╢ рд╣реЛрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:

> рд╕реАрдбреА ....\рдЦреБрд╢-рдЪрд╛рд▓рдХ\рдмрд┐рд▓реНрдб
> рд╕реЗрдореЗрдХ ..

рдкрд░рд┐рдгрд╛рдо:

-- рдЗрд╕рдХреЗ рд▓рд┐рдП рднрд╡рди: рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 15 2017
- рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдкрд╣рдЪрд╛рди рдПрдордПрд╕рд╡реАрд╕реА 19.15.26729.0 рд╣реИ
-- CXX рд╕рдВрдХрд▓рдХ рдкрд╣рдЪрд╛рди MSVC 19.15.26729.0 рд╣реИ
- рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ: рд╕реА:/рдкреНрд░реЛрдЧреНрд░рд╛рдо рдлрд╛рдЗрд▓реНрд╕ (x86)/рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рд╡рд┐рдЬреБрдЕрд▓>рд╕реНрдЯреВрдбрд┐рдпреЛ/2017/рдХрдореНрдпреБрдирд┐рдЯреА/рд╡реАрд╕реА/рдЯреВрд▓реНрд╕/рдПрдордПрд╕рд╡реАрд╕реА/14.15.26726/рдмрд┐рди/рд╣реЛрд╕реНрдЯрдХреНрд╕86/x86/cl.exe
- рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ: рд╕реА:/рдкреНрд░реЛрдЧреНрд░рд╛рдо рдлрд╛рдЗрд▓реНрд╕ (x86)/рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ/2017/рдХрдореНрдпреБрдирд┐рдЯреА/рд╡реАрд╕реА/рдЯреВрд▓реНрд╕/рдПрдордПрд╕рд╡реАрд╕реА/14.15.26726/рдмрд┐рди/рд╣реЛрд╕реНрдЯрдПрдХреНрд╕ 86/x86/cl.exe - рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
- рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдПрдмреАрдЖрдИ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛
- рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдПрдмреАрдЖрдИ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ - рдХрд┐рдпрд╛ рдЧрдпрд╛
- рд╕реА рд╕рдВрдХрд▓рди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛
- рд╕реА рд╕рдВрдХрд▓рди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ - рдХрд┐рдпрд╛ рдЧрдпрд╛
- рдХрд╛рдо рдХрд░ рд░рд╣реЗ CXX рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХрд░реЗрдВ: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.15.26726/bin/Hostx86/x86/cl.exe
-- рдХрд╛рдо рдХрд░ рд░рд╣реЗ CXX рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХрд░реЗрдВ: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.15.26726/bin/Hostx86/x86/cl.exe -- рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
- CXX рдХрдВрдкрд╛рдЗрд▓рд░ ABI рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛
- CXX рдХрдВрдкрд╛рдЗрд▓рд░ ABI рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ - рдХрд┐рдпрд╛ рдЧрдпрд╛
- CXX рд╕рдВрдХрд▓рди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛
- CXX рд╕рдВрдХрд▓рди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ - рдХрд┐рдпрд╛ рдЧрдпрд╛
рд╕реА рдкрд░ рд╕реАрдПрдордХреЗ рддреНрд░реБрдЯрд┐: /рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛/рдореБрдЭреЗ/рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ/рдЦреБрд╢реА/рдмрд┐рд▓реНрдб/рдЧреНрд▓реИрдб рдХреЙрдиреНрдлрд┐рдЧ. рд╕реЗрдореЗрдХ: 27 (рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ):
рд╢рд╛рдорд┐рд▓ рд▓реЛрдб рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрд╛:

C:/Users/me/projects/glad/build/gladTargets.cmake

рдХреЙрд▓ рд╕реНрдЯреИрдХ (рд╕рдмрд╕реЗ рд╣рд╛рд▓рд┐рдпрд╛ рдХреЙрд▓ рдкрд╣рд▓реЗ):
рд╕реАрдПрдордХреЗрд▓рд┐рд╕реНрдЯреНрд╕ред txt:3 (find_package)

- рдЕрдзреВрд░рд╛ рд╡рд┐рдиреНрдпрд╛рд╕, рддреНрд░реБрдЯрд┐рдпрд╛рдБ рд╣реБрдИрдВ!
рдпрд╣ рднреА рджреЗрдЦреЗрдВ "C:/Users/me/projects/glad-driver/build/CMakeFiles/CMakeOutput.log"ред

рдЖрдЧреЗ рдХреА рдЬрд╛рдВрдЪ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЧреНрд▓реИрдбрдЯрд╛рд░реНрдЧреЗрдЯреНрд╕.рд╕реЗрдореЗрдХ рдлрд╝рд╛рдЗрд▓ (рдФрд░ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣рд╛рдВ рд╕реНрдерд┐рдд рд╣реИ):

C:\Users\me\projects\glad\build\CMakeFiles\Export\lib\cmake\glad\gladTargets.cmake

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ gladConfig.cmake рдЕрдВрдд build рдФрд░ gladTargets.cmake рдЕрдВрдд build\CmakeFiles\Export\lib\cmake\glad ред

рдЕрдЧрд░ рдореИрдВ gladTargets.cmake рдХреЛ glad\build рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХреЙрдкреА рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рд╣реИрдкреНрдкреА-рдбреНрд░рд╛рдЗрд╡рд░ рд╕реЗ рд╕реАрдПрдордХреЗ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рддреЛ рдореЗрд░рд╛ рд╣реИрдкреНрдкреА-рдбреНрд░рд╛рдЗрд╡рд░ рд╕реАрдПрдордХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕рдлрд▓ рд╣реЛрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрдЧрд░ рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЦреБрд╢-рдЪрд╛рд▓рдХ \ CMakeLists.txt рдореЗрдВ рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВ:

add_executable (hello_glad "HelloGlad.cpp")
target_link_libraries(hello_glad glad::glad)

рддреЛ рдореБрдЭреЗ рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ:

CMakeLists.txt рдореЗрдВ CMake рддреНрд░реБрдЯрд┐:
рдЖрдпрд╛рддрд┐рдд рд▓рдХреНрд╖реНрдп "рдЦреБрд╢реА :: рдЦреБрд╢реА" рдореЗрдВ рдЧреИрд░-рдореМрдЬреВрдж рдкрде рд╢рд╛рдорд┐рд▓ рд╣реИ

"C:/Users/me/include/glad"

рдЗрд╕рдХреЗ INTERFACE_INCLUDE_DIRECTORIES рдореЗрдВред рд╕рдВрднрд╛рд╡рд┐рдд рдХрд╛рд░рдгреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:

  • рдкрде рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛, рдЙрд╕рдХрд╛ рдирд╛рдо рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛, рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕реНрдерд╛рди рдкрд░ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛ред

  • рдПрдХ рд╕реНрдерд╛рдкрд┐рдд рдпрд╛ рд╕реНрдерд╛рдкрдирд╛ рд░рджреНрдж рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реБрдИред

  • рд╕рдВрд╕реНрдерд╛рдкрди рдкреИрдХреЗрдЬ рджреЛрд╖рдкреВрд░реНрдг рдерд╛ рдФрд░ рдЙрди рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрддрд╛ рд╣реИ рдЬреЛ рдпрд╣ рдирд╣реАрдВ рд╣реИ
    рдкреНрд░рджрд╛рди рдХрд░реЗрдВред

рдХрд┐рд╕реА рднреА рддрд░рд╣ рдХреА рд╕рд╣рд╛рдпрддрд╛ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛!

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░ред

@tysonbrochu , рдХреНрдпрд╛ рдЖрдкрдиреЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХреНрд▓реЛрдирд┐рдВрдЧ рдХреЗ рдмрдЬрд╛рдп FetchContent рдореЙрдбреНрдпреВрд▓ рдЖрдЬрд╝рдорд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ?

рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдПрдХ рд╢реЙрдЯ рджреЗрдВред рдпрд╣ рдЖрдкрдХреЗ рдкрд╛рд╕ рдореМрдЬреВрдж рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИ (рдЖрдк рд╕реАрдПрдордХреЗ рдХреЛ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рд╕рдВрднрд╛рд▓рдиреЗ рджреЗрддреЗ рд╣реИрдВ)ред рд╕рд╛рде рд╣реА, рдЖрдк рдЕрдиреНрдп рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдЙрд╕реА рдПрдХреАрдХреГрдд рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

  1. рдЕрдкрдирд╛ рд░реВрдЯ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ CMakeLists.txt рдФрд░ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐ рдЬреЛрдбрд╝реЗрдВ:
    add_subdirectory(extern)
  2. рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдЯ рдлреЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА extern рдмрдирд╛рдПрдВред
  3. рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ extern/CMakeLists.txt рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ:
cmake_minimum_required(VERSION 3.11 FATAL_ERROR)
# Multi-Language Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator based on
# the official specs. http://glad.dav1d.de/
FetchContent_Declare(
  extern_glad

  GIT_REPOSITORY https://github.com/Dav1dde/glad.git
  GIT_TAG        v0.1.27)

FetchContent_GetProperties(extern_glad)
if(NOT extern_glad_POPULATED)
  FetchContent_Populate(extern_glad)

  set(GLAD_INSTALL ON)
  add_subdirectory(
    ${extern_glad_SOURCE_DIR}
    ${extern_glad_BINARY_DIR}
    EXCLUDE_FROM_ALL)
endif()
  1. рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рдЕрдкрдиреЗ CMakeLists.txt s рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХреЗ рдЕрдВрджрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ glad рдЬреЛрдбрд╝реЗрдВ:
target_link_libraries(the_target_you_want_to_link_agains_glad
  PUBLIC
  glad

  PRIVATE
  ${CMAKE_DL_LIBS})

рдЙрдореНрдореАрдж рд╣реИ рдХреА рдпрд╣ рдорджрдж рдХрд░реЗрдЧрд╛ред

рд╕рднреА 7 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╡реНрдпрд╛рдкрдХ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж - рдореБрдЭреЗ рдЗрд╕ рдкрд░ рдЧреМрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

@sfuller рд╢рд╛рдпрдж рдЖрдк рдЗрд╕реЗ рджреЗрдЦрдиреЗ рдореЗрдВ рдореЗрд░реА рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рддреБрд░рдВрдд рдЬрд╡рд╛рдм рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЕрдм рд╕рдорд╛рдзрд╛рди рдХреЗ рдХрд░реАрдм рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣реИрдкреНрдкреА рд╕реЗрдореЗрдХ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдкрд░ msbuild рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдореБрдЭреЗ cmake --build . --install рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реА рд╕реАрдПрдордХреЗ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕рдмрдХреБрдЫ (рдЧреНрд▓реИрдб рдХреЙрдиреНрдлрд┐рдЧ рдФрд░ рдЧреНрд▓реИрдб рдЯрд╛рд░реНрдЧреЗрдЯреНрд╕) рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдореИрдВ рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрднреА рднреА рдпрд╣ рдЬрд╛рдирдиреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реЛрдЧреА рдХрд┐ рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЛ рднреА рдЗрд╕реА рддрд░рд╣ рдХреЗ рд╕реЗрдЯрдЕрдк рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдлрд▓рддрд╛ рдорд┐рд▓реА рд╣реИред

рдХреНрдпрд╛ рдЖрдкрдиреЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛? рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдЗрд╕ рд╕рдордп рд╡реНрдпрд╕реНрдд рд╣реИрдВ, рдореИрдВ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдкрд░ рдлрд┐рд░ рд╕реЗ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдБрдЧрд╛ред

рдХреЛрдИ рджрд┐рдХреНрдХрдд рдирд╣реАрдВ рд╣реИред рд╣рдордиреЗ рдЗрд╕реЗ рдПрдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЯреНрд░реИрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛, рдФрд░ рд╣рдореЗрдВ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдкрд░ рдЖрдЧреЗ рдмрдврд╝рдирд╛ рдкрдбрд╝рд╛ред рддреЛ рдЕрднреА рдХреЗ рд▓рд┐рдП рд╣рдо рдХреЗрд╡рд▓ рдкреВрд░реНрд╡-рдирд┐рд░реНрдорд┐рдд .h/.c рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕реАрдзреЗ рд╣рдорд╛рд░реЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рдмрдЬрд╛рдп рд╣реИрдкреНрдкреА рдХреЗ рд╕реАрдПрдордХреЗ рддрдВрддреНрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдиреЗ рдХреЗред рдЕрдЧрд░ рд╣рдо рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдЖрддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рджреВрдВрдЧрд╛ред

рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рд╕реЗ рдзрдиреНрдпрд╡рд╛рджред

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░ред

@tysonbrochu , рдХреНрдпрд╛ рдЖрдкрдиреЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХреНрд▓реЛрдирд┐рдВрдЧ рдХреЗ рдмрдЬрд╛рдп FetchContent рдореЙрдбреНрдпреВрд▓ рдЖрдЬрд╝рдорд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ?

рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдПрдХ рд╢реЙрдЯ рджреЗрдВред рдпрд╣ рдЖрдкрдХреЗ рдкрд╛рд╕ рдореМрдЬреВрдж рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИ (рдЖрдк рд╕реАрдПрдордХреЗ рдХреЛ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рд╕рдВрднрд╛рд▓рдиреЗ рджреЗрддреЗ рд╣реИрдВ)ред рд╕рд╛рде рд╣реА, рдЖрдк рдЕрдиреНрдп рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдЙрд╕реА рдПрдХреАрдХреГрдд рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

  1. рдЕрдкрдирд╛ рд░реВрдЯ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ CMakeLists.txt рдФрд░ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐ рдЬреЛрдбрд╝реЗрдВ:
    add_subdirectory(extern)
  2. рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдЯ рдлреЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА extern рдмрдирд╛рдПрдВред
  3. рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ extern/CMakeLists.txt рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ:
cmake_minimum_required(VERSION 3.11 FATAL_ERROR)
# Multi-Language Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator based on
# the official specs. http://glad.dav1d.de/
FetchContent_Declare(
  extern_glad

  GIT_REPOSITORY https://github.com/Dav1dde/glad.git
  GIT_TAG        v0.1.27)

FetchContent_GetProperties(extern_glad)
if(NOT extern_glad_POPULATED)
  FetchContent_Populate(extern_glad)

  set(GLAD_INSTALL ON)
  add_subdirectory(
    ${extern_glad_SOURCE_DIR}
    ${extern_glad_BINARY_DIR}
    EXCLUDE_FROM_ALL)
endif()
  1. рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рдЕрдкрдиреЗ CMakeLists.txt s рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХреЗ рдЕрдВрджрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ glad рдЬреЛрдбрд╝реЗрдВ:
target_link_libraries(the_target_you_want_to_link_agains_glad
  PUBLIC
  glad

  PRIVATE
  ${CMAKE_DL_LIBS})

рдЙрдореНрдореАрдж рд╣реИ рдХреА рдпрд╣ рдорджрдж рдХрд░реЗрдЧрд╛ред

рдирдорд╕реНрддреЗ, рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореБрдЭреЗ рдЗрд╕ рдмрд╛рддрдЪреАрдд рдореЗрдВ рджреЗрд░ рд╣реЛ рд░рд╣реА рд╣реИред
рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ, рдЖрдк find_package(glad REQUIRED) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рддрдм рддрдХ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЬрдм рддрдХ рдЖрдкрдХреЗ рдкрд╛рд╕ GLAD рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢реЗрд╖ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЧреНрд▓реИрдб рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╕реАрдПрдордХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреИрдХреЗрдЬ рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп find_package(glad REQUIRED CONFIG) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ

рдзреНрдпрд╛рди рджреЗрдВ, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╣реИрдкреНрдкреА рдмрд┐рд▓реНрдб рдкрд░ cmake --build . --install рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рд╕рд╛рде рд╣реА, рдпрджрд┐ рд╕реАрдПрдордХреЗ рдЕрднреА рднреА рдЧреНрд▓реИрдб рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рдвреВрдВрдв рдкрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ -DCMAKE_PREFIX_PATH рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реАрдПрдордХреЗ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдЙрд╕ рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП find_package рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рджреЗрдЦреЗрдВ: https://cmake.org/cmake/help/v3.12/command/find_package.html

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╣рд▓ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдЕрдЧрд░ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рди рдХрд░реЗрдВред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

p-groarke picture p-groarke  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mesbahamin picture mesbahamin  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Develon5543 picture Develon5543  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Algorithmus picture Algorithmus  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

tombsar picture tombsar  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ