mirror of
https://github.com/Cateners/tiny_computer.git
synced 2026-05-20 16:35:47 +08:00
92 lines
3.2 KiB
CMake
92 lines
3.2 KiB
CMake
file(GENERATE
|
|
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/pixman-config.h"
|
|
CONTENT "")
|
|
file(GENERATE
|
|
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/pixman-version.h"
|
|
CONTENT "
|
|
#pragma once
|
|
#ifndef PIXMAN_H__
|
|
# error pixman-version.h should only be included by pixman.h
|
|
#endif
|
|
|
|
#define PIXMAN_VERSION_MAJOR 0
|
|
#define PIXMAN_VERSION_MINOR 43
|
|
#define PIXMAN_VERSION_MICRO 4
|
|
|
|
#define PIXMAN_VERSION_STRING \"0.43.4\"
|
|
#define PIXMAN_VERSION 4304
|
|
|
|
#ifndef PIXMAN_API
|
|
# define PIXMAN_API
|
|
#endif
|
|
")
|
|
check_type_size("long" SIZEOF_LONG)
|
|
|
|
set(PIXMAN_SRC
|
|
pixman/pixman/pixman.c
|
|
pixman/pixman/pixman-access.c
|
|
pixman/pixman/pixman-access-accessors.c
|
|
pixman/pixman/pixman-bits-image.c
|
|
pixman/pixman/pixman-combine32.c
|
|
pixman/pixman/pixman-combine-float.c
|
|
pixman/pixman/pixman-conical-gradient.c
|
|
pixman/pixman/pixman-filter.c
|
|
pixman/pixman/pixman-x86.c
|
|
pixman/pixman/pixman-mips.c
|
|
pixman/pixman/pixman-arm.c
|
|
pixman/pixman/pixman-ppc.c
|
|
pixman/pixman/pixman-edge.c
|
|
pixman/pixman/pixman-edge-accessors.c
|
|
pixman/pixman/pixman-fast-path.c
|
|
pixman/pixman/pixman-glyph.c
|
|
pixman/pixman/pixman-general.c
|
|
pixman/pixman/pixman-gradient-walker.c
|
|
pixman/pixman/pixman-image.c
|
|
pixman/pixman/pixman-implementation.c
|
|
pixman/pixman/pixman-linear-gradient.c
|
|
pixman/pixman/pixman-matrix.c
|
|
pixman/pixman/pixman-noop.c
|
|
pixman/pixman/pixman-radial-gradient.c
|
|
pixman/pixman/pixman-region16.c
|
|
pixman/pixman/pixman-region32.c
|
|
pixman/pixman/pixman-solid-fill.c
|
|
pixman/pixman/pixman-timer.c
|
|
pixman/pixman/pixman-trap.c
|
|
pixman/pixman/pixman-utils.c)
|
|
|
|
set(PIXMAN_CFLAGS
|
|
"-DHAVE_BUILTIN_CLZ=1"
|
|
"-DHAVE_PTHREADS=1"
|
|
"-DPACKAGE=\"pixman\""
|
|
"-DTLS=__thread"
|
|
"-DSIZEOF_LONG=${SIZEOF_LONG}"
|
|
"-DUSE_OPENMP=1"
|
|
"-Wno-unknown-attributes")
|
|
|
|
if("${CMAKE_ANDROID_ARCH_ABI}" STREQUAL "arm64-v8a")
|
|
set(PIXMAN_SRC ${PIXMAN_SRC}
|
|
"pixman/pixman/pixman-arm-neon.c"
|
|
"pixman/pixman/pixman-arma64-neon-asm.S"
|
|
"pixman/pixman/pixman-arma64-neon-asm-bilinear.S")
|
|
set(PIXMAN_CFLAGS ${PIXMAN_CFLAGS} "-DUSE_ARM_A64_NEON=1")
|
|
endif()
|
|
|
|
if("${CMAKE_ANDROID_ARCH_ABI}" STREQUAL "armeabi-v7a")
|
|
set(PIXMAN_SRC ${PIXMAN_SRC}
|
|
"pixman/pixman/pixman-arm-neon.c"
|
|
"pixman/pixman/pixman-arm-neon-asm.S"
|
|
"pixman/pixman/pixman-arm-neon-asm-bilinear.S"
|
|
"pixman/pixman/pixman-arm-simd-asm.S"
|
|
"pixman/pixman/pixman-arm-simd-asm-scaled.S")
|
|
set(PIXMAN_CFLAGS ${PIXMAN_CFLAGS} "-DUSE_ARM_SIMD=1" "-DUSE_ARM_NEON=1" "-v")
|
|
endif()
|
|
|
|
if ("${CMAKE_ANDROID_ARCH_ABI}" STREQUAL "x86" OR "${CMAKE_ANDROID_ARCH_ABI}" STREQUAL "x86_64")
|
|
set(PIXMAN_CFLAGS ${PIXMAN_CFLAGS} "-msse2" "-Winline" "-mssse3" "-Winline")
|
|
endif()
|
|
|
|
add_library(pixman STATIC ${PIXMAN_SRC})
|
|
target_compile_options(pixman PRIVATE ${PIXMAN_CFLAGS})
|
|
target_include_directories(pixman PRIVATE pixman "${CMAKE_CURRENT_BINARY_DIR}")
|
|
target_apply_patch(pixman "${CMAKE_CURRENT_SOURCE_DIR}/pixman" "${CMAKE_CURRENT_SOURCE_DIR}/patches/pixman.patch")
|