OLD | NEW |
1 #!/bin/bash -e | 1 #!/bin/bash -e |
2 # | 2 # |
3 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 # This script is used to generate .gypi files needed to build libvpx. | 7 # This script is used to generate .gypi files needed to build libvpx. |
8 # Every time libvpx source code is updated just run this script. | 8 # Every time libvpx source code is updated just run this script. |
9 # | 9 # |
10 # For example: | 10 # For example: |
11 # $ ./generate_gypi.sh | 11 # $ ./generate_gypi.sh |
12 # | 12 # |
13 # And this will update all the .gypi files needed. | 13 # And this will update all the .gypi files needed. |
14 # However changes to asm_*_offsets.asm, vpx_config.asm and | 14 # However changes to asm_*_offsets.asm, vpx_config.asm and |
15 # vpx_config.h are not updated and needs to modified manually | 15 # vpx_config.h are not updated and needs to modified manually |
16 # for all platforms. | 16 # for all platforms. |
17 | 17 |
18 LIBVPX_SRC_DIR="source/libvpx" | 18 LIBVPX_SRC_DIR="source/libvpx" |
19 COMMON_CONFIG="CONFIG_REALTIME_ONLY=yes CONFIG_GCC=yes" | 19 COMMON_CONFIG="CONFIG_REALTIME_ONLY=yes CONFIG_GCC=yes CONFIG_PIC=yes" |
20 X86_CONFIG="ARCH_X86=yes HAVE_MMX=yes HAVE_SSE2=yes HAVE_SSE3=yes HAVE_SSSE3=yes
HAVE_SSE4_1=yes CONFIG_RUNTIME_CPU_DETECT=yes" | 20 X86_CONFIG="ARCH_X86=yes HAVE_MMX=yes HAVE_SSE2=yes HAVE_SSE3=yes HAVE_SSSE3=yes
HAVE_SSE4_1=yes CONFIG_RUNTIME_CPU_DETECT=yes" |
21 X86_64_CONFIG="ARCH_X86_64=yes HAVE_MMX=yes HAVE_SSE2=yes HAVE_SSE3=yes HAVE_SSS
E3=yes HAVE_SSE4_1=yes CONFIG_PIC=yes CONFIG_RUNTIME_CPU_DETECT=yes" | 21 X86_64_CONFIG="ARCH_X86_64=yes HAVE_MMX=yes HAVE_SSE2=yes HAVE_SSE3=yes HAVE_SSS
E3=yes HAVE_SSE4_1=yes CONFIG_RUNTIME_CPU_DETECT=yes" |
22 ARM_CONFIG="ARCH_ARM=yes HAVE_ARMV5TE=yes HAVE_ARMV6=yes" | 22 ARM_CONFIG="ARCH_ARM=yes HAVE_ARMV5TE=yes HAVE_ARMV6=yes" |
23 ARM_NEON_CONFIG="ARCH_ARM=yes HAVE_ARMV5TE=yes HAVE_ARMV6=yes HAVE_ARMV7=yes" | 23 ARM_NEON_CONFIG="ARCH_ARM=yes HAVE_ARMV5TE=yes HAVE_ARMV6=yes HAVE_ARMV7=yes" |
24 | 24 |
25 function convert_srcs_to_gypi { | 25 function convert_srcs_to_gypi { |
26 # Do the following here: | 26 # Do the following here: |
27 # 1. Filter .c, .h, .s, .S and .asm files. | 27 # 1. Filter .c, .h, .s, .S and .asm files. |
28 # 2. Exclude *_offsets.c. | 28 # 2. Exclude *_offsets.c. |
29 # 3. Exclude vpx_config.c. | 29 # 3. Exclude vpx_config.c. |
30 # 4. Repelace .asm.s to .asm because gyp will do the conversion. | 30 # 4. Repelace .asm.s to .asm because gyp will do the conversion. |
31 source_list=`grep -E '(\.c|\.h|\.S|\.s|\.asm)$' $1 | grep -v '_offsets\.c' | g
rep -v 'vpx_config\.c' | sed s/\.asm\.s$/.asm/` | 31 source_list=`grep -E '(\.c|\.h|\.S|\.s|\.asm)$' $1 | grep -v '_offsets\.c' | g
rep -v 'vpx_config\.c' | sed s/\.asm\.s$/.asm/` |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 | 76 |
77 echo "Generate ARM NEON source list." | 77 echo "Generate ARM NEON source list." |
78 make clean > /dev/null | 78 make clean > /dev/null |
79 rm -f libvpx_srcs.txt | 79 rm -f libvpx_srcs.txt |
80 make libvpx_srcs.txt target=libs $COMMON_CONFIG $ARM_NEON_CONFIG > /dev/null | 80 make libvpx_srcs.txt target=libs $COMMON_CONFIG $ARM_NEON_CONFIG > /dev/null |
81 convert_srcs_to_gypi libvpx_srcs.txt ../../libvpx_srcs_arm_neon.gypi | 81 convert_srcs_to_gypi libvpx_srcs.txt ../../libvpx_srcs_arm_neon.gypi |
82 | 82 |
83 echo "Remove temporary directory." | 83 echo "Remove temporary directory." |
84 cd $BASE_DIR | 84 cd $BASE_DIR |
85 rm -rf $TEMP_DIR | 85 rm -rf $TEMP_DIR |
OLD | NEW |