Skip to content

Commit c79e079

Browse files
committed
Merge branch 'master' into for-0.56.0/sync
2 parents 4e851be + 96f0611 commit c79e079

File tree

4 files changed

+26
-8
lines changed

4 files changed

+26
-8
lines changed

cmake/DaemonFlags.cmake

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ macro(try_linker_flag PROP FLAG)
147147
check_C_compiler_flag(${FLAG} FLAG_${PROP})
148148
set(CMAKE_REQUIRED_FLAGS "")
149149
if (FLAG_${PROP})
150-
set_exe_linker_flag(${FLAG} ${ARGN})
150+
set_linker_flag(${FLAG} ${ARGN})
151151
endif()
152152
endmacro()
153153

@@ -158,7 +158,7 @@ macro(try_exe_linker_flag PROP FLAG)
158158
set(CMAKE_REQUIRED_FLAGS "")
159159

160160
if (FLAG_${PROP})
161-
set_linker_flag(${FLAG} ${ARGN})
161+
set_exe_linker_flag(${FLAG} ${ARGN})
162162
endif()
163163
endmacro()
164164

@@ -395,11 +395,13 @@ else()
395395
try_c_cxx_flag(WSTACK_PROTECTOR "-Wstack-protector")
396396

397397
if (NOT NACL OR (NACL AND GAME_PIE))
398-
try_c_cxx_flag(FPIE "-fPIC")
398+
try_c_cxx_flag(FPIC "-fPIC")
399399

400+
# The -pie flag requires -fPIC:
401+
# > ld: error: relocation R_X86_64_64 cannot be used against local symbol; recompile with -fPIC
400402
# This flag isn't used on macOS:
401403
# > clang: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument]
402-
if (NOT APPLE)
404+
if (FLAG_FPIC AND NOT APPLE)
403405
try_exe_linker_flag(LINKER_PIE "-pie")
404406
endif()
405407
endif()

src/engine/client/cl_keys.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -511,7 +511,7 @@ static bool DetectBuiltInShortcut( Keyboard::Key key )
511511
if ( key == Key::FromCharacter('f') )
512512
{
513513
Key_ClearStates();
514-
Cmd::BufferCommandText("toggle r_fullscreen; vid_restart");
514+
r_fullscreen.Set( !r_fullscreen.Get() );
515515
return true;
516516
}
517517
else if ( key == Key::FromCharacter('q') )

src/engine/renderer/glsl_source/fogQuake3_vp.glsl

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
2828

2929
uniform float u_Time;
3030

31-
uniform vec4 u_ColorModulate;
3231
uniform uint u_ColorGlobal;
3332
uniform mat4 u_ModelMatrix;
3433
uniform mat4 u_ModelViewProjectionMatrix;
@@ -58,7 +57,7 @@ void main()
5857

5958
VertexFetch( position, LB, color, texCoord, lmCoord );
6059

61-
color = /* color * u_ColorModulate + */ unpackUnorm4x8( u_ColorGlobal );
60+
color = unpackUnorm4x8( u_ColorGlobal );
6261

6362
DeformVertex( position,
6463
LB.normal,

src/engine/sys/sdl_glimp.cpp

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,10 @@ static Cvar::Cvar<bool> workaround_glExtension_missingArbFbo_useExtFbo(
175175
"workaround.glExtension.missingArbFbo.useExtFbo",
176176
"Use EXT_framebuffer_object and EXT_framebuffer_blit when ARB_framebuffer_object is not available",
177177
Cvar::NONE, true );
178+
static Cvar::Cvar<bool> workaround_glExtension_glsl120_disableShaderDrawParameters(
179+
"workaround.glExtension.glsl120.disableShaderDrawParameters",
180+
"Disable ARB_shader_draw_parameters on GLSL 1.20",
181+
Cvar::NONE, true );
178182
static Cvar::Cvar<bool> workaround_glHardware_intel_useFirstProvokinVertex(
179183
"workaround.glHardware.intel.useFirstProvokinVertex",
180184
"Use first provoking vertex on Intel hardware supporting ARB_provoking_vertex",
@@ -2523,7 +2527,19 @@ static void GLimp_InitExtensions()
25232527
}
25242528

25252529
// made required in OpenGL 4.6
2526-
glConfig2.shaderDrawParametersAvailable = LOAD_EXTENSION_WITH_TEST( ExtFlag_NONE, ARB_shader_draw_parameters, r_arb_shader_draw_parameters.Get() );
2530+
2531+
bool ShaderDrawParametersEnabled = r_arb_shader_draw_parameters.Get();
2532+
2533+
if ( ShaderDrawParametersEnabled
2534+
&& GL_ARB_shader_draw_parameters
2535+
&& glConfig2.shadingLanguageVersion <= 120
2536+
&& workaround_glExtension_glsl120_disableShaderDrawParameters.Get() )
2537+
{
2538+
logger.Warn( "Found ARB_shader_draw_parameters with incompatible GLSL 1.20, disabling ARB_shader_draw_parameters." );
2539+
ShaderDrawParametersEnabled = false;
2540+
}
2541+
2542+
glConfig2.shaderDrawParametersAvailable = LOAD_EXTENSION_WITH_TEST( ExtFlag_NONE, ARB_shader_draw_parameters, ShaderDrawParametersEnabled );
25272543

25282544
// made required in OpenGL 4.3
25292545
glConfig2.SSBOAvailable = LOAD_EXTENSION_WITH_TEST( ExtFlag_NONE, ARB_shader_storage_buffer_object, r_arb_shader_storage_buffer_object.Get() );
@@ -2668,6 +2684,7 @@ bool GLimp_Init()
26682684
Cvar::Latch( workaround_glDriver_mesa_v241_disableBindlessTexture );
26692685
Cvar::Latch( workaround_glDriver_nvidia_v340_disableTextureGather );
26702686
Cvar::Latch( workaround_glExtension_missingArbFbo_useExtFbo );
2687+
Cvar::Latch( workaround_glExtension_glsl120_disableShaderDrawParameters );
26712688
Cvar::Latch( workaround_glHardware_intel_useFirstProvokinVertex );
26722689

26732690
/* Enable S3TC on Mesa even if libtxc-dxtn is not available

0 commit comments

Comments
 (0)