summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Gernoth <michael@gernoth.net>2014-11-11 13:16:39 +0100
committerZiyan <jaraidaniel@gmail.com>2014-12-13 00:39:22 +0100
commitd72ea2436a11a455d5494f3c2bdcabe9b0832f8c (patch)
tree6405f2a185fdab39b256a8ab5e1141d15fa37d81
parentb578d44123096aa41a6e6d328d416fdcc9ac5d01 (diff)
downloaddevice_samsung_tuna-d72ea2436a11a455d5494f3c2bdcabe9b0832f8c.zip
device_samsung_tuna-d72ea2436a11a455d5494f3c2bdcabe9b0832f8c.tar.gz
device_samsung_tuna-d72ea2436a11a455d5494f3c2bdcabe9b0832f8c.tar.bz2
libcorkscrew: add stub-implementation to make gralloc happy
Change-Id: I4ed573bcac7e8d7b14292b928ddb9c018b70bae3
-rwxr-xr-xdevice.mk4
-rw-r--r--libcorkscrew/Android.mk11
-rw-r--r--libcorkscrew/corkscrew.c61
-rw-r--r--libcorkscrew/corkscrew.h56
4 files changed, 132 insertions, 0 deletions
diff --git a/device.mk b/device.mk
index 4969058..5c11332 100755
--- a/device.mk
+++ b/device.mk
@@ -216,6 +216,10 @@ PRODUCT_PACKAGES += \
libion_ti \
pvrsrvinit
+# Needed for gralloc
+PRODUCT_PACKAGES += \
+ libcorkscrew
+
$(call inherit-product, frameworks/native/build/phone-xhdpi-1024-dalvik-heap.mk)
$(call inherit-product, hardware/ti/omap4xxx/omap4.mk)
diff --git a/libcorkscrew/Android.mk b/libcorkscrew/Android.mk
new file mode 100644
index 0000000..d566c3b
--- /dev/null
+++ b/libcorkscrew/Android.mk
@@ -0,0 +1,11 @@
+LOCAL_PATH := $(call my-dir)
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := corkscrew.c
+LOCAL_SHARED_LIBRARIES:= libc
+LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/
+LOCAL_MODULE := libcorkscrew
+LOCAL_MODULE_TAGS := optional
+
+include $(BUILD_SHARED_LIBRARY)
diff --git a/libcorkscrew/corkscrew.c b/libcorkscrew/corkscrew.c
new file mode 100644
index 0000000..d378326
--- /dev/null
+++ b/libcorkscrew/corkscrew.c
@@ -0,0 +1,61 @@
+/*
+ * Copyright (c) 2014 The CyanogenMod 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.
+ */
+
+/* Stubs for blobs depending on libcorkscrew */
+
+#include <sys/types.h>
+#include <inttypes.h>
+
+#include "corkscrew.h"
+
+ssize_t unwind_backtrace(void* backtrace, size_t ignore_depth, size_t max_depth)
+{
+ return -1;
+}
+
+ssize_t unwind_backtrace_thread(pid_t tid, void* backtrace,
+ size_t ignore_depth, size_t max_depth)
+{
+ return -1;
+}
+
+ssize_t unwind_backtrace_ptrace(pid_t tid, const void* context,
+ void* backtrace, size_t ignore_depth, size_t max_depth)
+{
+ return -1;
+}
+
+void get_backtrace_symbols(const void* backtrace, size_t frames,
+ void* backtrace_symbols)
+{
+}
+
+void get_backtrace_symbols_ptrace(const void* context,
+ const void* backtrace, size_t frames,
+ void* backtrace_symbols)
+{
+}
+
+void free_backtrace_symbols(void* backtrace_symbols, size_t frames)
+{
+}
+
+void format_backtrace_line(unsigned frameNumber, const void* frame,
+ const void* symbol, char* buffer, size_t bufferSize)
+{
+ if (bufferSize > 0)
+ buffer[0] = 0x00;
+}
diff --git a/libcorkscrew/corkscrew.h b/libcorkscrew/corkscrew.h
new file mode 100644
index 0000000..62cad20
--- /dev/null
+++ b/libcorkscrew/corkscrew.h
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2014 The CyanogenMod 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.
+ */
+
+/*
+ * Returns -1
+ */
+ssize_t unwind_backtrace(void* backtrace, size_t ignore_depth, size_t max_depth);
+
+/*
+ * Returns -1
+ */
+ssize_t unwind_backtrace_thread(pid_t tid, void* backtrace,
+ size_t ignore_depth, size_t max_depth);
+
+/*
+ * Returns -1
+ */
+ssize_t unwind_backtrace_ptrace(pid_t tid, const void* context,
+ void* backtrace, size_t ignore_depth, size_t max_depth);
+
+/*
+ * Does nothing
+ */
+void get_backtrace_symbols(const void* backtrace, size_t frames,
+ void* backtrace_symbols);
+
+/*
+ * Does nothing
+ */
+void get_backtrace_symbols_ptrace(const void* context,
+ const void* backtrace, size_t frames,
+ void* backtrace_symbols);
+
+/*
+ * Does nothing
+ */
+void free_backtrace_symbols(void* backtrace_symbols, size_t frames);
+
+/**
+ * Writes 0 to first byte of buffer, if buffer > 0 bytes long
+ */
+void format_backtrace_line(unsigned frameNumber, const void* frame,
+ const void* symbol, char* buffer, size_t bufferSize);