CMake

Screenshot Λογισμικό:
CMake
Στοιχεία Λογισμικού:
Εκδοχή: 3.12.1 επικαιροποιημένο
Ανεβάστε ημερομηνία: 16 Aug 18
Προγραμματιστής: Kitware, Inc.
Άδεια: Δωρεάν
Δημοτικότητα: 325

Rating: 2.5/5 (Total Votes: 2)

Το CMake είναι ένα έργο λογισμικού εντελώς δωρεάν και ανοικτού κώδικα το οποίο σχεδιάστηκε από το έδαφος για να λειτουργήσει ως σύστημα δημιουργίας, ένας μεταγλωττιστής για τη διαμόρφωση του συστήματος, η παραγωγή προ-επεξεργαστή, γενιάς σε οποιοδήποτε λειτουργικό σύστημα GNU / Linux. Πρόκειται για ένα πρόγραμμα γραμμής εντολών που εκτελείται εξ ολοκλήρου από ένα περιβάλλον κονσόλας / τερματικού.


Χαρακτηριστικά με μια ματιά
Τα βασικά χαρακτηριστικά περιλαμβάνουν υποστήριξη για σύνθετα περιβάλλοντα μεγάλης κλίμακας, δυνατότητα δημιουργίας εγγενών αρχείων δημιουργίας, ισχυρές εντολές που επιτρέπουν στους προγραμματιστές να εντοπίζουν αρχεία, εκτελέσιμα αρχεία και βιβλιοθήκες, εξωτερικά αρχεία CMake που περιέχουν τυπικές λειτουργίες, διεπαφή με συστήματα δοκιμών, όπως καθώς και υποστήριξη για αναδρομικό μετασχηματισμό καταλόγου με μεταβλητή κληρονομιά.

Επιπροσθέτως, το CMake υποστηρίζει χτισμένες επιτόπιες και επιτόπιες κατασκευές, υποστηρίζει τις υπό όρους κατασκευές, υποστηρίζει την επέκταση της κανονικής έκφρασης και τα πολλαπλά δέντρα συλλογής από ένα μόνο δέντρο πηγής. Μπορεί να επεκταθεί εύκολα για να προσθέσει νέες δυνατότητες και περιλαμβάνει τη δυνατότητα εκτέλεσης εξωτερικών προγραμμάτων.

Επιλογές γραμμής εντολών

Το πρόγραμμα έρχεται με πολλές επιλογές γραμμής εντολών, που οργανώνονται σε δύο μεγάλες ενότητες, Επιλογές και Γεννήτριες. Οι προγραμματιστές θα μπορούν να συμπληρώσουν την προσωρινή μνήμη με δέσμες ενεργειών προ-φόρτωσης, να δημιουργήσουν εγγραφές μνήμης cache, να ενεργοποιήσουν ή να καταργήσουν τις προειδοποιήσεις προγραμματιστών, να καθορίσουν μια γεννήτρια συστήματος και το σύνολο εργαλείων, καθώς και να την εκτελέσουν σε διάφορες λειτουργίες ή να εκτυπώσουν διάφορες πληροφορίες. p>

Από την άλλη πλευρά, ο μεταγλωττιστής CMake σάς επιτρέπει να δημιουργείτε πρότυπα makefiles UNIX, αρχεία build.ninja καθώς και αρχεία έργων για CodeBlocks, CodeLite, Eclipse, KDevelop, Kate και Sublime Text 2.


Υποστηριζόμενα λειτουργικά συστήματα

Εκτός από το GNU / Linux, το CMake έχει δοκιμαστεί με επιτυχία στα εμπορικά λειτουργικά συστήματα Microsoft Windows και Mac OS X. Και οι δύο αρχιτεκτονικές των συνόλων οδηγών 64-bit και 32-bit υποστηρίζονται αυτή τη στιγμή.


Κάτω από την κουκούλα και τη διαθεσιμότητα

Το CMake είναι γραμμένο εξ ολοκλήρου στη γλώσσα προγραμματισμού C ++, είναι λογισμικό πολλαπλών πλατφορμών (βλέπε παρακάτω για υποστηριζόμενα λειτουργικά συστήματα) και είναι διαθέσιμο για λήψη ως πηγαίο κώδικα καθολικής πηγής, καθώς και για προ-κατασκευασμένα δυαδικά πακέτα για τα προαναφερθέντα λειτουργικά συστήματα.

Τι είναι καινούργιο σε αυτήν την έκδοση:

  • Νέες δυνατότητες:
  • GUI:
  • Το cmake-gui (1) απέκτησε επιλογές για τον έλεγχο των προειδοποιήσεων σχετικά με την υπολειπόμενη λειτουργικότητα.
  • Το cmake-gui (1) έμαθε μια επιλογή για να ορίσετε το σύνολο εργαλείων που θα χρησιμοποιηθεί με τις γεννήτριες VS IDE και Xcode, όπως και η υπάρχουσα επιλογή -T για το cmake (1).
  • Το cmake-gui (1) κέρδισε έναν Explorer κανονικής έκφρασης ο οποίος μπορεί να χρησιμοποιηθεί για να δημιουργήσει και να αξιολογήσει κανονικές εκφράσεις σε πραγματικό χρόνο. Το παράθυρο του εξερευνητή είναι διαθέσιμο μέσω του μενού Εργαλεία.
  • Γραμμή εντολών:
  • Οι επιλογές -Wdev και -Wno-dev cmake (1) τώρα ενεργοποιούν και καταργούν εξ ορισμού την εξερχόμενη προειδοποίηση.
  • Η καταστολή των προειδοποιήσεων προγραμματιστών ως σφάλματα μπορεί πλέον να ελεγχθεί με τις νέες επιλογές -Werror = dev και -Wno-error = dev cmake (1).
  • Τα εργαλεία γραμμής εντολών cmake (1) -E, copy_if_different, copy_directory και make_directory έμαθαν να υποστηρίζουν πολλά αρχεία εισόδου ή καταλόγους.
  • Εντολές:
  • Η εντολή cmake_parse_arguments () εφαρμόζεται πλέον εγγενώς. Η ενότητα CMakeParseArguments παραμένει ως άδειο σύμβολο κράτησης θέσης.
  • Η εντολή install (DIRECTORY) έμαθε να υποστηρίζει τις εκφράσεις γεννήτριας στη λίστα των καταλόγων.
  • Μεταβλητές:
  • Η μεταβλητή CMAKE_ERROR_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Werror = απορριφθείσες και -Wno-error = απορριφθέντες συνδυασμούς (1).
  • Η μεταβλητή CMAKE_WARN_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Αντιμετωπισμένη και -Δενεξαιρεθείσα μνήμη (1).
  • Ιδιότητες:
  • Η ιδιότητα στόχου VS_GLOBAL_ εφαρμόζεται πλέον για το VS 2010 και παραπάνω. Προηγουμένως εργάστηκε μόνο στο VS 2008 και κάτω.
  • Ενότητες:
  • Η ενότητα ExternalProject έμαθε μια νέα επιλογή GIT_REMOTE_NAME για να ελέγξει την τιμή του αρχικού κλώνου git.
  • Η ενότητα FindBoost παρέχει πλέον εισαγόμενους στόχους, όπως το σύστημα αρχείων Boost :: boost και Boost ::.
  • Η μακροεντολή FLEX_TARGET της μονάδας FindFLEX έμαθε μια νέα επιλογή DEFINES_FILE για να καθορίσει μια γεννήτρια προσαρμοσμένης εξόδου που θα δημιουργηθεί.
  • Η ενότητα FindGTest παρέχει πλέον εισαγόμενους στόχους.
  • Η ενότητα FindGTK2, όταν το GTK2_USE_IMPORTED_TARGETS είναι ενεργοποιημένο, ορίζει τώρα το GTK2_LIBRARIES να περιέχει τη λίστα των εισαγόμενων στόχων αντί των διαδρομών στις βιβλιοθήκες. Επιπλέον, ορίζει τώρα μια νέα μεταβλητή GTK2_TARGETS που περιέχει όλους τους εισαγόμενους στόχους.
  • Η λειτουργική μονάδα FindOpenMP έμαθε να υποστηρίζει τον Clang.
  • Η ενότητα FindOpenSSL κέρδισε μια νέα OPENSSL_MSVC_STATIC_RT επιλογή για αναζήτηση βιβλιοθηκών χρησιμοποιώντας το static runtime του MSVC.
  • Η ενότητα FindPNG παρέχει τώρα εισαγόμενους στόχους
  • Η ενότητα FindTIFF παρέχει τώρα εισαγόμενους στόχους.
  • Εισήχθη μια ενότητα FindXalanC για να βρει τη βιβλιοθήκη μετασχηματισμού μετασχηματισμού μετασχηματιστών Apache Xalan-C ++.
  • Η ενότητα FindXercesC παρέχει τώρα εισαγόμενους στόχους
  • Πλατφόρμες:
  • Προστέθηκε υποστήριξη για το Compiler ARM (arm.com) με το compiler id ARMCC.
  • Προστέθηκε ένα νέο αρχείο πλατφόρμας για διασταυρωμένη συμπύκνωση στο περιβάλλον Cray Linux για τον υπολογισμό κόμβων στόχου. Δείτε το Cross Compiling για το Cray Linux Environment για λεπτομέρειες χρήσης.
  • Η λειτουργία Compile Features γνωρίζει πλέον τις λειτουργίες που υποστηρίζονται από τους μεταγλωττιστές Clang σε Windows (MinGW).
  • Κατά την οικοδόμηση για ενσωματωμένες πλατφόρμες της Apple όπως το iOS CMake έμαθε να χτίσει και να εγκαταστήσει συνδυασμένους στόχους οι οποίοι περιέχουν τόσο μια συσκευή όσο και μια κατασκευή προσομοιωτή. Αυτή η συμπεριφορά μπορεί να ενεργοποιηθεί θέτοντας την ιδιότητα στόχου IOS_INSTALL_COMBINED.
  • CPack:
  • Η ενότητα CPackDMG έμαθε νέα μεταβλητή για να καθορίσει την εκτέλεση του αρχείου AppleScript για να προσαρμόσει την εμφάνιση του φακέλου εγκατάστασης του DragNDrop, συμπεριλαμβανομένης της ρύθμισης της εικόνας φόντου χρησιμοποιώντας το παρεχόμενο αρχείο PNG ή το αρχείο TIFF πολλαπλής ανάλυσης. Δείτε τις μεταβλητές CPACK_DMG_DS_STORE_SETUP_SCRIPT και CPACK_DMG_BACKGROUND_IMAGE.
  • Η μονάδα CPackDeb μάθει να ρυθμίζει το προαιρετικό πεδίο προέλευσης του αρχείου ρυθμίσεων χρησιμοποιώντας μια μονολιθική μεταβλητή ή μια μεταβλητή ανά συνιστώσα. Δείτε το CPACK_DEBIAN_PACKAGE_SOURCE.
  • Η μονάδα CPackDeb μάθει να ορίζει τα πεδία ελέγχου πακέτων, τομέων και προτεραιοτήτων ανά συνιστώσα. Δείτε μεταβλητές CPACK_DEBIAN__PACKAGE_SECTION και CPACK_DEBIAN__PACKAGE_PRIORITY.
  • Η γεννήτρια του CPack DragNDrop έμαθε να προσθέτει πολυγλωσσικά SLA σε ένα DMG το οποίο παρουσιάζεται στο χρήστη όταν προσπαθεί να τοποθετήσει το DMG. Για λεπτομέρειες, δείτε τις μεταβλητές CPACK_DMG_SLA_LANGUAGES και CPACK_DMG_SLA_DIR.
  • Η ενότητα CPackNSIS έμαθε νέες μεταβλητές για να προσθέσει bitmap στο πρόγραμμα εγκατάστασης. Δείτε τις μεταβλητές CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP και CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
  • Η ενότητα CPackRPM έμαθε να ορίζει τα πεδία ελέγχου ονόματος και ομάδας ανά συνιστώσα. Δείτε το CPACK_RPM__PACKAGE_NAME και το CPACK_RPM__PACKAGE_GROUP.
  • Άλλο:
  • Οι προειδοποιήσεις σχετικά με την υπολειπόμενη λειτουργικότητα είναι πλέον ενεργοποιημένες από προεπιλογή. Μπορεί να κατασταλούν με -Wno-deprecated ή θέτοντας τη μεταβλητή CMAKE_WARN_DEPRECATED σε false.
  • Χαρακτηριστικά που έχουν απενεργοποιηθεί και έχουν καταργηθεί:
  • Η εντολή cmake (1) -E τώρα μεταβιβάζει σωστά τα επιχειρήματα με διαστήματα ή ειδικούς χαρακτήρες μέχρι τη διαδικασία του παιδιού. Αυτό μπορεί να σπάσει τα scripts που δούλεψαν γύρω από το σφάλμα με τη δική τους επιπλέον προσφορά ή διαφυγή.
  • Η γεννήτρια Xcode ήταν στερεωμένη για να αποφεύγει τους backslash σε χορδές με συνέπεια με άλλες γεννήτριες. Τα έργα που έχουν προηγουμένως επεξεργαστεί την ασυνέπεια με ένα επιπλέον επίπεδο backslash που βασίζεται στη γεννήτρια Xcode πρέπει να ενημερωθούν για να καταργηθεί ο τρόπος αντιμετώπισης του CMake 3.5 και μεγαλύτερου.
  • Άλλες αλλαγές:
  • Η γεννήτρια του Visual Studio 14 2015 έμαθε να αντιστοιχίζει τη σημαία / debug: linklinker στην ιδιότητα .vcxproj.
  • Η ενότητα FindGTK2 ρυθμίζει τώρα τον στόχο εισαγωγής GTK2 :: sigc ++ για να ενεργοποιήσει το c ++ 11 στα εξαρτώμενα μέλη του όταν χρησιμοποιεί sigc ++ 2.5.1 ή νεότερη έκδοση.
  • Το πρόθεμα δυαδικών αρχείων των Windows που παρέχεται στο cmake.org είναι τώρα ένα πακέτο .msi αντί για ένα εκτελέσιμο πρόγραμμα εγκατάστασης. Ίσως χρειαστεί να εγκαταστήσετε με μη αυτόματο τρόπο εκδόσεις CMake χαμηλότερες από 3,5 πριν εγκαταστήσετε το νέο πακέτο.

