#!/bin/sh
+set -eu
-FUNCS=$(nm -D --defined-only ${1-.libs/libgbm.so} | grep -o "T .*" | cut -c 3- | while read func; do
+LIB=${1-.libs/libgbm.so}
+
+if ! [ -f "$LIB" ]
+then
+ exit 1
+fi
+
+FUNCS=$($NM -D --defined-only $LIB | grep -o "T .*" | cut -c 3- | while read func; do
( grep -q "^$func$" || echo $func ) <<EOF
gbm_device_get_fd
gbm_device_get_backend_name
gbm_device_is_format_supported
gbm_device_destroy
+gbm_device_get_format_modifier_plane_count
gbm_create_device
gbm_bo_create
+gbm_bo_create_with_modifiers
gbm_bo_import
gbm_bo_map
gbm_bo_unmap
gbm_bo_get_stride
gbm_bo_get_stride_for_plane
gbm_bo_get_format
+gbm_bo_get_bpp
gbm_bo_get_offset
gbm_bo_get_device
gbm_bo_get_handle
gbm_bo_get_fd
gbm_bo_get_plane_count
gbm_bo_get_handle_for_plane
+gbm_bo_get_modifier
gbm_bo_write
gbm_bo_set_user_data
gbm_bo_get_user_data
gbm_bo_destroy
+gbm_format_get_name
gbm_surface_create
-gbm_surface_needs_lock_front_buffer
+gbm_surface_create_with_modifiers
gbm_surface_lock_front_buffer
gbm_surface_release_buffer
gbm_surface_has_free_buffers