1#!/usr/bin/env atf-sh 2 3. $(atf_get_srcdir)/test_env.sh 4 5tests_init \ 6 pcfiledir_symlink_absolute \ 7 pcfiledir_symlink_relative 8 9# - We need to create a temporary subtree, since symlinks are not preserved 10# in "make dist". 11# - ${srcdir} is relative and since we need to compare paths, we would have 12# to portably canonicalize it again, which is hard. Instead, just keep 13# the whole thing nested. 14pcfiledir_symlink_absolute_body() 15{ 16 mkdir -p tmp/child 17 cp -f "${selfdir}/lib1/pcfiledir.pc" tmp/child/ 18 ln -f -s "${PWD}/tmp/child/pcfiledir.pc" tmp/pcfiledir.pc # absolute 19 ln -f -s tmp/pcfiledir.pc pcfiledir.pc 20 21 atf_check \ 22 -o inline:"${PWD}/tmp/child\n" \ 23 pkgconf --variable=prefix pcfiledir.pc 24 atf_check \ 25 -o inline:"${PWD}/tmp/child\n" \ 26 pkgconf --variable=prefix tmp/pcfiledir.pc 27 atf_check \ 28 -o inline:"tmp/child\n" \ 29 pkgconf --variable=prefix tmp/child/pcfiledir.pc 30 31 atf_check \ 32 -o inline:"${PWD}/tmp/child\n" \ 33 pkgconf --variable=prefix "${PWD}/pcfiledir.pc" 34 atf_check \ 35 -o inline:"${PWD}/tmp/child\n" \ 36 pkgconf --variable=prefix "${PWD}/tmp/pcfiledir.pc" 37 atf_check \ 38 -o inline:"${PWD}/tmp/child\n" \ 39 pkgconf --variable=prefix "${PWD}/tmp/child/pcfiledir.pc" 40 41 export PKG_CONFIG_PATH="." 42 atf_check \ 43 -o inline:"${PWD}/tmp/child\n" \ 44 pkgconf --variable=prefix pcfiledir 45 export PKG_CONFIG_PATH="${PWD}" 46 atf_check \ 47 -o inline:"${PWD}/tmp/child\n" \ 48 pkgconf --variable=prefix pcfiledir 49 50 export PKG_CONFIG_PATH="tmp" 51 atf_check \ 52 -o inline:"${PWD}/tmp/child\n" \ 53 pkgconf --variable=prefix pcfiledir 54 export PKG_CONFIG_PATH="${PWD}/tmp" 55 atf_check \ 56 -o inline:"${PWD}/tmp/child\n" \ 57 pkgconf --variable=prefix pcfiledir 58 59 export PKG_CONFIG_PATH="tmp/child" 60 atf_check \ 61 -o inline:"tmp/child\n" \ 62 pkgconf --variable=prefix pcfiledir 63 export PKG_CONFIG_PATH="${PWD}/tmp/child" 64 atf_check \ 65 -o inline:"${PWD}/tmp/child\n" \ 66 pkgconf --variable=prefix pcfiledir 67} 68 69pcfiledir_symlink_relative_body() 70{ 71 mkdir -p tmp/child 72 cp -f "${selfdir}/lib1/pcfiledir.pc" tmp/child/ 73 ln -f -s child/pcfiledir.pc tmp/pcfiledir.pc # relative 74 ln -f -s tmp/pcfiledir.pc pcfiledir.pc 75 76 atf_check \ 77 -o inline:"tmp/child\n" \ 78 pkgconf --variable=prefix pcfiledir.pc 79 atf_check \ 80 -o inline:"tmp/child\n" \ 81 pkgconf --variable=prefix tmp/pcfiledir.pc 82 atf_check \ 83 -o inline:"tmp/child\n" \ 84 pkgconf --variable=prefix tmp/child/pcfiledir.pc 85 86 atf_check \ 87 -o inline:"${PWD}/tmp/child\n" \ 88 pkgconf --variable=prefix "${PWD}/pcfiledir.pc" 89 atf_check \ 90 -o inline:"${PWD}/tmp/child\n" \ 91 pkgconf --variable=prefix "${PWD}/tmp/pcfiledir.pc" 92 atf_check \ 93 -o inline:"${PWD}/tmp/child\n" \ 94 pkgconf --variable=prefix "${PWD}/tmp/child/pcfiledir.pc" 95 96 export PKG_CONFIG_PATH="." 97 atf_check \ 98 -o inline:"tmp/child\n" \ 99 pkgconf --variable=prefix pcfiledir 100 export PKG_CONFIG_PATH="${PWD}" 101 atf_check \ 102 -o inline:"${PWD}/tmp/child\n" \ 103 pkgconf --variable=prefix pcfiledir 104 105 export PKG_CONFIG_PATH="tmp" 106 atf_check \ 107 -o inline:"tmp/child\n" \ 108 pkgconf --variable=prefix pcfiledir 109 export PKG_CONFIG_PATH="${PWD}/tmp" 110 atf_check \ 111 -o inline:"${PWD}/tmp/child\n" \ 112 pkgconf --variable=prefix pcfiledir 113 114 export PKG_CONFIG_PATH="tmp/child" 115 atf_check \ 116 -o inline:"tmp/child\n" \ 117 pkgconf --variable=prefix pcfiledir 118 export PKG_CONFIG_PATH="${PWD}/tmp/child" 119 atf_check \ 120 -o inline:"${PWD}/tmp/child\n" \ 121 pkgconf --variable=prefix pcfiledir 122} 123