Τι νέο υπάρχει στην έκδοση 3.11.4:

  • Νέες δυνατότητες:
  • GUI:
  • Το cmake-gui (1) απέκτησε επιλογές για τον έλεγχο των προειδοποιήσεων σχετικά με την υπολειπόμενη λειτουργικότητα.
  • Το cmake-gui (1) έμαθε μια επιλογή για να ορίσετε το σύνολο εργαλείων που θα χρησιμοποιηθεί με τις γεννήτριες VS IDE και Xcode, όπως και η υπάρχουσα επιλογή -T για το cmake (1).
  • Το cmake-gui (1) κέρδισε έναν Explorer κανονικής έκφρασης ο οποίος μπορεί να χρησιμοποιηθεί για να δημιουργήσει και να αξιολογήσει κανονικές εκφράσεις σε πραγματικό χρόνο. Το παράθυρο του εξερευνητή είναι διαθέσιμο μέσω του μενού Εργαλεία.
  • Γραμμή εντολών:
  • Οι επιλογές -Wdev και -Wno-dev cmake (1) τώρα ενεργοποιούν και καταργούν εξ ορισμού την εξερχόμενη προειδοποίηση.
  • Η καταστολή των προειδοποιήσεων προγραμματιστών ως σφάλματα μπορεί πλέον να ελεγχθεί με τις νέες επιλογές -Werror = dev και -Wno-error = dev cmake (1).
  • Τα εργαλεία γραμμής εντολών cmake (1) -E, copy_if_different, copy_directory και make_directory έμαθαν να υποστηρίζουν πολλά αρχεία εισόδου ή καταλόγους.
  • Εντολές:
  • Η εντολή cmake_parse_arguments () εφαρμόζεται πλέον εγγενώς. Η ενότητα CMakeParseArguments παραμένει ως άδειο σύμβολο κράτησης θέσης.
  • Η εντολή install (DIRECTORY) έμαθε να υποστηρίζει τις εκφράσεις γεννήτριας στη λίστα των καταλόγων.
  • Μεταβλητές:
  • Η μεταβλητή CMAKE_ERROR_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Werror = απορριφθείσες και -Wno-error = απορριφθέντες συνδυασμούς (1).
  • Η μεταβλητή CMAKE_WARN_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Αντιμετωπισμένη και -Δενεξαιρεθείσα μνήμη (1).
  • Ιδιότητες:
  • Η ιδιότητα στόχου VS_GLOBAL_ εφαρμόζεται πλέον για το VS 2010 και παραπάνω. Προηγουμένως εργάστηκε μόνο στο VS 2008 και κάτω.
  • Ενότητες:
  • Η ενότητα ExternalProject έμαθε μια νέα επιλογή GIT_REMOTE_NAME για να ελέγξει την τιμή του αρχικού κλώνου git.
  • Η ενότητα FindBoost παρέχει πλέον εισαγόμενους στόχους, όπως το σύστημα αρχείων Boost :: boost και Boost ::.
  • Η μακροεντολή FLEX_TARGET της μονάδας FindFLEX έμαθε μια νέα επιλογή DEFINES_FILE για να καθορίσει μια γεννήτρια προσαρμοσμένης εξόδου που θα δημιουργηθεί.
  • Η ενότητα FindGTest παρέχει πλέον εισαγόμενους στόχους.
  • Η ενότητα FindGTK2, όταν το GTK2_USE_IMPORTED_TARGETS είναι ενεργοποιημένο, ορίζει τώρα το GTK2_LIBRARIES να περιέχει τη λίστα των εισαγόμενων στόχων αντί των διαδρομών στις βιβλιοθήκες. Επιπλέον, ορίζει τώρα μια νέα μεταβλητή GTK2_TARGETS που περιέχει όλους τους εισαγόμενους στόχους.
  • Η λειτουργική μονάδα FindOpenMP έμαθε να υποστηρίζει τον Clang.
  • Η ενότητα FindOpenSSL κέρδισε μια νέα OPENSSL_MSVC_STATIC_RT επιλογή για αναζήτηση βιβλιοθηκών χρησιμοποιώντας το static runtime του MSVC.
  • Η ενότητα FindPNG παρέχει τώρα εισαγόμενους στόχους
  • Η ενότητα FindTIFF παρέχει τώρα εισαγόμενους στόχους.
  • Εισήχθη μια ενότητα FindXalanC για να βρει τη βιβλιοθήκη μετασχηματισμού μετασχηματισμού μετασχηματιστών Apache Xalan-C ++.
  • Η ενότητα FindXercesC παρέχει τώρα εισαγόμενους στόχους
  • Πλατφόρμες:
  • Προστέθηκε υποστήριξη για το Compiler ARM (arm.com) με το compiler id ARMCC.
  • Προστέθηκε ένα νέο αρχείο πλατφόρμας για διασταυρωμένη συμπύκνωση στο περιβάλλον Cray Linux για τον υπολογισμό κόμβων στόχου. Δείτε το Cross Compiling για το Cray Linux Environment για λεπτομέρειες χρήσης.
  • Η λειτουργία Compile Features γνωρίζει πλέον τις λειτουργίες που υποστηρίζονται από τους μεταγλωττιστές Clang σε Windows (MinGW).
  • Κατά την οικοδόμηση για ενσωματωμένες πλατφόρμες της Apple όπως το iOS CMake έμαθε να χτίσει και να εγκαταστήσει συνδυασμένους στόχους οι οποίοι περιέχουν τόσο μια συσκευή όσο και μια κατασκευή προσομοιωτή. Αυτή η συμπεριφορά μπορεί να ενεργοποιηθεί θέτοντας την ιδιότητα στόχου IOS_INSTALL_COMBINED.
  • CPack:
  • Η ενότητα CPackDMG έμαθε νέα μεταβλητή για να καθορίσει την εκτέλεση του αρχείου AppleScript για να προσαρμόσει την εμφάνιση του φακέλου εγκατάστασης του DragNDrop, συμπεριλαμβανομένης της ρύθμισης της εικόνας φόντου χρησιμοποιώντας το παρεχόμενο αρχείο PNG ή το αρχείο TIFF πολλαπλής ανάλυσης. Δείτε τις μεταβλητές CPACK_DMG_DS_STORE_SETUP_SCRIPT και CPACK_DMG_BACKGROUND_IMAGE.
  • Η μονάδα CPackDeb μάθει να ρυθμίζει το προαιρετικό πεδίο προέλευσης του αρχείου ρυθμίσεων χρησιμοποιώντας μια μονολιθική μεταβλητή ή μια μεταβλητή ανά συνιστώσα. Δείτε το CPACK_DEBIAN_PACKAGE_SOURCE.
  • Η μονάδα CPackDeb μάθει να ορίζει τα πεδία ελέγχου πακέτων, τομέων και προτεραιοτήτων ανά συνιστώσα. Δείτε μεταβλητές CPACK_DEBIAN__PACKAGE_SECTION και CPACK_DEBIAN__PACKAGE_PRIORITY.
  • Η γεννήτρια του CPack DragNDrop έμαθε να προσθέτει πολυγλωσσικά SLA σε ένα DMG το οποίο παρουσιάζεται στο χρήστη όταν προσπαθεί να τοποθετήσει το DMG. Για λεπτομέρειες, δείτε τις μεταβλητές CPACK_DMG_SLA_LANGUAGES και CPACK_DMG_SLA_DIR.
  • Η ενότητα CPackNSIS έμαθε νέες μεταβλητές για να προσθέσει bitmap στο πρόγραμμα εγκατάστασης. Δείτε τις μεταβλητές CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP και CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
  • Η ενότητα CPackRPM έμαθε να ορίζει τα πεδία ελέγχου ονόματος και ομάδας ανά συνιστώσα. Δείτε το CPACK_RPM__PACKAGE_NAME και το CPACK_RPM__PACKAGE_GROUP.
  • Άλλο:
  • Οι προειδοποιήσεις σχετικά με την υπολειπόμενη λειτουργικότητα είναι πλέον ενεργοποιημένες από προεπιλογή. Μπορεί να κατασταλούν με -Wno-deprecated ή θέτοντας τη μεταβλητή CMAKE_WARN_DEPRECATED σε false.
  • Χαρακτηριστικά που έχουν απενεργοποιηθεί και έχουν καταργηθεί:
  • Η εντολή cmake (1) -E τώρα μεταβιβάζει σωστά τα επιχειρήματα με διαστήματα ή ειδικούς χαρακτήρες μέχρι τη διαδικασία του παιδιού. Αυτό μπορεί να σπάσει τα scripts που δούλεψαν γύρω από το σφάλμα με τη δική τους επιπλέον προσφορά ή διαφυγή.
  • Η γεννήτρια Xcode ήταν στερεωμένη για να αποφεύγει τους backslash σε χορδές με συνέπεια με άλλες γεννήτριες. Τα έργα που έχουν προηγουμένως επεξεργαστεί την ασυνέπεια με ένα επιπλέον επίπεδο backslash που βασίζεται στη γεννήτρια Xcode πρέπει να ενημερωθούν για να καταργηθεί ο τρόπος αντιμετώπισης του CMake 3.5 και μεγαλύτερου.
  • Άλλες αλλαγές:
  • Η γεννήτρια του Visual Studio 14 2015 έμαθε να αντιστοιχίζει τη σημαία / debug: linklinker στην ιδιότητα .vcxproj.
  • Η ενότητα FindGTK2 ρυθμίζει τώρα τον στόχο εισαγωγής GTK2 :: sigc ++ για να ενεργοποιήσει το c ++ 11 στα εξαρτώμενα μέλη του όταν χρησιμοποιεί sigc ++ 2.5.1 ή νεότερη έκδοση.
  • Το πρόθεμα δυαδικών αρχείων των Windows που παρέχεται στο cmake.org είναι τώρα ένα πακέτο .msi αντί για ένα εκτελέσιμο πρόγραμμα εγκατάστασης. Ίσως χρειαστεί να εγκαταστήσετε με μη αυτόματο τρόπο εκδόσεις CMake χαμηλότερες από 3,5 πριν εγκαταστήσετε το νέο πακέτο.

