11diff -urN ../x265_2.0.pic/source/CMakeLists.txt ./source/CMakeLists.txt
22--- ../x265_2.0.pic/source/CMakeLists.txt 2016-07-30 08:57:07.632539944 +0200
33+++ ./source/CMakeLists.txt 2016-08-08 12:12:39.539380667 +0200
4- @@ -168 ,7 +168 ,7 @@
4+ @@ -229 ,7 +229 ,7 @@
55 add_definitions(-D__STDC_LIMIT_MACROS=1)
66 add_definitions(-std=gnu++98)
77 if(ENABLE_PIC)
@@ -10,28 +10,48 @@ diff -urN ../x265_2.0.pic/source/CMakeLists.txt ./source/CMakeLists.txt
1010 endif(ENABLE_PIC)
1111 if(NATIVE_BUILD)
1212 if(INTEL_CXX)
13- @@ -240,19 +240,19 @@ if(GCC)
13+ @@ -249,11 +249,11 @@
1414 endif()
1515 if(ARM AND CROSS_COMPILE_ARM)
16- if(ARM64)
17- - set(ARM_ARGS -fPIC)
18- + set(ARM_ARGS -fPIE)
19- else()
20- - set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIC)
21- + set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIE)
22- endif()
2316 message(STATUS "cross compile arm")
17+ - set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIC)
18+ + set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIE)
2419 elseif(ARM)
25- if(ARM64)
26- - set(ARM_ARGS -fPIC)
27- + set(ARM_ARGS -fPIE)
20+ find_package(Neon)
21+ if(CPU_HAS_NEON)
22+ - set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIC)
23+ + set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIE)
24+ add_definitions(-DHAVE_NEON)
25+ else()
26+ set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm)
27+ @@ -265,25 +265,25 @@
28+ find_package(SVE2)
29+ if(CPU_HAS_SVE2 OR CROSS_COMPILE_SVE2)
30+ message(STATUS "Found SVE2")
31+ - set(ARM_ARGS -O3 -march=armv8-a+sve2 -fPIC -flax-vector-conversions)
32+ + set(ARM_ARGS -O3 -march=armv8-a+sve2 -fPIE -flax-vector-conversions)
33+ add_definitions(-DHAVE_SVE2)
34+ add_definitions(-DHAVE_SVE)
35+ add_definitions(-DHAVE_NEON) # for NEON c/c++ primitives, as currently there is no implementation that use SVE2
36+ elseif(CPU_HAS_SVE OR CROSS_COMPILE_SVE)
37+ message(STATUS "Found SVE")
38+ - set(ARM_ARGS -O3 -march=armv8-a+sve -fPIC -flax-vector-conversions)
39+ + set(ARM_ARGS -O3 -march=armv8-a+sve -fPIE -flax-vector-conversions)
40+ add_definitions(-DHAVE_SVE)
41+ add_definitions(-DHAVE_NEON) # for NEON c/c++ primitives, as currently there is no implementation that use SVE
42+ elseif(CPU_HAS_NEON)
43+ message(STATUS "Found NEON")
44+ - set(ARM_ARGS -fPIC -flax-vector-conversions)
45+ + set(ARM_ARGS -fPIE -flax-vector-conversions)
2846 add_definitions(-DHAVE_NEON)
2947 else()
30- find_package(Neon)
31- if(CPU_HAS_NEON)
32- - set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIC)
33- + set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIE)
34- add_definitions(-DHAVE_NEON)
35- else()
36- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm)
37- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm)
48+ - set(ARM_ARGS -fPIC -flax-vector-conversions)
49+ + set(ARM_ARGS -fPIE -flax-vector-conversions)
50+ endif()
51+ endif()
52+ if(ENABLE_PIC)
53+ - list(APPEND ARM_ARGS -DPIC)
54+ + list(APPEND ARM_ARGS -DPIE)
55+ endif()
56+ add_definitions(${ARM_ARGS})
57+ if(FPROFILE_GENERATE)
0 commit comments