4
0

bootstrap.conf 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. # Bootstrap configuration for GNU tar.
  2. # Copyright 2006-2023 Free Software Foundation, Inc.
  3. # This file is part of GNU tar.
  4. # GNU tar is free software; you can redistribute it and/or modify
  5. # it under the terms of the GNU General Public License as published by
  6. # the Free Software Foundation; either version 3 of the License, or
  7. # (at your option) any later version.
  8. # GNU tar is distributed in the hope that it will be useful,
  9. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. # GNU General Public License for more details.
  12. # You should have received a copy of the GNU General Public License
  13. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  14. source_base=gnu
  15. gnulib_name=libgnu
  16. # We don't need these modules, even though gnulib-tool mistakenly
  17. # includes them because of gettext dependencies.
  18. avoided_gnulib_modules='
  19. --avoid=lock
  20. '
  21. # Additional xgettext options to use. Use "\\\newline" to break lines.
  22. XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
  23. --flag=_:1:pass-c-format\\\
  24. --flag=N_:1:pass-c-format\\\
  25. --flag=error:3:c-format --flag=error_at_line:5:c-format\\\
  26. --flag=asnprintf:3:c-format --flag=vasnprintf:3:c-format\\\
  27. --flag=argp_error:2:c-format\\\
  28. --flag=__argp_error:2:c-format\\\
  29. --flag=argp_failure:4:c-format\\\
  30. --flag=__argp_failure:4:c-format\\\
  31. --flag=argp_fmtstream_printf:2:c-format\\\
  32. --flag=__argp_fmtstream_printf:2:c-format\\\
  33. '
  34. # Gettext supplies these files, but we don't need them since
  35. # we don't have an intl subdirectory.
  36. excluded_files='
  37. m4/glibc2.m4
  38. m4/intdiv0.m4
  39. m4/lcmessage.m4
  40. m4/lock.m4
  41. m4/printf-posix.m4
  42. m4/uintmax_t.m4
  43. m4/ulonglong.m4
  44. m4/visibility.m4
  45. '
  46. # Read local configuration file
  47. if [ -r .bootstrap ]; then
  48. echo "$0: Reading configuration file .bootstrap"
  49. eval set -- "`sed 's/#.*$//;/^$/d' .bootstrap | tr '\n' ' '` $*"
  50. fi
  51. bootstrap_post_pull_hook() {
  52. mkdir -p m4 $source_base
  53. git submodule init
  54. git submodule update
  55. }
  56. PAXUTILS=paxutils
  57. # gnulib modules used by this package.
  58. # getopt-gnu is for paxutils.
  59. gnulib_modules="$avoided_gnulib_modules
  60. `grep -h '^[^#]' gnulib.modules`
  61. getopt-gnu
  62. "
  63. # copy_files srcdir dstdir
  64. copy_files() {
  65. for file in DISTFILES `cat $1/DISTFILES`
  66. do
  67. case $file in
  68. "#*") continue;;
  69. esac
  70. dst=`echo $file | sed 's^.*/^^'`
  71. if [ $# -eq 3 ]; then
  72. case $dst in
  73. ${3}*) ;;
  74. *) dst=${3}$dst;;
  75. esac
  76. fi
  77. if [ "$2" = '.' ]; then
  78. ln -sf $1/$file $2
  79. else
  80. symlink_to_dir "$1" "$file" "$2/$dst" || exit
  81. fi
  82. # FIXME ignorefile $2 $dst
  83. done
  84. }
  85. bootstrap_post_import_hook() {
  86. test -f ChangeLog || cat > ChangeLog <<EOT
  87. This file is a placeholder. It will be replaced with the actual ChangeLog
  88. by make dist. Run make ChangeLog if you wish to create it earlier.
  89. EOT
  90. # Import from paxutils
  91. copy_files ${PAXUTILS} .
  92. copy_files ${PAXUTILS}/am m4
  93. echo "$0: Creating m4/paxutils.m4"
  94. (echo "# This file is generated automatically. Please, do not edit."
  95. echo "#"
  96. echo "AC_DEFUN([${package}_PAXUTILS],["
  97. cat ${PAXUTILS}/am/DISTFILES | sed '/^#/d;s/\(.*\)\.m4/pu_\1/' | tr a-z A-Z
  98. echo "])") > ./m4/paxutils.m4
  99. #FIXME ignorefile m4 paxutils.m4
  100. mkdir -p rmt
  101. for dir in doc rmt lib tests; do
  102. copy_files ${PAXUTILS}/$dir $dir
  103. done
  104. copy_files ${PAXUTILS}/paxlib lib pax
  105. }