Τι νέο υπάρχει στην έκδοση:

  • Νέες δυνατότητες:
  • GUI:
  • Το cmake-gui (1) απέκτησε επιλογές για τον έλεγχο των προειδοποιήσεων σχετικά με την υπολειπόμενη λειτουργικότητα.
  • Το cmake-gui (1) έμαθε μια επιλογή για να ορίσετε το σύνολο εργαλείων που θα χρησιμοποιηθεί με τις γεννήτριες VS IDE και Xcode, όπως και η υπάρχουσα επιλογή -T για το cmake (1).
  • Το cmake-gui (1) κέρδισε έναν Explorer κανονικής έκφρασης ο οποίος μπορεί να χρησιμοποιηθεί για να δημιουργήσει και να αξιολογήσει κανονικές εκφράσεις σε πραγματικό χρόνο. Το παράθυρο του εξερευνητή είναι διαθέσιμο μέσω του μενού Εργαλεία.
  • Γραμμή εντολών:
  • Οι επιλογές -Wdev και -Wno-dev cmake (1) τώρα ενεργοποιούν και καταργούν εξ ορισμού την εξερχόμενη προειδοποίηση.
  • Η καταστολή των προειδοποιήσεων προγραμματιστών ως σφάλματα μπορεί πλέον να ελεγχθεί με τις νέες επιλογές -Werror = dev και -Wno-error = dev cmake (1).
  • Τα εργαλεία γραμμής εντολών cmake (1) -E, copy_if_different, copy_directory και make_directory έμαθαν να υποστηρίζουν πολλά αρχεία εισόδου ή καταλόγους.
  • Εντολές:
  • Η εντολή cmake_parse_arguments () εφαρμόζεται πλέον εγγενώς. Η ενότητα CMakeParseArguments παραμένει ως άδειο σύμβολο κράτησης θέσης.
  • Η εντολή install (DIRECTORY) έμαθε να υποστηρίζει τις εκφράσεις γεννήτριας στη λίστα των καταλόγων.
  • Μεταβλητές:
  • Η μεταβλητή CMAKE_ERROR_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Werror = απορριφθείσες και -Wno-error = απορριφθέντες συνδυασμούς (1).
  • Η μεταβλητή CMAKE_WARN_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Αντιμετωπισμένη και -Δενεξαιρεθείσα μνήμη (1).
  • Ιδιότητες:
  • Η ιδιότητα στόχου VS_GLOBAL_ εφαρμόζεται πλέον για το VS 2010 και παραπάνω. Προηγουμένως εργάστηκε μόνο στο VS 2008 και κάτω.
  • Ενότητες:
  • Η ενότητα ExternalProject έμαθε μια νέα επιλογή GIT_REMOTE_NAME για να ελέγξει την τιμή του αρχικού κλώνου git.
  • Η ενότητα FindBoost παρέχει πλέον εισαγόμενους στόχους, όπως το σύστημα αρχείων Boost :: boost και Boost ::.
  • Η μακροεντολή FLEX_TARGET της μονάδας FindFLEX έμαθε μια νέα επιλογή DEFINES_FILE για να καθορίσει μια γεννήτρια προσαρμοσμένης εξόδου που θα δημιουργηθεί.
  • Η ενότητα FindGTest παρέχει πλέον εισαγόμενους στόχους.
  • Η ενότητα FindGTK2, όταν το GTK2_USE_IMPORTED_TARGETS είναι ενεργοποιημένο, ορίζει τώρα το GTK2_LIBRARIES να περιέχει τη λίστα των εισαγόμενων στόχων αντί των διαδρομών στις βιβλιοθήκες. Επιπλέον, ορίζει τώρα μια νέα μεταβλητή GTK2_TARGETS που περιέχει όλους τους εισαγόμενους στόχους.
  • Η λειτουργική μονάδα FindOpenMP έμαθε να υποστηρίζει τον Clang.
  • Η ενότητα FindOpenSSL κέρδισε μια νέα OPENSSL_MSVC_STATIC_RT επιλογή για αναζήτηση βιβλιοθηκών χρησιμοποιώντας το static runtime του MSVC.
  • Η ενότητα FindPNG παρέχει τώρα εισαγόμενους στόχους
  • Η ενότητα FindTIFF παρέχει τώρα εισαγόμενους στόχους.
  • Εισήχθη μια ενότητα FindXalanC για να βρει τη βιβλιοθήκη μετασχηματισμού μετασχηματισμού μετασχηματιστών Apache Xalan-C ++.
  • Η ενότητα FindXercesC παρέχει τώρα εισαγόμενους στόχους
  • Πλατφόρμες:
  • Προστέθηκε υποστήριξη για το Compiler ARM (arm.com) με το compiler id ARMCC.
  • Προστέθηκε ένα νέο αρχείο πλατφόρμας για διασταυρωμένη συμπύκνωση στο περιβάλλον Cray Linux για τον υπολογισμό κόμβων στόχου. Δείτε το Cross Compiling για το Cray Linux Environment για λεπτομέρειες χρήσης.
  • Η λειτουργία Compile Features γνωρίζει πλέον τις λειτουργίες που υποστηρίζονται από τους μεταγλωττιστές Clang σε Windows (MinGW).
  • Κατά την οικοδόμηση για ενσωματωμένες πλατφόρμες της Apple όπως το iOS CMake έμαθε να χτίσει και να εγκαταστήσει συνδυασμένους στόχους οι οποίοι περιέχουν τόσο μια συσκευή όσο και μια κατασκευή προσομοιωτή. Αυτή η συμπεριφορά μπορεί να ενεργοποιηθεί θέτοντας την ιδιότητα στόχου IOS_INSTALL_COMBINED.
  • CPack:
  • Η ενότητα CPackDMG έμαθε νέα μεταβλητή για να καθορίσει την εκτέλεση του αρχείου AppleScript για να προσαρμόσει την εμφάνιση του φακέλου εγκατάστασης του DragNDrop, συμπεριλαμβανομένης της ρύθμισης της εικόνας φόντου χρησιμοποιώντας το παρεχόμενο αρχείο PNG ή το αρχείο TIFF πολλαπλής ανάλυσης. Δείτε τις μεταβλητές CPACK_DMG_DS_STORE_SETUP_SCRIPT και CPACK_DMG_BACKGROUND_IMAGE.
  • Η μονάδα CPackDeb μάθει να ρυθμίζει το προαιρετικό πεδίο προέλευσης του αρχείου ρυθμίσεων χρησιμοποιώντας μια μονολιθική μεταβλητή ή μια μεταβλητή ανά συνιστώσα. Δείτε το CPACK_DEBIAN_PACKAGE_SOURCE.
  • Η μονάδα CPackDeb μάθει να ορίζει τα πεδία ελέγχου πακέτων, τομέων και προτεραιοτήτων ανά συνιστώσα. Δείτε μεταβλητές CPACK_DEBIAN__PACKAGE_SECTION και CPACK_DEBIAN__PACKAGE_PRIORITY.
  • Η γεννήτρια του CPack DragNDrop έμαθε να προσθέτει πολυγλωσσικά SLA σε ένα DMG το οποίο παρουσιάζεται στο χρήστη όταν προσπαθεί να τοποθετήσει το DMG. Για λεπτομέρειες, δείτε τις μεταβλητές CPACK_DMG_SLA_LANGUAGES και CPACK_DMG_SLA_DIR.
  • Η ενότητα CPackNSIS έμαθε νέες μεταβλητές για να προσθέσει bitmap στο πρόγραμμα εγκατάστασης. Δείτε τις μεταβλητές CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP και CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
  • Η ενότητα CPackRPM έμαθε να ορίζει τα πεδία ελέγχου ονόματος και ομάδας ανά συνιστώσα. Δείτε το CPACK_RPM__PACKAGE_NAME και το CPACK_RPM__PACKAGE_GROUP.
  • Άλλο:
  • Οι προειδοποιήσεις σχετικά με την υπολειπόμενη λειτουργικότητα είναι πλέον ενεργοποιημένες από προεπιλογή. Μπορεί να κατασταλούν με -Wno-deprecated ή θέτοντας τη μεταβλητή CMAKE_WARN_DEPRECATED σε false.
  • Χαρακτηριστικά που έχουν απενεργοποιηθεί και έχουν καταργηθεί:
  • Η εντολή cmake (1) -E τώρα μεταβιβάζει σωστά τα επιχειρήματα με διαστήματα ή ειδικούς χαρακτήρες μέχρι τη διαδικασία του παιδιού. Αυτό μπορεί να σπάσει τα scripts που δούλεψαν γύρω από το σφάλμα με τη δική τους επιπλέον προσφορά ή διαφυγή.
  • Η γεννήτρια Xcode ήταν στερεωμένη για να αποφεύγει τους backslash σε χορδές με συνέπεια με άλλες γεννήτριες. Τα έργα που έχουν προηγουμένως επεξεργαστεί την ασυνέπεια με ένα επιπλέον επίπεδο backslash που βασίζεται στη γεννήτρια Xcode πρέπει να ενημερωθούν για να καταργηθεί ο τρόπος αντιμετώπισης του CMake 3.5 και μεγαλύτερου.
  • Άλλες αλλαγές:
  • Η γεννήτρια του Visual Studio 14 2015 έμαθε να αντιστοιχίζει τη σημαία / debug: linklinker στην ιδιότητα .vcxproj.
  • Η ενότητα FindGTK2 ρυθμίζει τώρα τον στόχο εισαγωγής GTK2 :: sigc ++ για να ενεργοποιήσει το c ++ 11 στα εξαρτώμενα μέλη του όταν χρησιμοποιεί sigc ++ 2.5.1 ή νεότερη έκδοση.
  • Το πρόθεμα δυαδικών αρχείων των Windows που παρέχεται στο cmake.org είναι τώρα ένα πακέτο .msi αντί για ένα εκτελέσιμο πρόγραμμα εγκατάστασης. Ίσως χρειαστεί να εγκαταστήσετε με μη αυτόματο τρόπο εκδόσεις CMake χαμηλότερες από 3,5 πριν εγκαταστήσετε το νέο πακέτο.

