Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2b1f2dac authored by Dmitriy Ivanov's avatar Dmitriy Ivanov
Browse files

Link sigchain to surfaceflinger main executable

 And export necessary symbols to preempt calls from libart.so

Bug: 15345057
Bug: 15426766

(cherry picked from commit f3da24d8)

Change-Id: I03b632e0bf2cbaf4a0e68cd0af4e991f7f6b08e4
parent 91c395f6
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -108,17 +108,24 @@ include $(BUILD_SHARED_LIBRARY)
# build surfaceflinger's executable
include $(CLEAR_VARS)

LOCAL_CFLAGS:= -DLOG_TAG=\"SurfaceFlinger\"
LOCAL_LDFLAGS := -Wl,--version-script,art/sigchainlib/version-script.txt -Wl,--export-dynamic
LOCAL_CFLAGS:= -DLOG_TAG=\"SurfaceFlinger\" -Iart
LOCAL_CPPFLAGS:= -std=c++11

# TODO: Trying to link libsigchain as a static library prevents
# static linker from exporting necessary symbols. So as a workaround
# we use sigchain.o
LOCAL_SRC_FILES:= \
	main_surfaceflinger.cpp 
	main_surfaceflinger.cpp \
	sigchain_proxy.cpp

LOCAL_SHARED_LIBRARIES := \
	libsurfaceflinger \
	libcutils \
	liblog \
	libbinder \
	libutils
	libutils \
	libdl

LOCAL_MODULE:= surfaceflinger

+17 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2014 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#include "sigchainlib/sigchain.cc"