mirror of
https://github.com/Ryujinx/SDL.git
synced 2024-12-24 17:45:30 +00:00
0e45984fa0
The internal function SDL_EGL_LoadLibrary() did not delete and remove a mostly uninitialized data structure if loading the library first failed. A later try to use EGL then skipped initialization and assumed it was previously successful because the data structure now already existed. This led to at least one crash in the internal function SDL_EGL_ChooseConfig() because a NULL pointer was dereferenced to make a call to eglBindAPI().
64 lines
2.1 KiB
Makefile
64 lines
2.1 KiB
Makefile
# Copyright (c) 2013 The Chromium Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
# GNU Makefile based on shared rules provided by the Native Client SDK.
|
|
# See README.Makefiles for more details.
|
|
|
|
VALID_TOOLCHAINS := pnacl
|
|
|
|
# NACL_SDK_ROOT ?= $(abspath $(CURDIR)/../../..)
|
|
include $(NACL_SDK_ROOT)/tools/common.mk
|
|
|
|
|
|
TARGET = sdl_app
|
|
DEPS = ppapi_simple nacl_io
|
|
# ppapi_simple and SDL2 end up being listed twice due to dependency solving issues -- Gabriel
|
|
LIBS = SDL2_test SDL2 ppapi_simple SDL2main SDL2 $(DEPS) ppapi_gles2 ppapi_cpp ppapi pthread
|
|
|
|
CFLAGS := -Wall
|
|
SOURCES ?= testgles2.c
|
|
|
|
# Build rules generated by macros from common.mk:
|
|
# Overriden macro from NACL SDK to be able to customize the library search path -- Gabriel
|
|
# Specific Link Macro
|
|
#
|
|
# $1 = Target Name
|
|
# $2 = List of inputs
|
|
# $3 = List of libs
|
|
# $4 = List of deps
|
|
# $5 = List of lib dirs
|
|
# $6 = Other Linker Args
|
|
#
|
|
# For debugging, we translate the pre-finalized .bc file.
|
|
#
|
|
define LINKER_RULE
|
|
all: $(1).pexe
|
|
$(1)_x86_32.nexe : $(1).bc
|
|
$(call LOG,TRANSLATE,$$@,$(PNACL_TRANSLATE) --allow-llvm-bitcode-input -arch x86-32 $$^ -o $$@)
|
|
|
|
$(1)_x86_64.nexe : $(1).bc
|
|
$(call LOG,TRANSLATE,$$@,$(PNACL_TRANSLATE) --allow-llvm-bitcode-input -arch x86-64 $$^ -o $$@)
|
|
|
|
$(1)_arm.nexe : $(1).bc
|
|
$(call LOG,TRANSLATE,$$@,$(PNACL_TRANSLATE) --allow-llvm-bitcode-input -arch arm $$^ -o $$@)
|
|
|
|
$(1).pexe: $(1).bc
|
|
$(call LOG,FINALIZE,$$@,$(PNACL_FINALIZE) -o $$@ $$^)
|
|
|
|
$(1).bc: $(2) $(foreach dep,$(4),$(STAMPDIR)/$(dep).stamp)
|
|
$(call LOG,LINK,$$@,$(PNACL_LINK) -o $$@ $(2) $(PNACL_LDFLAGS) $(foreach path,$(5),-L$(path)/pnacl/$(CONFIG)) -L./lib $(foreach lib,$(3),-l$(lib)) $(6))
|
|
endef
|
|
|
|
$(foreach dep,$(DEPS),$(eval $(call DEPEND_RULE,$(dep))))
|
|
$(foreach src,$(SOURCES),$(eval $(call COMPILE_RULE,$(src),$(CFLAGS))))
|
|
|
|
ifeq ($(CONFIG),Release)
|
|
$(eval $(call LINK_RULE,$(TARGET)_unstripped,$(SOURCES),$(LIBS),$(DEPS)))
|
|
$(eval $(call STRIP_RULE,$(TARGET),$(TARGET)_unstripped))
|
|
else
|
|
$(eval $(call LINK_RULE,$(TARGET),$(SOURCES),$(LIBS),$(DEPS)))
|
|
endif
|
|
|
|
$(eval $(call NMF_RULE,$(TARGET),))
|