Τι νέο υπάρχει στην έκδοση 3.9.2:

  • Νέες δυνατότητες:
  • GUI:
  • Το cmake-gui (1) απέκτησε επιλογές για τον έλεγχο των προειδοποιήσεων σχετικά με την υπολειπόμενη λειτουργικότητα.
  • Το cmake-gui (1) έμαθε μια επιλογή για να ορίσετε το σύνολο εργαλείων που θα χρησιμοποιηθεί με τις γεννήτριες VS IDE και Xcode, όπως και η υπάρχουσα επιλογή -T για το cmake (1).
  • Το cmake-gui (1) κέρδισε έναν Explorer κανονικής έκφρασης ο οποίος μπορεί να χρησιμοποιηθεί για να δημιουργήσει και να αξιολογήσει κανονικές εκφράσεις σε πραγματικό χρόνο. Το παράθυρο του εξερευνητή είναι διαθέσιμο μέσω του μενού Εργαλεία.
  • Γραμμή εντολών:
  • Οι επιλογές -Wdev και -Wno-dev cmake (1) τώρα ενεργοποιούν και καταργούν εξ ορισμού την εξερχόμενη προειδοποίηση.
  • Η καταστολή των προειδοποιήσεων προγραμματιστών ως σφάλματα μπορεί πλέον να ελεγχθεί με τις νέες επιλογές -Werror = dev και -Wno-error = dev cmake (1).
  • Τα εργαλεία γραμμής εντολών cmake (1) -E, copy_if_different, copy_directory και make_directory έμαθαν να υποστηρίζουν πολλά αρχεία εισόδου ή καταλόγους.
  • Εντολές:
  • Η εντολή cmake_parse_arguments () εφαρμόζεται πλέον εγγενώς. Η ενότητα CMakeParseArguments παραμένει ως άδειο σύμβολο κράτησης θέσης.
  • Η εντολή install (DIRECTORY) έμαθε να υποστηρίζει τις εκφράσεις γεννήτριας στη λίστα των καταλόγων.
  • Μεταβλητές:
  • Η μεταβλητή CMAKE_ERROR_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Werror = απορριφθείσες και -Wno-error = απορριφθέντες συνδυασμούς (1).
  • Η μεταβλητή CMAKE_WARN_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Αντιμετωπισμένη και -Δενεξαιρεθείσα μνήμη (1).
  • Ιδιότητες:
  • Η ιδιότητα στόχου VS_GLOBAL_ εφαρμόζεται πλέον για το VS 2010 και παραπάνω. Προηγουμένως εργάστηκε μόνο στο VS 2008 και κάτω.
  • Ενότητες:
  • Η ενότητα ExternalProject έμαθε μια νέα επιλογή GIT_REMOTE_NAME για να ελέγξει την τιμή του αρχικού κλώνου git.
  • Η ενότητα FindBoost παρέχει πλέον εισαγόμενους στόχους, όπως το σύστημα αρχείων Boost :: boost και Boost ::.
  • Η μακροεντολή FLEX_TARGET της μονάδας FindFLEX έμαθε μια νέα επιλογή DEFINES_FILE για να καθορίσει μια γεννήτρια προσαρμοσμένης εξόδου που θα δημιουργηθεί.
  • Η ενότητα FindGTest παρέχει πλέον εισαγόμενους στόχους.
  • Η ενότητα FindGTK2, όταν το GTK2_USE_IMPORTED_TARGETS είναι ενεργοποιημένο, ορίζει τώρα το GTK2_LIBRARIES να περιέχει τη λίστα των εισαγόμενων στόχων αντί των διαδρομών στις βιβλιοθήκες. Επιπλέον, ορίζει τώρα μια νέα μεταβλητή GTK2_TARGETS που περιέχει όλους τους εισαγόμενους στόχους.
  • Η λειτουργική μονάδα FindOpenMP έμαθε να υποστηρίζει τον Clang.
  • Η ενότητα FindOpenSSL κέρδισε μια νέα OPENSSL_MSVC_STATIC_RT επιλογή για αναζήτηση βιβλιοθηκών χρησιμοποιώντας το static runtime του MSVC.
  • Η ενότητα FindPNG παρέχει τώρα εισαγόμενους στόχους
  • Η ενότητα FindTIFF παρέχει τώρα εισαγόμενους στόχους.
  • Εισήχθη μια ενότητα FindXalanC για να βρει τη βιβλιοθήκη μετασχηματισμού μετασχηματισμού μετασχηματιστών Apache Xalan-C ++.
  • Η ενότητα FindXercesC παρέχει τώρα εισαγόμενους στόχους
  • Πλατφόρμες:
  • Προστέθηκε υποστήριξη για το Compiler ARM (arm.com) με το compiler id ARMCC.
  • Προστέθηκε ένα νέο αρχείο πλατφόρμας για διασταυρωμένη συμπύκνωση στο περιβάλλον Cray Linux για τον υπολογισμό κόμβων στόχου. Δείτε το Cross Compiling για το Cray Linux Environment για λεπτομέρειες χρήσης.
  • Η λειτουργία Compile Features γνωρίζει πλέον τις λειτουργίες που υποστηρίζονται από τους μεταγλωττιστές Clang σε Windows (MinGW).
  • Κατά την οικοδόμηση για ενσωματωμένες πλατφόρμες της Apple όπως το iOS CMake έμαθε να χτίσει και να εγκαταστήσει συνδυασμένους στόχους οι οποίοι περιέχουν τόσο μια συσκευή όσο και μια κατασκευή προσομοιωτή. Αυτή η συμπεριφορά μπορεί να ενεργοποιηθεί θέτοντας την ιδιότητα στόχου IOS_INSTALL_COMBINED.
  • CPack:
  • Η ενότητα CPackDMG έμαθε νέα μεταβλητή για να καθορίσει την εκτέλεση του αρχείου AppleScript για να προσαρμόσει την εμφάνιση του φακέλου εγκατάστασης του DragNDrop, συμπεριλαμβανομένης της ρύθμισης της εικόνας φόντου χρησιμοποιώντας το παρεχόμενο αρχείο PNG ή το αρχείο TIFF πολλαπλής ανάλυσης. Δείτε τις μεταβλητές CPACK_DMG_DS_STORE_SETUP_SCRIPT και CPACK_DMG_BACKGROUND_IMAGE.
  • Η μονάδα CPackDeb μάθει να ρυθμίζει το προαιρετικό πεδίο προέλευσης του αρχείου ρυθμίσεων χρησιμοποιώντας μια μονολιθική μεταβλητή ή μια μεταβλητή ανά συνιστώσα. Δείτε το CPACK_DEBIAN_PACKAGE_SOURCE.
  • Η μονάδα CPackDeb μάθει να ορίζει τα πεδία ελέγχου πακέτων, τομέων και προτεραιοτήτων ανά συνιστώσα. Δείτε μεταβλητές CPACK_DEBIAN__PACKAGE_SECTION και CPACK_DEBIAN__PACKAGE_PRIORITY.
  • Η γεννήτρια του CPack DragNDrop έμαθε να προσθέτει πολυγλωσσικά SLA σε ένα DMG το οποίο παρουσιάζεται στο χρήστη όταν προσπαθεί να τοποθετήσει το DMG. Για λεπτομέρειες, δείτε τις μεταβλητές CPACK_DMG_SLA_LANGUAGES και CPACK_DMG_SLA_DIR.
  • Η ενότητα CPackNSIS έμαθε νέες μεταβλητές για να προσθέσει bitmap στο πρόγραμμα εγκατάστασης. Δείτε τις μεταβλητές CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP και CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
  • Η ενότητα CPackRPM έμαθε να ορίζει τα πεδία ελέγχου ονόματος και ομάδας ανά συνιστώσα. Δείτε το CPACK_RPM__PACKAGE_NAME και το CPACK_RPM__PACKAGE_GROUP.
  • Άλλο:
  • Οι προειδοποιήσεις σχετικά με την υπολειπόμενη λειτουργικότητα είναι πλέον ενεργοποιημένες από προεπιλογή. Μπορεί να κατασταλούν με -Wno-deprecated ή θέτοντας τη μεταβλητή CMAKE_WARN_DEPRECATED σε false.
  • Χαρακτηριστικά που έχουν απενεργοποιηθεί και έχουν καταργηθεί:
  • Η εντολή cmake (1) -E τώρα μεταβιβάζει σωστά τα επιχειρήματα με διαστήματα ή ειδικούς χαρακτήρες μέχρι τη διαδικασία του παιδιού. Αυτό μπορεί να σπάσει τα scripts που δούλεψαν γύρω από το σφάλμα με τη δική τους επιπλέον προσφορά ή διαφυγή.
  • Η γεννήτρια Xcode ήταν στερεωμένη για να αποφεύγει τους backslash σε χορδές με συνέπεια με άλλες γεννήτριες. Τα έργα που έχουν προηγουμένως επεξεργαστεί την ασυνέπεια με ένα επιπλέον επίπεδο backslash που βασίζεται στη γεννήτρια Xcode πρέπει να ενημερωθούν για να καταργηθεί ο τρόπος αντιμετώπισης του CMake 3.5 και μεγαλύτερου.
  • Άλλες αλλαγές:
  • Η γεννήτρια του Visual Studio 14 2015 έμαθε να αντιστοιχίζει τη σημαία / debug: linklinker στην ιδιότητα .vcxproj.
  • Η ενότητα FindGTK2 ρυθμίζει τώρα τον στόχο εισαγωγής GTK2 :: sigc ++ για να ενεργοποιήσει το c ++ 11 στα εξαρτώμενα μέλη του όταν χρησιμοποιεί sigc ++ 2.5.1 ή νεότερη έκδοση.
  • Το πρόθεμα δυαδικών αρχείων των Windows που παρέχεται στο cmake.org είναι τώρα ένα πακέτο .msi αντί για ένα εκτελέσιμο πρόγραμμα εγκατάστασης. Ίσως χρειαστεί να εγκαταστήσετε με μη αυτόματο τρόπο εκδόσεις CMake χαμηλότερες από 3,5 πριν εγκαταστήσετε το νέο πακέτο.

Τι νέο υπάρχει στην έκδοση 3.8.1:

  • Νέες δυνατότητες:
  • GUI:
  • Το cmake-gui (1) απέκτησε επιλογές για τον έλεγχο των προειδοποιήσεων σχετικά με την υπολειπόμενη λειτουργικότητα.
  • Το cmake-gui (1) έμαθε μια επιλογή για να ορίσετε το σύνολο εργαλείων που θα χρησιμοποιηθεί με τις γεννήτριες VS IDE και Xcode, όπως και η υπάρχουσα επιλογή -T για το cmake (1).
  • Το cmake-gui (1) κέρδισε έναν Explorer κανονικής έκφρασης ο οποίος μπορεί να χρησιμοποιηθεί για να δημιουργήσει και να αξιολογήσει κανονικές εκφράσεις σε πραγματικό χρόνο. Το παράθυρο του εξερευνητή είναι διαθέσιμο μέσω του μενού Εργαλεία.
  • Γραμμή εντολών:
  • Οι επιλογές -Wdev και -Wno-dev cmake (1) τώρα ενεργοποιούν και καταργούν εξ ορισμού την εξερχόμενη προειδοποίηση.
  • Η καταστολή των προειδοποιήσεων προγραμματιστών ως σφάλματα μπορεί πλέον να ελεγχθεί με τις νέες επιλογές -Werror = dev και -Wno-error = dev cmake (1).
  • Τα εργαλεία γραμμής εντολών cmake (1) -E, copy_if_different, copy_directory και make_directory έμαθαν να υποστηρίζουν πολλά αρχεία εισόδου ή καταλόγους.
  • Εντολές:
  • Η εντολή cmake_parse_arguments () εφαρμόζεται πλέον εγγενώς. Η ενότητα CMakeParseArguments παραμένει ως άδειο σύμβολο κράτησης θέσης.
  • Η εντολή install (DIRECTORY) έμαθε να υποστηρίζει τις εκφράσεις γεννήτριας στη λίστα των καταλόγων.
  • Μεταβλητές:
  • Η μεταβλητή CMAKE_ERROR_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Werror = απορριφθείσες και -Wno-error = απορριφθέντες συνδυασμούς (1).
  • Η μεταβλητή CMAKE_WARN_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Αντιμετωπισμένη και -Δενεξαιρεθείσα μνήμη (1).
  • Ιδιότητες:
  • Η ιδιότητα στόχου VS_GLOBAL_ εφαρμόζεται πλέον για το VS 2010 και παραπάνω. Προηγουμένως εργάστηκε μόνο στο VS 2008 και κάτω.
  • Ενότητες:
  • Η ενότητα ExternalProject έμαθε μια νέα επιλογή GIT_REMOTE_NAME για να ελέγξει την τιμή του αρχικού κλώνου git.
  • Η ενότητα FindBoost παρέχει πλέον εισαγόμενους στόχους, όπως το σύστημα αρχείων Boost :: boost και Boost ::.
  • Η μακροεντολή FLEX_TARGET της μονάδας FindFLEX έμαθε μια νέα επιλογή DEFINES_FILE για να καθορίσει μια γεννήτρια προσαρμοσμένης εξόδου που θα δημιουργηθεί.
  • Η ενότητα FindGTest παρέχει πλέον εισαγόμενους στόχους.
  • Η ενότητα FindGTK2, όταν το GTK2_USE_IMPORTED_TARGETS είναι ενεργοποιημένο, ορίζει τώρα το GTK2_LIBRARIES να περιέχει τη λίστα των εισαγόμενων στόχων αντί των διαδρομών στις βιβλιοθήκες. Επιπλέον, ορίζει τώρα μια νέα μεταβλητή GTK2_TARGETS που περιέχει όλους τους εισαγόμενους στόχους.
  • Η λειτουργική μονάδα FindOpenMP έμαθε να υποστηρίζει τον Clang.
  • Η ενότητα FindOpenSSL κέρδισε μια νέα OPENSSL_MSVC_STATIC_RT επιλογή για αναζήτηση βιβλιοθηκών χρησιμοποιώντας το static runtime του MSVC.
  • Η ενότητα FindPNG παρέχει τώρα εισαγόμενους στόχους
  • Η ενότητα FindTIFF παρέχει τώρα εισαγόμενους στόχους.
  • Εισήχθη μια ενότητα FindXalanC για να βρει τη βιβλιοθήκη μετασχηματισμού μετασχηματισμού μετασχηματιστών Apache Xalan-C ++.
  • Η ενότητα FindXercesC παρέχει τώρα εισαγόμενους στόχους
  • Πλατφόρμες:
  • Προστέθηκε υποστήριξη για το Compiler ARM (arm.com) με το compiler id ARMCC.
  • Προστέθηκε ένα νέο αρχείο πλατφόρμας για διασταυρωμένη συμπύκνωση στο περιβάλλον Cray Linux για τον υπολογισμό κόμβων στόχου. Δείτε το Cross Compiling για το Cray Linux Environment για λεπτομέρειες χρήσης.
  • Η λειτουργία Compile Features γνωρίζει πλέον τις λειτουργίες που υποστηρίζονται από τους μεταγλωττιστές Clang σε Windows (MinGW).
  • Κατά την οικοδόμηση για ενσωματωμένες πλατφόρμες της Apple όπως το iOS CMake έμαθε να χτίσει και να εγκαταστήσει συνδυασμένους στόχους οι οποίοι περιέχουν τόσο μια συσκευή όσο και μια κατασκευή προσομοιωτή. Αυτή η συμπεριφορά μπορεί να ενεργοποιηθεί θέτοντας την ιδιότητα στόχου IOS_INSTALL_COMBINED.
  • CPack:
  • Η ενότητα CPackDMG έμαθε νέα μεταβλητή για να καθορίσει την εκτέλεση του αρχείου AppleScript για να προσαρμόσει την εμφάνιση του φακέλου εγκατάστασης του DragNDrop, συμπεριλαμβανομένης της ρύθμισης της εικόνας φόντου χρησιμοποιώντας το παρεχόμενο αρχείο PNG ή το αρχείο TIFF πολλαπλής ανάλυσης. Δείτε τις μεταβλητές CPACK_DMG_DS_STORE_SETUP_SCRIPT και CPACK_DMG_BACKGROUND_IMAGE.
  • Η μονάδα CPackDeb μάθει να ρυθμίζει το προαιρετικό πεδίο προέλευσης του αρχείου ρυθμίσεων χρησιμοποιώντας μια μονολιθική μεταβλητή ή μια μεταβλητή ανά συνιστώσα. Δείτε το CPACK_DEBIAN_PACKAGE_SOURCE.
  • Η μονάδα CPackDeb μάθει να ορίζει τα πεδία ελέγχου πακέτων, τομέων και προτεραιοτήτων ανά συνιστώσα. Δείτε μεταβλητές CPACK_DEBIAN__PACKAGE_SECTION και CPACK_DEBIAN__PACKAGE_PRIORITY.
  • Η γεννήτρια του CPack DragNDrop έμαθε να προσθέτει πολυγλωσσικά SLA σε ένα DMG το οποίο παρουσιάζεται στο χρήστη όταν προσπαθεί να τοποθετήσει το DMG. Για λεπτομέρειες, δείτε τις μεταβλητές CPACK_DMG_SLA_LANGUAGES και CPACK_DMG_SLA_DIR.
  • Η ενότητα CPackNSIS έμαθε νέες μεταβλητές για να προσθέσει bitmap στο πρόγραμμα εγκατάστασης. Δείτε τις μεταβλητές CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP και CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
  • Η ενότητα CPackRPM έμαθε να ορίζει τα πεδία ελέγχου ονόματος και ομάδας ανά συνιστώσα. Δείτε το CPACK_RPM__PACKAGE_NAME και το CPACK_RPM__PACKAGE_GROUP.
  • Άλλο:
  • Οι προειδοποιήσεις σχετικά με την υπολειπόμενη λειτουργικότητα είναι πλέον ενεργοποιημένες από προεπιλογή. Μπορεί να κατασταλούν με -Wno-deprecated ή θέτοντας τη μεταβλητή CMAKE_WARN_DEPRECATED σε false.
  • Χαρακτηριστικά που έχουν απενεργοποιηθεί και έχουν καταργηθεί:
  • Η εντολή cmake (1) -E τώρα μεταβιβάζει σωστά τα επιχειρήματα με διαστήματα ή ειδικούς χαρακτήρες μέχρι τη διαδικασία του παιδιού. Αυτό μπορεί να σπάσει τα scripts που δούλεψαν γύρω από το σφάλμα με τη δική τους επιπλέον προσφορά ή διαφυγή.
  • Η γεννήτρια Xcode ήταν στερεωμένη για να αποφεύγει τους backslash σε χορδές με συνέπεια με άλλες γεννήτριες. Τα έργα που έχουν προηγουμένως επεξεργαστεί την ασυνέπεια με ένα επιπλέον επίπεδο backslash που βασίζεται στη γεννήτρια Xcode πρέπει να ενημερωθούν για να καταργηθεί ο τρόπος αντιμετώπισης του CMake 3.5 και μεγαλύτερου.
  • Άλλες αλλαγές:
  • Η γεννήτρια του Visual Studio 14 2015 έμαθε να αντιστοιχίζει τη σημαία / debug: linklinker στην ιδιότητα .vcxproj.
  • Η ενότητα FindGTK2 ρυθμίζει τώρα τον στόχο εισαγωγής GTK2 :: sigc ++ για να ενεργοποιήσει το c ++ 11 στα εξαρτώμενα μέλη του όταν χρησιμοποιεί sigc ++ 2.5.1 ή νεότερη έκδοση.
  • Το πρόθεμα δυαδικών αρχείων των Windows που παρέχεται στο cmake.org είναι τώρα ένα πακέτο .msi αντί για ένα εκτελέσιμο πρόγραμμα εγκατάστασης. Ίσως χρειαστεί να εγκαταστήσετε με μη αυτόματο τρόπο εκδόσεις CMake χαμηλότερες από 3,5 πριν εγκαταστήσετε το νέο πακέτο.

