Το GNU Autoconf 2.69b είναι διαθέσιμο για τη δοκιμή πιθανών αλλαγών συμβατότητας

Μετά από οκτώ χρόνια από τη δημοσίευση της έκδοσης 2.69 παρουσιάζονται έκδοση του πακέτου GNU Autoconf 2.69b, το οποίο παρέχει ένα σύνολο μακροεντολών M4 για τη δημιουργία σεναρίων αυτόματης διαμόρφωσης για τη δημιουργία εφαρμογών σε διάφορα συστήματα τύπου Unix (με βάση το προετοιμασμένο πρότυπο, δημιουργείται το σενάριο "configure"). Η έκδοση τοποθετείται ως έκδοση beta της επερχόμενης έκδοσης 2.70.

Η σημαντική χρονική καθυστέρηση από την προηγούμενη έκδοση και την προδημοσίευση της έκδοσης beta οφείλεται στη συμπερίληψη αλλαγών στον κλάδο 2.70 που θα μπορούσαν ενδεχομένως να διακόψουν τη συμβατότητα με τα υπάρχοντα σενάρια Autoconf. Συνιστάται στους χρήστες να δοκιμάσουν τα σενάρια τους με την προτεινόμενη έκδοση και κοινοποιώ προγραμματιστές εάν εντοπιστούν προβλήματα.

Μεταξύ των αλλαγών:

  • Ενεργοποιήθηκε η διαφυγή ορισμάτων config.log στα σχόλια κεφαλίδας. Βελτιωμένη αναγνωσιμότητα της εξόδου "config.status –config".
  • Προστέθηκε η επιλογή «--runstatedir» στο σενάριο διαμόρφωσης για τον προσδιορισμό της διαδρομής προς τον κατάλογο /run με αρχεία pid.
  • Το autoreconf δεν υποστηρίζει πλέον εκδόσεις automake και aclocal που κυκλοφόρησαν νωρίτερα από την 1.8.
  • Συνιστάται η χρήση printf αντί για echo, οι μακροεντολές AS_ECHO και AS_ECHO_N έχουν πλέον μετατραπεί σε
    'printf "%s\n"' και 'printf %s'. Καταργήθηκαν οι μη τεκμηριωμένες μεταβλητές $as_echo και
    $as_echo_n, αντί της οποίας θα πρέπει να χρησιμοποιούνται οι μακροεντολές AS_ECHO και AS_ECHO_N.

  • Πολλές μακροεντολές έχουν αλλάξει για να επεκτείνονται τα ορίσματα μόνο μία φορά για να επιταχυνθεί η εκτέλεση αυτόματης συνδιάλεξης, κάτι που μπορεί να επηρεάσει τη συμβατότητα με ορισμένα σενάρια που δεν αναφέρουν σωστά τα ορίσματα.
  • Ορισμένες μακροεντολές, όπως το AC_PROG_CC, που χρησιμοποιούνται συνήθως στην αρχή της δέσμης ενεργειών διαμόρφωσης, έχουν βελτιστοποιηθεί και δεν καλούν πλέον τόσες δευτερεύουσες μακροεντολές. Η αλλαγή προσδιορίζει πολλές κατηγορίες σφαλμάτων, που συνήθως προκαλούνται από τη χρήση της μακροεντολής AC_REQUIRE.
  • Οι μακροεντολές που δέχονται λίστες ορισμάτων διαχωρισμένων με κενό διάστημα επεκτείνονται τώρα πάντα με καθένα από τα ορίσματα που παρατίθενται.
    Η αλλαγή επηρεάζει τις μακροεντολές AC_CHECK_FILES, AC_CHECK_FUNCS,
    AC_CHECK_FUNCS_ONCE, AC_CHECK_HEADERS, AC_CHECK_HEADERS_ONCE,
    AC_CONFIG_MACRO_DIRS, AC_CONFIG_SUBDIRS και AC_REPLACE_FUNCS.

  • Προστέθηκαν νέες μακροεντολές AC_C__GENERIC, AC_CONFIG_MACRO_DIRS και AC_CHECK_INCLUDES_DEFAULT.
  • Στη μακροεντολή AC_PROG_CC, εάν είναι διαθέσιμη, επιλέγεται τώρα ένας μεταγλωττιστής με υποστήριξη C11 (με επαναφορά στο C99 και C89, εάν δεν βρεθεί), και στο AC_PROG_CXX - C++11 με επαναφορά στο C++98. Οι μακροεντολές AC_PROG_CC_STDC, AC_PROG_CC_C89 και AC_PROG_CC_C99 έχουν καταργηθεί.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο