Home | History | Annotate | Download | only in build-android
      1 #!/bin/bash
      2 
      3 # Copyright 2015 The Android Open Source Project
      4 # Copyright (C) 2015 Valve Corporation
      5 
      6 # Licensed under the Apache License, Version 2.0 (the "License");
      7 # you may not use this file except in compliance with the License.
      8 # You may obtain a copy of the License at
      9 
     10 #      http://www.apache.org/licenses/LICENSE-2.0
     11 
     12 # Unless required by applicable law or agreed to in writing, software
     13 # distributed under the License is distributed on an "AS IS" BASIS,
     14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     15 # See the License for the specific language governing permissions and
     16 # limitations under the License.
     17 
     18 dir=$(cd -P -- "$(dirname -- "$0")" && pwd -P)
     19 cd $dir
     20 
     21 rm -rf generated
     22 mkdir -p generated/include generated/common
     23 HEADERS_REGISTRY_PATH="$1"
     24 echo HEADERS_REGISTRY_PATH defined as $HEADERS_REGISTRY_PATH
     25 
     26 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH vk_safe_struct.h )
     27 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH vk_safe_struct.cpp )
     28 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH vk_enum_string_helper.h )
     29 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH vk_object_types.h )
     30 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH vk_dispatch_table_helper.h )
     31 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH thread_safety.cpp )
     32 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH thread_safety.h )
     33 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH parameter_validation.cpp )
     34 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH parameter_validation.h )
     35 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH vk_layer_dispatch_table.h )
     36 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH vk_extension_helper.h )
     37 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH vk_typemap_helper.h )
     38 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH object_tracker.cpp )
     39 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH object_tracker.h )
     40 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH layer_chassis_dispatch.cpp )
     41 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH layer_chassis_dispatch.h )
     42 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH chassis.cpp )
     43 ( cd generated/include; python3 ../../../scripts/lvl_genvk.py -registry $HEADERS_REGISTRY_PATH/vk.xml -scripts $HEADERS_REGISTRY_PATH chassis.h )
     44 
     45 SPIRV_TOOLS_PATH=../../third_party/shaderc/third_party/spirv-tools
     46 SPIRV_TOOLS_UUID=spirv_tools_uuid.txt
     47 
     48 set -e
     49 
     50 ( cd generated/include;
     51 
     52   if [[ -d $SPIRV_TOOLS_PATH ]]; then
     53 
     54     echo Found spirv-tools, using git_dir for external_revision_generator.py
     55 
     56     python3 ../../../scripts/external_revision_generator.py \
     57       --git_dir $SPIRV_TOOLS_PATH \
     58       -s SPIRV_TOOLS_COMMIT_ID \
     59       -o spirv_tools_commit_id.h
     60 
     61   else
     62 
     63     echo No spirv-tools git_dir found, generating UUID for external_revision_generator.py
     64 
     65     # Ensure uuidgen is installed, this should error if not found
     66     type uuidgen
     67 
     68     uuidgen > $SPIRV_TOOLS_UUID;
     69     cat $SPIRV_TOOLS_UUID;
     70     python3 ../../../scripts/external_revision_generator.py \
     71       --rev_file $SPIRV_TOOLS_UUID \
     72       -s SPIRV_TOOLS_COMMIT_ID \
     73       -o spirv_tools_commit_id.h
     74 
     75   fi
     76 )
     77 
     78 
     79 exit 0
     80