Τι νέο υπάρχει στην έκδοση 3.8.0:

  • Νέες δυνατότητες:
  • GUI:
  • Το cmake-gui (1) απέκτησε επιλογές για τον έλεγχο των προειδοποιήσεων σχετικά με την υπολειπόμενη λειτουργικότητα.
  • Το cmake-gui (1) έμαθε μια επιλογή για να ορίσετε το σύνολο εργαλείων που θα χρησιμοποιηθεί με τις γεννήτριες VS IDE και Xcode, όπως και η υπάρχουσα επιλογή -T για το cmake (1).
  • Το cmake-gui (1) κέρδισε έναν Explorer κανονικής έκφρασης ο οποίος μπορεί να χρησιμοποιηθεί για να δημιουργήσει και να αξιολογήσει κανονικές εκφράσεις σε πραγματικό χρόνο. Το παράθυρο του εξερευνητή είναι διαθέσιμο μέσω του μενού Εργαλεία.
  • Γραμμή εντολών:
  • Οι επιλογές -Wdev και -Wno-dev cmake (1) τώρα ενεργοποιούν και καταργούν εξ ορισμού την εξερχόμενη προειδοποίηση.
  • Η καταστολή των προειδοποιήσεων προγραμματιστών ως σφάλματα μπορεί πλέον να ελεγχθεί με τις νέες επιλογές -Werror = dev και -Wno-error = dev cmake (1).
  • Τα εργαλεία γραμμής εντολών cmake (1) -E, copy_if_different, copy_directory και make_directory έμαθαν να υποστηρίζουν πολλά αρχεία εισόδου ή καταλόγους.
  • Εντολές:
  • Η εντολή cmake_parse_arguments () εφαρμόζεται πλέον εγγενώς. Η ενότητα CMakeParseArguments παραμένει ως άδειο σύμβολο κράτησης θέσης.
  • Η εντολή install (DIRECTORY) έμαθε να υποστηρίζει τις εκφράσεις γεννήτριας στη λίστα των καταλόγων.
  • Μεταβλητές:
  • Η μεταβλητή CMAKE_ERROR_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Werror = απορριφθείσες και -Wno-error = απορριφθέντες συνδυασμούς (1).
  • Η μεταβλητή CMAKE_WARN_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Αντιμετωπισμένη και -Δενεξαιρεθείσα μνήμη (1).
  • Ιδιότητες:
  • Η ιδιότητα στόχου VS_GLOBAL_ εφαρμόζεται πλέον για το VS 2010 και παραπάνω. Προηγουμένως εργάστηκε μόνο στο VS 2008 και κάτω.
  • Ενότητες:
  • Η ενότητα ExternalProject έμαθε μια νέα επιλογή GIT_REMOTE_NAME για να ελέγξει την τιμή του αρχικού κλώνου git.
  • Η ενότητα FindBoost παρέχει πλέον εισαγόμενους στόχους, όπως το σύστημα αρχείων Boost :: boost και Boost ::.
  • Η μακροεντολή FLEX_TARGET της μονάδας FindFLEX έμαθε μια νέα επιλογή DEFINES_FILE για να καθορίσει μια γεννήτρια προσαρμοσμένης εξόδου που θα δημιουργηθεί.
  • Η ενότητα FindGTest παρέχει πλέον εισαγόμενους στόχους.
  • Η ενότητα FindGTK2, όταν το GTK2_USE_IMPORTED_TARGETS είναι ενεργοποιημένο, ορίζει τώρα το GTK2_LIBRARIES να περιέχει τη λίστα των εισαγόμενων στόχων αντί των διαδρομών στις βιβλιοθήκες. Επιπλέον, ορίζει τώρα μια νέα μεταβλητή GTK2_TARGETS που περιέχει όλους τους εισαγόμενους στόχους.
  • Η λειτουργική μονάδα FindOpenMP έμαθε να υποστηρίζει τον Clang.
  • Η ενότητα FindOpenSSL κέρδισε μια νέα OPENSSL_MSVC_STATIC_RT επιλογή για αναζήτηση βιβλιοθηκών χρησιμοποιώντας το static runtime του MSVC.
  • Η ενότητα FindPNG παρέχει τώρα εισαγόμενους στόχους
  • Η ενότητα FindTIFF παρέχει τώρα εισαγόμενους στόχους.
  • Εισήχθη μια ενότητα FindXalanC για να βρει τη βιβλιοθήκη μετασχηματισμού μετασχηματισμού μετασχηματιστών Apache Xalan-C ++.
  • Η ενότητα FindXercesC παρέχει τώρα εισαγόμενους στόχους
  • Πλατφόρμες:
  • Προστέθηκε υποστήριξη για το Compiler ARM (arm.com) με το compiler id ARMCC.
  • Προστέθηκε ένα νέο αρχείο πλατφόρμας για διασταυρωμένη συμπύκνωση στο περιβάλλον Cray Linux για τον υπολογισμό κόμβων στόχου. Δείτε το Cross Compiling για το Cray Linux Environment για λεπτομέρειες χρήσης.
  • Η λειτουργία Compile Features γνωρίζει πλέον τις λειτουργίες που υποστηρίζονται από τους μεταγλωττιστές Clang σε Windows (MinGW).
  • Κατά την οικοδόμηση για ενσωματωμένες πλατφόρμες της Apple όπως το iOS CMake έμαθε να χτίσει και να εγκαταστήσει συνδυασμένους στόχους οι οποίοι περιέχουν τόσο μια συσκευή όσο και μια κατασκευή προσομοιωτή. Αυτή η συμπεριφορά μπορεί να ενεργοποιηθεί θέτοντας την ιδιότητα στόχου IOS_INSTALL_COMBINED.
  • CPack:
  • Η ενότητα CPackDMG έμαθε νέα μεταβλητή για να καθορίσει την εκτέλεση του αρχείου AppleScript για να προσαρμόσει την εμφάνιση του φακέλου εγκατάστασης του DragNDrop, συμπεριλαμβανομένης της ρύθμισης της εικόνας φόντου χρησιμοποιώντας το παρεχόμενο αρχείο PNG ή το αρχείο TIFF πολλαπλής ανάλυσης. Δείτε τις μεταβλητές CPACK_DMG_DS_STORE_SETUP_SCRIPT και CPACK_DMG_BACKGROUND_IMAGE.
  • Η μονάδα CPackDeb μάθει να ρυθμίζει το προαιρετικό πεδίο προέλευσης του αρχείου ρυθμίσεων χρησιμοποιώντας μια μονολιθική μεταβλητή ή μια μεταβλητή ανά συνιστώσα. Δείτε το CPACK_DEBIAN_PACKAGE_SOURCE.
  • Η μονάδα CPackDeb μάθει να ορίζει τα πεδία ελέγχου πακέτων, τομέων και προτεραιοτήτων ανά συνιστώσα. Δείτε μεταβλητές CPACK_DEBIAN__PACKAGE_SECTION και CPACK_DEBIAN__PACKAGE_PRIORITY.
  • Η γεννήτρια του CPack DragNDrop έμαθε να προσθέτει πολυγλωσσικά SLA σε ένα DMG το οποίο παρουσιάζεται στο χρήστη όταν προσπαθεί να τοποθετήσει το DMG. Για λεπτομέρειες, δείτε τις μεταβλητές CPACK_DMG_SLA_LANGUAGES και CPACK_DMG_SLA_DIR.
  • Η ενότητα CPackNSIS έμαθε νέες μεταβλητές για να προσθέσει bitmap στο πρόγραμμα εγκατάστασης. Δείτε τις μεταβλητές CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP και CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
  • Η ενότητα CPackRPM έμαθε να ορίζει τα πεδία ελέγχου ονόματος και ομάδας ανά συνιστώσα. Δείτε το CPACK_RPM__PACKAGE_NAME και το CPACK_RPM__PACKAGE_GROUP.
  • Άλλο:
  • Οι προειδοποιήσεις σχετικά με την απόρριψη λειτουργιών είναι πλέον ενεργοποιημένες από προεπιλογή. Μπορεί να κατασταλούν με -Wno-deprecated ή θέτοντας τη μεταβλητή CMAKE_WARN_DEPRECATED σε false.
  • Χαρακτηριστικά που έχουν απενεργοποιηθεί και έχουν καταργηθεί:
  • Η εντολή cmake (1) -E τώρα μεταβιβάζει σωστά τα επιχειρήματα με διαστήματα ή ειδικούς χαρακτήρες μέχρι τη διαδικασία του παιδιού. Αυτό μπορεί να σπάσει τα scripts που δούλεψαν γύρω από το σφάλμα με τη δική τους επιπλέον προσφορά ή διαφυγή.
  • Η γεννήτρια Xcode ήταν στερεωμένη για να αποφεύγει τους backslash σε χορδές με συνέπεια με άλλες γεννήτριες. Τα έργα που έχουν προηγουμένως επεξεργαστεί την ασυνέπεια με ένα επιπλέον επίπεδο backslash που βασίζεται στη γεννήτρια Xcode πρέπει να ενημερωθούν για να καταργηθεί ο τρόπος αντιμετώπισης του CMake 3.5 και μεγαλύτερου.
  • Άλλες αλλαγές:
  • Η γεννήτρια του Visual Studio 14 2015 έμαθε να αντιστοιχίζει τη σημαία / debug: linklinker στην ιδιότητα .vcxproj.
  • Η ενότητα FindGTK2 ρυθμίζει τώρα τον στόχο εισαγωγής GTK2 :: sigc ++ για να ενεργοποιήσει το c ++ 11 στα εξαρτώμενα μέλη του όταν χρησιμοποιεί sigc ++ 2.5.1 ή νεότερη έκδοση.
  • Το πρόθεμα δυαδικών αρχείων των Windows που παρέχεται στο cmake.org είναι τώρα ένα πακέτο .msi αντί για ένα εκτελέσιμο πρόγραμμα εγκατάστασης. Ίσως χρειαστεί να εγκαταστήσετε με μη αυτόματο τρόπο εκδόσεις CMake χαμηλότερες από 3,5 πριν εγκαταστήσετε το νέο πακέτο.

Τι νέο υπάρχει στην έκδοση 3.7.2:

  • Νέες δυνατότητες:
  • GUI:
  • Το cmake-gui (1) απέκτησε επιλογές για τον έλεγχο των προειδοποιήσεων σχετικά με την υπολειπόμενη λειτουργικότητα.
  • Το cmake-gui (1) έμαθε μια επιλογή για να ορίσετε το σύνολο εργαλείων που θα χρησιμοποιηθεί με τις γεννήτριες VS IDE και Xcode, όπως και η υπάρχουσα επιλογή -T για το cmake (1).
  • Το cmake-gui (1) κέρδισε έναν Explorer κανονικής έκφρασης ο οποίος μπορεί να χρησιμοποιηθεί για να δημιουργήσει και να αξιολογήσει κανονικές εκφράσεις σε πραγματικό χρόνο. Το παράθυρο του εξερευνητή είναι διαθέσιμο μέσω του μενού Εργαλεία.
  • Γραμμή εντολών:
  • Οι επιλογές -Wdev και -Wno-dev cmake (1) τώρα ενεργοποιούν και καταργούν εξ ορισμού την εξερχόμενη προειδοποίηση.
  • Η καταστολή των προειδοποιήσεων προγραμματιστών ως σφάλματα μπορεί πλέον να ελεγχθεί με τις νέες επιλογές -Werror = dev και -Wno-error = dev cmake (1).
  • Τα εργαλεία γραμμής εντολών cmake (1) -E, copy_if_different, copy_directory και make_directory έμαθαν να υποστηρίζουν πολλά αρχεία εισόδου ή καταλόγους.
  • Εντολές:
  • Η εντολή cmake_parse_arguments () εφαρμόζεται πλέον εγγενώς. Η ενότητα CMakeParseArguments παραμένει ως άδειο σύμβολο κράτησης θέσης.
  • Η εντολή install (DIRECTORY) έμαθε να υποστηρίζει τις εκφράσεις γεννήτριας στη λίστα των καταλόγων.
  • Μεταβλητές:
  • Η μεταβλητή CMAKE_ERROR_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Werror = απορριφθείσες και -Wno-error = απορριφθέντες συνδυασμούς (1).
  • Η μεταβλητή CMAKE_WARN_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Αντιμετωπισμένη και -Δενεξαιρεθείσα μνήμη (1).
  • Ιδιότητες:
  • Η ιδιότητα στόχου VS_GLOBAL_ εφαρμόζεται πλέον για το VS 2010 και παραπάνω. Προηγουμένως εργάστηκε μόνο στο VS 2008 και κάτω.
  • Ενότητες:
  • Η ενότητα ExternalProject έμαθε μια νέα επιλογή GIT_REMOTE_NAME για να ελέγξει την τιμή του αρχικού κλώνου git.
  • Η ενότητα FindBoost παρέχει πλέον εισαγόμενους στόχους, όπως το σύστημα αρχείων Boost :: boost και Boost ::.
  • Η μακροεντολή FLEX_TARGET της μονάδας FindFLEX έμαθε μια νέα επιλογή DEFINES_FILE για να καθορίσει μια γεννήτρια προσαρμοσμένης εξόδου που θα δημιουργηθεί.
  • Η ενότητα FindGTest παρέχει πλέον εισαγόμενους στόχους.
  • Η ενότητα FindGTK2, όταν το GTK2_USE_IMPORTED_TARGETS είναι ενεργοποιημένο, ορίζει τώρα το GTK2_LIBRARIES να περιέχει τη λίστα των εισαγόμενων στόχων αντί των διαδρομών στις βιβλιοθήκες. Επιπλέον, ορίζει τώρα μια νέα μεταβλητή GTK2_TARGETS που περιέχει όλους τους εισαγόμενους στόχους.
  • Η λειτουργική μονάδα FindOpenMP έμαθε να υποστηρίζει τον Clang.
  • Η ενότητα FindOpenSSL κέρδισε μια νέα OPENSSL_MSVC_STATIC_RT επιλογή για αναζήτηση βιβλιοθηκών χρησιμοποιώντας το static runtime του MSVC.
  • Η ενότητα FindPNG παρέχει τώρα εισαγόμενους στόχους
  • Η ενότητα FindTIFF παρέχει τώρα εισαγόμενους στόχους.
  • Εισήχθη μια ενότητα FindXalanC για να βρει τη βιβλιοθήκη μετασχηματισμού μετασχηματισμού μετασχηματιστών Apache Xalan-C ++.
  • Η ενότητα FindXercesC παρέχει τώρα εισαγόμενους στόχους
  • Πλατφόρμες:
  • Προστέθηκε υποστήριξη για το Compiler ARM (arm.com) με το compiler id ARMCC.
  • Προστέθηκε ένα νέο αρχείο πλατφόρμας για διασταυρωμένη συμπύκνωση στο περιβάλλον Cray Linux για τον υπολογισμό κόμβων στόχου. Δείτε το Cross Compiling για το Cray Linux Environment για λεπτομέρειες χρήσης.
  • Η λειτουργία Compile Features γνωρίζει πλέον τις λειτουργίες που υποστηρίζονται από τους μεταγλωττιστές Clang σε Windows (MinGW).
  • Κατά την οικοδόμηση για ενσωματωμένες πλατφόρμες της Apple όπως το iOS CMake έμαθε να χτίσει και να εγκαταστήσει συνδυασμένους στόχους οι οποίοι περιέχουν τόσο μια συσκευή όσο και μια κατασκευή προσομοιωτή. Αυτή η συμπεριφορά μπορεί να ενεργοποιηθεί θέτοντας την ιδιότητα στόχου IOS_INSTALL_COMBINED.
  • CPack:
  • Η ενότητα CPackDMG έμαθε νέα μεταβλητή για να καθορίσει την εκτέλεση του αρχείου AppleScript για να προσαρμόσει την εμφάνιση του φακέλου εγκατάστασης του DragNDrop, συμπεριλαμβανομένης της ρύθμισης της εικόνας φόντου χρησιμοποιώντας το παρεχόμενο αρχείο PNG ή το αρχείο TIFF πολλαπλής ανάλυσης. Δείτε τις μεταβλητές CPACK_DMG_DS_STORE_SETUP_SCRIPT και CPACK_DMG_BACKGROUND_IMAGE.
  • Η μονάδα CPackDeb μάθει να ρυθμίζει το προαιρετικό πεδίο προέλευσης του αρχείου ρυθμίσεων χρησιμοποιώντας μια μονολιθική μεταβλητή ή μια μεταβλητή ανά συνιστώσα. Δείτε το CPACK_DEBIAN_PACKAGE_SOURCE.
  • Η μονάδα CPackDeb μάθει να ορίζει τα πεδία ελέγχου πακέτων, τομέων και προτεραιοτήτων ανά συνιστώσα. Δείτε μεταβλητές CPACK_DEBIAN__PACKAGE_SECTION και CPACK_DEBIAN__PACKAGE_PRIORITY.
  • Η γεννήτρια του CPack DragNDrop έμαθε να προσθέτει πολυγλωσσικά SLA σε ένα DMG το οποίο παρουσιάζεται στο χρήστη όταν προσπαθεί να τοποθετήσει το DMG. Για λεπτομέρειες, δείτε τις μεταβλητές CPACK_DMG_SLA_LANGUAGES και CPACK_DMG_SLA_DIR.
  • Η ενότητα CPackNSIS έμαθε νέες μεταβλητές για να προσθέσει bitmap στο πρόγραμμα εγκατάστασης. Δείτε τις μεταβλητές CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP και CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
  • Η ενότητα CPackRPM έμαθε να ορίζει τα πεδία ελέγχου ονόματος και ομάδας ανά συνιστώσα. Δείτε το CPACK_RPM__PACKAGE_NAME και το CPACK_RPM__PACKAGE_GROUP.
  • Άλλο:
  • Οι προειδοποιήσεις σχετικά με την απόρριψη λειτουργιών είναι πλέον ενεργοποιημένες από προεπιλογή. Μπορεί να κατασταλούν με -Wno-deprecated ή θέτοντας τη μεταβλητή CMAKE_WARN_DEPRECATED σε false.
  • Χαρακτηριστικά που έχουν απενεργοποιηθεί και έχουν καταργηθεί:
  • Η εντολή cmake (1) -E τώρα μεταβιβάζει σωστά τα επιχειρήματα με διαστήματα ή ειδικούς χαρακτήρες μέχρι τη διαδικασία του παιδιού. Αυτό μπορεί να σπάσει τα scripts που δούλεψαν γύρω από το σφάλμα με τη δική τους επιπλέον προσφορά ή διαφυγή.
  • Η γεννήτρια Xcode ήταν στερεωμένη για να αποφεύγει τους backslash σε χορδές με συνέπεια με άλλες γεννήτριες. Τα έργα που έχουν προηγουμένως επεξεργαστεί την ασυνέπεια με ένα επιπλέον επίπεδο backslash που βασίζεται στη γεννήτρια Xcode πρέπει να ενημερωθούν για να καταργηθεί ο τρόπος αντιμετώπισης του CMake 3.5 και μεγαλύτερου.
  • Άλλες αλλαγές:
  • Η γεννήτρια του Visual Studio 14 2015 έμαθε να αντιστοιχίζει τη σημαία / debug: linklinker στην ιδιότητα .vcxproj.
  • Η ενότητα FindGTK2 ρυθμίζει τώρα τον στόχο εισαγωγής GTK2 :: sigc ++ για να ενεργοποιήσει το c ++ 11 στα εξαρτώμενα μέλη του όταν χρησιμοποιεί sigc ++ 2.5.1 ή νεότερη έκδοση.
  • Το πρόθεμα δυαδικών αρχείων των Windows που παρέχεται στο cmake.org είναι τώρα ένα πακέτο .msi αντί για ένα εκτελέσιμο πρόγραμμα εγκατάστασης. Ίσως χρειαστεί να εγκαταστήσετε με μη αυτόματο τρόπο εκδόσεις CMake χαμηλότερες από 3,5 πριν εγκαταστήσετε το νέο πακέτο.

Τι νέο υπάρχει στην έκδοση 3.7.1:

  • Νέες δυνατότητες:
  • GUI:
  • Το cmake-gui (1) απέκτησε επιλογές για τον έλεγχο των προειδοποιήσεων σχετικά με την υπολειπόμενη λειτουργικότητα.
  • Το cmake-gui (1) έμαθε μια επιλογή για να ορίσετε το σύνολο εργαλείων που θα χρησιμοποιηθεί με τις γεννήτριες VS IDE και Xcode, όπως και η υπάρχουσα επιλογή -T για το cmake (1).
  • Το cmake-gui (1) κέρδισε έναν Explorer κανονικής έκφρασης ο οποίος μπορεί να χρησιμοποιηθεί για να δημιουργήσει και να αξιολογήσει κανονικές εκφράσεις σε πραγματικό χρόνο. Το παράθυρο του εξερευνητή είναι διαθέσιμο μέσω του μενού Εργαλεία.
  • Γραμμή εντολών:
  • Οι επιλογές -Wdev και -Wno-dev cmake (1) τώρα ενεργοποιούν και καταργούν εξ ορισμού την εξερχόμενη προειδοποίηση.
  • Η καταστολή των προειδοποιήσεων προγραμματιστών ως σφάλματα μπορεί πλέον να ελεγχθεί με τις νέες επιλογές -Werror = dev και -Wno-error = dev cmake (1).
  • Τα εργαλεία γραμμής εντολών cmake (1) -E, copy_if_different, copy_directory και make_directory έμαθαν να υποστηρίζουν πολλά αρχεία εισόδου ή καταλόγους.
  • Εντολές:
  • Η εντολή cmake_parse_arguments () εφαρμόζεται πλέον εγγενώς. Η ενότητα CMakeParseArguments παραμένει ως άδειο σύμβολο κράτησης θέσης.
  • Η εντολή install (DIRECTORY) έμαθε να υποστηρίζει τις εκφράσεις γεννήτριας στη λίστα των καταλόγων.
  • Μεταβλητές:
  • Η μεταβλητή CMAKE_ERROR_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Werror = απορριφθείσες και -Wno-error = απορριφθέντες συνδυασμούς (1).
  • Η μεταβλητή CMAKE_WARN_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Αντιμετωπισμένη και -Δενεξαιρεθείσα μνήμη (1).
  • Ιδιότητες:
  • Η ιδιότητα στόχου VS_GLOBAL_ εφαρμόζεται πλέον για το VS 2010 και παραπάνω. Προηγουμένως εργάστηκε μόνο στο VS 2008 και κάτω.
  • Ενότητες:
  • Η ενότητα ExternalProject έμαθε μια νέα επιλογή GIT_REMOTE_NAME για να ελέγξει την τιμή του αρχικού κλώνου git.
  • Η ενότητα FindBoost παρέχει πλέον εισαγόμενους στόχους, όπως το σύστημα αρχείων Boost :: boost και Boost ::.
  • Η μακροεντολή FLEX_TARGET της μονάδας FindFLEX έμαθε μια νέα επιλογή DEFINES_FILE για να καθορίσει μια γεννήτρια προσαρμοσμένης εξόδου που θα δημιουργηθεί.
  • Η ενότητα FindGTest παρέχει πλέον εισαγόμενους στόχους.
  • Η ενότητα FindGTK2, όταν το GTK2_USE_IMPORTED_TARGETS είναι ενεργοποιημένο, ορίζει τώρα το GTK2_LIBRARIES να περιέχει τη λίστα των εισαγόμενων στόχων αντί των διαδρομών στις βιβλιοθήκες. Επιπλέον, ορίζει τώρα μια νέα μεταβλητή GTK2_TARGETS που περιέχει όλους τους εισαγόμενους στόχους.
  • Η λειτουργική μονάδα FindOpenMP έμαθε να υποστηρίζει τον Clang.
  • Η ενότητα FindOpenSSL κέρδισε μια νέα OPENSSL_MSVC_STATIC_RT επιλογή για αναζήτηση βιβλιοθηκών χρησιμοποιώντας το static runtime του MSVC.
  • Η ενότητα FindPNG παρέχει τώρα εισαγόμενους στόχους
  • Η ενότητα FindTIFF παρέχει τώρα εισαγόμενους στόχους.
  • Εισήχθη μια ενότητα FindXalanC για να βρει τη βιβλιοθήκη μετασχηματισμού μετασχηματισμού μετασχηματιστών Apache Xalan-C ++.
  • Η ενότητα FindXercesC παρέχει τώρα εισαγόμενους στόχους
  • Πλατφόρμες:
  • Προστέθηκε υποστήριξη για το Compiler ARM (arm.com) με το compiler id ARMCC.
  • Προστέθηκε ένα νέο αρχείο πλατφόρμας για διασταυρωμένη συμπύκνωση στο περιβάλλον Cray Linux για τον υπολογισμό κόμβων στόχου. Δείτε το Cross Compiling για το Cray Linux Environment για λεπτομέρειες χρήσης.
  • Η λειτουργία Compile Features γνωρίζει πλέον τις λειτουργίες που υποστηρίζονται από τους μεταγλωττιστές Clang σε Windows (MinGW).
  • Κατά την οικοδόμηση για ενσωματωμένες πλατφόρμες της Apple όπως το iOS CMake έμαθε να χτίσει και να εγκαταστήσει συνδυασμένους στόχους οι οποίοι περιέχουν τόσο μια συσκευή όσο και μια κατασκευή προσομοιωτή. Αυτή η συμπεριφορά μπορεί να ενεργοποιηθεί θέτοντας την ιδιότητα στόχου IOS_INSTALL_COMBINED.
  • CPack:
  • Η ενότητα CPackDMG έμαθε νέα μεταβλητή για να καθορίσει την εκτέλεση του αρχείου AppleScript για να προσαρμόσει την εμφάνιση του φακέλου εγκατάστασης του DragNDrop, συμπεριλαμβανομένης της ρύθμισης της εικόνας φόντου χρησιμοποιώντας το παρεχόμενο αρχείο PNG ή το αρχείο TIFF πολλαπλής ανάλυσης. Δείτε τις μεταβλητές CPACK_DMG_DS_STORE_SETUP_SCRIPT και CPACK_DMG_BACKGROUND_IMAGE.
  • Η μονάδα CPackDeb μάθει να ρυθμίζει το προαιρετικό πεδίο προέλευσης του αρχείου ρυθμίσεων χρησιμοποιώντας μια μονολιθική μεταβλητή ή μια μεταβλητή ανά συνιστώσα. Δείτε το CPACK_DEBIAN_PACKAGE_SOURCE.
  • Η μονάδα CPackDeb μάθει να ορίζει τα πεδία ελέγχου πακέτων, τομέων και προτεραιοτήτων ανά συνιστώσα. Δείτε μεταβλητές CPACK_DEBIAN__PACKAGE_SECTION και CPACK_DEBIAN__PACKAGE_PRIORITY.
  • Η γεννήτρια του CPack DragNDrop έμαθε να προσθέτει πολυγλωσσικά SLA σε ένα DMG το οποίο παρουσιάζεται στο χρήστη όταν προσπαθεί να τοποθετήσει το DMG. Για λεπτομέρειες, δείτε τις μεταβλητές CPACK_DMG_SLA_LANGUAGES και CPACK_DMG_SLA_DIR.
  • Η ενότητα CPackNSIS έμαθε νέες μεταβλητές για να προσθέσει bitmap στο πρόγραμμα εγκατάστασης. Δείτε τις μεταβλητές CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP και CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
  • Η ενότητα CPackRPM έμαθε να ορίζει τα πεδία ελέγχου ονόματος και ομάδας ανά συνιστώσα. Δείτε το CPACK_RPM__PACKAGE_NAME και το CPACK_RPM__PACKAGE_GROUP.
  • Άλλο:
  • Οι προειδοποιήσεις σχετικά με την απόρριψη λειτουργιών είναι πλέον ενεργοποιημένες από προεπιλογή. Μπορεί να κατασταλούν με -Wno-deprecated ή θέτοντας τη μεταβλητή CMAKE_WARN_DEPRECATED σε false.
  • Χαρακτηριστικά που έχουν απενεργοποιηθεί και έχουν καταργηθεί:
  • Η εντολή cmake (1) -E τώρα μεταβιβάζει σωστά τα επιχειρήματα με διαστήματα ή ειδικούς χαρακτήρες μέχρι τη διαδικασία του παιδιού. Αυτό μπορεί να σπάσει τα scripts που δούλεψαν γύρω από το σφάλμα με τη δική τους επιπλέον προσφορά ή διαφυγή.
  • Η γεννήτρια Xcode ήταν στερεωμένη για να αποφεύγει τους backslash σε χορδές με συνέπεια με άλλες γεννήτριες. Τα έργα που έχουν προηγουμένως επεξεργαστεί την ασυνέπεια με ένα επιπλέον επίπεδο backslash που βασίζεται στη γεννήτρια Xcode πρέπει να ενημερωθούν για να καταργηθεί ο τρόπος αντιμετώπισης του CMake 3.5 και μεγαλύτερου.
  • Άλλες αλλαγές:
  • Η γεννήτρια του Visual Studio 14 2015 έμαθε να αντιστοιχίζει τη σημαία / debug: linklinker στην ιδιότητα .vcxproj.
  • Η ενότητα FindGTK2 ρυθμίζει τώρα τον στόχο εισαγωγής GTK2 :: sigc ++ για να ενεργοποιήσει το c ++ 11 στα εξαρτώμενα μέλη του όταν χρησιμοποιεί sigc ++ 2.5.1 ή νεότερη έκδοση.
  • Το πρόθεμα δυαδικών αρχείων των Windows που παρέχεται στο cmake.org είναι τώρα ένα πακέτο .msi αντί για ένα εκτελέσιμο πρόγραμμα εγκατάστασης. Ίσως χρειαστεί να εγκαταστήσετε με μη αυτόματο τρόπο εκδόσεις CMake χαμηλότερες από 3,5 πριν εγκαταστήσετε το νέο πακέτο.

Τι νέο υπάρχει στην έκδοση 3.7.0:

  • Νέες δυνατότητες:
  • GUI:
  • Το cmake-gui (1) απέκτησε επιλογές για τον έλεγχο των προειδοποιήσεων σχετικά με την υπολειπόμενη λειτουργικότητα.
  • Το cmake-gui (1) έμαθε μια επιλογή για να ορίσετε το σύνολο εργαλείων που θα χρησιμοποιηθεί με τις γεννήτριες VS IDE και Xcode, όπως και η υπάρχουσα επιλογή -T για το cmake (1).
  • Το cmake-gui (1) κέρδισε έναν Explorer κανονικής έκφρασης ο οποίος μπορεί να χρησιμοποιηθεί για να δημιουργήσει και να αξιολογήσει κανονικές εκφράσεις σε πραγματικό χρόνο. Το παράθυρο του εξερευνητή είναι διαθέσιμο μέσω του μενού Εργαλεία.
  • Γραμμή εντολών:
  • Οι επιλογές -Wdev και -Wno-dev cmake (1) τώρα ενεργοποιούν και καταργούν εξ ορισμού την εξερχόμενη προειδοποίηση.
  • Η καταστολή των προειδοποιήσεων προγραμματιστών ως σφάλματα μπορεί πλέον να ελεγχθεί με τις νέες επιλογές -Werror = dev και -Wno-error = dev cmake (1).
  • Τα εργαλεία γραμμής εντολών cmake (1) -E, copy_if_different, copy_directory και make_directory έμαθαν να υποστηρίζουν πολλά αρχεία εισόδου ή καταλόγους.
  • Εντολές:
  • Η εντολή cmake_parse_arguments () εφαρμόζεται πλέον εγγενώς. Η ενότητα CMakeParseArguments παραμένει ως άδειο σύμβολο κράτησης θέσης.
  • Η εντολή install (DIRECTORY) έμαθε να υποστηρίζει τις εκφράσεις γεννήτριας στη λίστα των καταλόγων.
  • Μεταβλητές:
  • Η μεταβλητή CMAKE_ERROR_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Werror = απορριφθείσες και -Wno-error = απορριφθέντες συνδυασμούς (1).
  • Η μεταβλητή CMAKE_WARN_DEPRECATED μπορεί πλέον να ρυθμιστεί χρησιμοποιώντας τις επιλογές -Αντιμετωπισμένη και -Δενεξαιρεθείσα μνήμη (1).
  • Ιδιότητες:
  • Η ιδιότητα στόχου VS_GLOBAL_ εφαρμόζεται πλέον για το VS 2010 και παραπάνω. Προηγουμένως εργάστηκε μόνο στο VS 2008 και κάτω.
  • Ενότητες:
  • Η ενότητα ExternalProject έμαθε μια νέα επιλογή GIT_REMOTE_NAME για να ελέγξει την τιμή του αρχικού κλώνου git.
  • Η ενότητα FindBoost παρέχει πλέον εισαγόμενους στόχους, όπως το σύστημα αρχείων Boost :: boost και Boost ::.
  • Η μακροεντολή FLEX_TARGET της μονάδας FindFLEX έμαθε μια νέα επιλογή DEFINES_FILE για να καθορίσει μια γεννήτρια προσαρμοσμένης εξόδου που θα δημιουργηθεί.
  • Η ενότητα FindGTest παρέχει πλέον εισαγόμενους στόχους.
  • Η ενότητα FindGTK2, όταν το GTK2_USE_IMPORTED_TARGETS είναι ενεργοποιημένο, ορίζει τώρα το GTK2_LIBRARIES να περιέχει τη λίστα των εισαγόμενων στόχων αντί των διαδρομών στις βιβλιοθήκες. Επιπλέον, ορίζει τώρα μια νέα μεταβλητή GTK2_TARGETS που περιέχει όλους τους εισαγόμενους στόχους.
  • Η λειτουργική μονάδα FindOpenMP έμαθε να υποστηρίζει τον Clang.
  • Η ενότητα FindOpenSSL κέρδισε μια νέα OPENSSL_MSVC_STATIC_RT επιλογή για αναζήτηση βιβλιοθηκών χρησιμοποιώντας το static runtime του MSVC.
  • Η ενότητα FindPNG παρέχει τώρα εισαγόμενους στόχους
  • Η ενότητα FindTIFF παρέχει τώρα εισαγόμενους στόχους.
  • Εισήχθη μια ενότητα FindXalanC για να βρει τη βιβλιοθήκη μετασχηματισμού μετασχηματισμού μετασχηματιστών Apache Xalan-C ++.
  • Η ενότητα FindXercesC παρέχει τώρα εισαγόμενους στόχους
  • Πλατφόρμες:
  • Προστέθηκε υποστήριξη για το Compiler ARM (arm.com) με το compiler id ARMCC.
  • Προστέθηκε ένα νέο αρχείο πλατφόρμας για διασταυρωμένη συμπύκνωση στο περιβάλλον Cray Linux για τον υπολογισμό κόμβων στόχου. Δείτε το Cross Compiling για το Cray Linux Environment για λεπτομέρειες χρήσης.
  • Η λειτουργία Compile Features γνωρίζει πλέον τις λειτουργίες που υποστηρίζονται από τους μεταγλωττιστές Clang σε Windows (MinGW).
  • Κατά την οικοδόμηση για ενσωματωμένες πλατφόρμες της Apple όπως το iOS CMake έμαθε να χτίσει και να εγκαταστήσει συνδυασμένους στόχους οι οποίοι περιέχουν τόσο μια συσκευή όσο και μια κατασκευή προσομοιωτή. Αυτή η συμπεριφορά μπορεί να ενεργοποιηθεί θέτοντας την ιδιότητα στόχου IOS_INSTALL_COMBINED.
  • CPack:
  • Η ενότητα CPackDMG έμαθε νέα μεταβλητή για να καθορίσει την εκτέλεση του αρχείου AppleScript για να προσαρμόσει την εμφάνιση του φακέλου εγκατάστασης του DragNDrop, συμπεριλαμβανομένης της ρύθμισης της εικόνας φόντου χρησιμοποιώντας το παρεχόμενο αρχείο PNG ή το αρχείο TIFF πολλαπλής ανάλυσης. Δείτε τις μεταβλητές CPACK_DMG_DS_STORE_SETUP_SCRIPT και CPACK_DMG_BACKGROUND_IMAGE.
  • Η μονάδα CPackDeb μάθει να ρυθμίζει το προαιρετικό πεδίο προέλευσης του αρχείου ρυθμίσεων χρησιμοποιώντας μια μονολιθική μεταβλητή ή μια μεταβλητή ανά συνιστώσα. Δείτε το CPACK_DEBIAN_PACKAGE_SOURCE.
  • Η μονάδα CPackDeb μάθει να ορίζει τα πεδία ελέγχου πακέτων, τομέων και προτεραιοτήτων ανά συνιστώσα. Δείτε μεταβλητές CPACK_DEBIAN__PACKAGE_SECTION και CPACK_DEBIAN__PACKAGE_PRIORITY.
  • Η γεννήτρια του CPack DragNDrop έμαθε να προσθέτει πολυγλωσσικά SLA σε ένα DMG το οποίο παρουσιάζεται στο χρήστη όταν προσπαθεί να τοποθετήσει το DMG. Για λεπτομέρειες, δείτε τις μεταβλητές CPACK_DMG_SLA_LANGUAGES και CPACK_DMG_SLA_DIR.
  • Η ενότητα CPackNSIS έμαθε νέες μεταβλητές για να προσθέσει bitmap στο πρόγραμμα εγκατάστασης. Δείτε τις μεταβλητές CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP και CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
  • Η ενότητα CPackRPM έμαθε να ορίζει τα πεδία ελέγχου ονόματος και ομάδας ανά συνιστώσα. Δείτε το CPACK_RPM__PACKAGE_NAME και το CPACK_RPM__PACKAGE_GROUP.
  • Άλλο:
  • Οι προειδοποιήσεις σχετικά με την απόρριψη λειτουργιών είναι πλέον ενεργοποιημένες από προεπιλογή. Μπορεί να κατασταλούν με -Wno-deprecated ή θέτοντας τη μεταβλητή CMAKE_WARN_DEPRECATED σε false.
  • Χαρακτηριστικά που έχουν απενεργοποιηθεί και έχουν καταργηθεί:
  • Η εντολή cmake (1) -E τώρα μεταβιβάζει σωστά τα επιχειρήματα με διαστήματα ή ειδικούς χαρακτήρες μέχρι τη διαδικασία του παιδιού. Αυτό μπορεί να σπάσει τα scripts που δούλεψαν γύρω από το σφάλμα με τη δική τους επιπλέον προσφορά ή διαφυγή.
  • Η γεννήτρια Xcode ήταν στερεωμένη για να αποφεύγει τους backslash σε χορδές με συνέπεια με άλλες γεννήτριες. Τα έργα που έχουν προηγουμένως επεξεργαστεί την ασυνέπεια με ένα επιπλέον επίπεδο backslash που βασίζεται στη γεννήτρια Xcode πρέπει να ενημερωθούν για να καταργηθεί ο τρόπος αντιμετώπισης του CMake 3.5 και μεγαλύτερου.
  • Άλλες αλλαγές:
  • Η γεννήτρια του Visual Studio 14 2015 έμαθε να αντιστοιχίζει τη σημαία / debug: linklinker στην ιδιότητα .vcxproj.
  • Η ενότητα FindGTK2 ρυθμίζει τώρα τον στόχο εισαγωγής GTK2 :: sigc ++ για να ενεργοποιήσει το c ++ 11 στα εξαρτώμενα μέλη του όταν χρησιμοποιεί sigc ++ 2.5.1 ή νεότερη έκδοση.
  • Το πρόθεμα δυαδικών αρχείων των Windows που παρέχεται στο cmake.org είναι τώρα ένα πακέτο .msi αντί για ένα εκτελέσιμο πρόγραμμα εγκατάστασης. Ίσως χρειαστεί να εγκαταστήσετε με μη αυτόματο τρόπο εκδόσεις CMake χαμηλότερες από 3,5 πριν εγκαταστήσετε το νέο πακέτο.

Παρόμοια λογισμικά

GCC
GCC

16 Aug 18

PyInstaller
PyInstaller

18 Feb 15

GromJS
GromJS

20 Feb 15

Box
Box

19 Feb 15

Σχόλια για CMake

Τα σχόλια δεν βρέθηκε
προσθήκη σχολίου
Ενεργοποιήστε τις εικόνες!