CMake to całkowicie darmowy projekt oprogramowania open source, który został zaprojektowany od podstaw jako system kompilacji, kompilator do konfiguracji systemu, generowania preprocesora, tworzenia instancji szablonu i kodu generacji w dowolnym systemie operacyjnym GNU / Linux. Jest to program wiersza poleceń, który działa w całości ze środowiska konsoli / terminala.
Funkcje na pierwszy rzut oka
Najważniejsze funkcje obejmują obsługę złożonych środowisk o dużych rozmiarach, możliwość generowania rodzimych plików kompilacji, zaawansowane polecenia umożliwiające programistom lokalizowanie plików włączających, plików wykonywalnych i bibliotek, zewnętrznych plików CMake zawierających standardowe funkcje, interfejs z systemami testowymi, jako oraz wsparcie rekursywnego przeglądania katalogów z dziedziczeniem zmiennych.
Dodatkowo, CMake obsługuje kompilacje poza miejscem i na miejscu, obsługuje konstrukcje warunkowe, obsługuje ekspansję wyrażenia regularnego i wiele drzew kompilacji z drzewa pojedynczego źródła. Można go łatwo rozszerzyć, dodając nowe funkcje i umożliwiając uruchamianie programów zewnętrznych.
Opcje wiersza poleceń
Program zawiera wiele opcji wiersza polecenia, zorganizowanych w dwóch głównych sekcjach, Opcje i Generatory. Programiści będą mogli wypełniać pamięć podręczną przez wstępne ładowanie skryptów, generować wpisy pamięci podręcznej cmake, włączać lub wyłączać ostrzeżenia programistów, określać generator systemu i nazwę zestawu narzędzi, a także uruchamiać go w różnych trybach lub drukować różne informacje.
Z drugiej strony kompilator CMake umożliwia generowanie standardowych plików makefile UNIX, plików build.ninja, a także plików projektów dla CodeBlocks, CodeLite, Eclipse, KDevelop, Kate i Sublime Text 2.
Obsługiwane systemy operacyjne
Poza GNU / Linux, CMake został pomyślnie przetestowany pod komercyjnymi systemami operacyjnymi Microsoft Windows i Mac OS X. W tej chwili obsługiwane są zarówno 64-bitowe, jak i 32-bitowe architektury zestawów instrukcji.
Pod maską i dostępnością
CMake jest napisany w całości w języku programowania C ++, jest to oprogramowanie wieloplatformowe (patrz sekcja poniżej dla obsługiwanych systemów operacyjnych) i jest dostępne do pobrania jako uniwersalne archiwum źródeł, a także gotowe pakiety binarne dla wyżej wymienione systemy operacyjne.
Co nowego w tej wersji:
- Nowe funkcje:
- GUI:
- cmake-gui (1) uzyskał opcje kontrolowania ostrzeżeń o przestarzałej funkcjonalności.
- cmake-gui (1) nauczył się ustawić zestaw narzędzi do użycia z generatorami VS IDE i Xcode, podobnie jak istniejąca opcja -T do cmake (1).
- cmake-gui (1) uzyskał Eksplorator wyrażeń regularnych, który może być używany do tworzenia i oceniania wyrażeń regularnych w czasie rzeczywistym. Okno eksploratora jest dostępne w menu Narzędzia.
- Wiersz poleceń:
- Opcje cmake (1) -Wdev i -Wno-dev umożliwiają teraz domyślne wyłączanie i ignorowanie wycofanych ostrzeżeń.
- Tłumienie ostrzeżeń programistów jako błędów można teraz kontrolować za pomocą nowych opcji -Werror = dev i -Wno-error = dev cmake (1).
- Narzędzia cmake (1) -E wiersza poleceń, copy_if_different, copy_directory i make_directory nauczyły się obsługiwać wiele plików wejściowych lub katalogów.
- Polecenia:
- Polecenie cmake_parse_arguments () jest teraz zaimplementowane natywnie. Moduł CMakeParseArguments pozostaje pusty jako symbol zastępczy dla zgodności.
- Komenda install (DIRECTORY) nauczyła się obsługi wyrażeń generatora na liście katalogów.
- Zmienne:
- Zmienna CMAKE_ERROR_DEPRECATED może teraz zostać ustawiona przy użyciu opcji -Werror = przestarzałe i -Wno-błąd = przestarzałe cmake (1).
- Zmienna CMAKE_WARN_DEPRECATED może być teraz ustawiona przy użyciu opcji cmake (1) -Wdeprecated i -Wno-deprecated.
- Właściwości:
- Właściwość target VS_GLOBAL_ jest teraz zaimplementowana dla wersji VS 2010 i nowszych. Poprzednio działało tylko w VS 2008 i poniżej.
- Moduły:
- Moduł ExternalProject nauczył się nowej opcji GIT_REMOTE_NAME, aby kontrolować wartość git clone --origin.
- Moduł FindBoost zapewnia teraz zaimportowane obiekty docelowe, takie jak Boost :: boost i Boost :: filesystem.
- Makro FLEX_TARGET modułu FindFLEX nauczyło się nowej opcji DEFINES_FILE do określenia niestandardowego generowanego nagłówka wyjściowego.
- Moduł FindGTest dostarcza teraz zaimportowane obiekty docelowe.
- Moduł FindGTK2, gdy włączona jest opcja GTK2_USE_IMPORTED_TARGETS, teraz ustawia GTK2_LIBRARIES tak, aby zawierał listę zaimportowanych obiektów docelowych zamiast ścieżek do bibliotek. Ponadto teraz ustawia nową zmienną GTK2_TARGETS zawierającą wszystkie cele zaimportowane.
- Moduł FindOpenMP nauczył się obsługiwać Clang.
- Moduł FindOpenSSL uzyskał nową opcję OPENSSL_MSVC_STATIC_RT w celu wyszukiwania bibliotek przy użyciu statycznego środowiska wykonawczego MSVC.
- Moduł FindPNG zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindTIFF zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindXalanC został wprowadzony w celu znalezienia biblioteki przetwarzania transformacji XSL Xache-C ++.
- Moduł FindXercesC zapewnia teraz zaimportowane obiekty docelowe.
- Platformy:
- Dodano wsparcie dla kompilatora ARM (arm.com) z identyfikatorem kompilatora ARMCC.
- Dodano nowy plik platformy do kompilacji krzyżowej w środowisku Cray Linux, aby skierować węzły obliczeniowe. Zobacz Cross Compiling dla środowiska Cray Linux dla szczegółów użycia.
- Funkcja Kompiluj funkcje zna teraz funkcje obsługiwane przez kompilatory Clang w systemie Windows (MinGW).
- Budując wbudowane platformy Apple, takie jak iOS, CMake nauczył się budować i instalować kombinowane obiekty docelowe, które zawierają zarówno urządzenie, jak i wersję symulatora. To zachowanie można włączyć, ustawiając właściwość docelową IOS_INSTALL_COMBINED.
- CPack:
- Moduł CPackDMG nauczył się nowej zmiennej, aby określić uruchamianie pliku AppleScript w celu dostosowania wyglądu folderu instalacyjnego DragNDrop, w tym ustawienia obrazu tła przy użyciu dostarczonego pliku PNG lub pliku TIFF o wielu rozdzielczościach. Zobacz zmienne CPACK_DMG_DS_STORE_SETUP_SCRIPT i CPACK_DMG_BACKGROUND_IMAGE.
- Moduł CPackDeb nauczył się ustawiania opcjonalnego pliku źródłowego pliku konfiguracyjnego przy użyciu zmiennej monolitycznej lub na składnik. Zobacz CPACK_DEBIAN_PACKAGE_SOURCE.
- Moduł CPackDeb nauczył się ustawiania pól kontrolnych Pakietu, Sekcji i Priorytetu na komponent. Zobacz zmienne CPACK_DEBIAN__PACKAGE_SECTION i CPACK_DEBIAN__PACKAGE_PRIORITY.
- Generator DragPack CPack nauczył się dodawać SLA do wielu języków do DMG, który jest prezentowany użytkownikowi podczas próby montażu DMG. Szczegółowe informacje zawiera zmienne CPACK_DMG_SLA_LANGUAGES i CPACK_DMG_SLA_DIR.
- Moduł CPackNSIS nauczył się nowych zmiennych, aby dodać bitmapy do instalatora. Zobacz zmienne CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP i CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
- Moduł CPackRPM nauczył się ustawiać pola kontrolne Nazwa i Grupa na składnik. Zobacz CPACK_RPM__PACKAGE_NAME i CPACK_RPM__PACKAGE_GROUP.
- Inne:
- Ostrzeżenia dotyczące przestarzałych funkcji są teraz domyślnie włączone. Mogą być one pomijane za pomocą opcji -Wno-zdezaktualizowane lub przez ustawienie zmiennej CMAKE_WARN_DEPRECATED na wartość false.
- Przestarzałe i usunięte funkcje:
- Polecenie cmake (1) -E time teraz poprawnie przekazuje argumenty ze spacjami lub znakami specjalnymi do procesu potomnego. Może to zepsuć skrypty, które pracowały nad błędem z ich własnym dodatkowym cytowaniem lub ucieczką.
- Generator Xcode został ustawiony tak, aby konsekwentnie usuwał ukośniki odwrotne w ciągach z innymi generatorami. Projekty, które wcześniej pracowały nad niespójnością z dodatkowym poziomem ukośników odwróconych uwarunkowanych w generatorze Xcode, muszą zostać zaktualizowane, aby usunąć obejście dla CMake 3.5 i nowszych.
- Inne zmiany:
- Generator Visual Studio 14 2015 nauczył się mapować flagę / debug: fastlink linker na właściwość pliku .vcxproj.
- Moduł FindGTK2 konfiguruje teraz zaimportowany cel GTK2 :: sigc ++, aby umożliwić c ++ 11 na jego podległych stronach, używając sigc ++ 2.5.1 lub nowszego.
- Prekompilowany plik binarny systemu Windows dostarczany w cmake.org jest teraz pakietem .msi, a nie instalatorem. Przed zainstalowaniem nowego pakietu może być konieczne ręczne odinstalowanie wersji CMake niższej niż 3.5.
Co nowego w wersji 3.11.4:
- Nowe funkcje:
- GUI:
- cmake-gui (1) uzyskał opcje kontrolowania ostrzeżeń o przestarzałej funkcjonalności.
- cmake-gui (1) nauczył się ustawić zestaw narzędzi do użycia z generatorami VS IDE i Xcode, podobnie jak istniejąca opcja -T do cmake (1).
- cmake-gui (1) uzyskał Eksplorator wyrażeń regularnych, który może być używany do tworzenia i oceniania wyrażeń regularnych w czasie rzeczywistym. Okno eksploratora jest dostępne w menu Narzędzia.
- Wiersz poleceń:
- Opcje cmake (1) -Wdev i -Wno-dev umożliwiają teraz domyślne wyłączanie i ignorowanie wycofanych ostrzeżeń.
- Tłumienie ostrzeżeń programistów jako błędów można teraz kontrolować za pomocą nowych opcji -Werror = dev i -Wno-error = dev cmake (1).
- Narzędzia cmake (1) -E wiersza poleceń, copy_if_different, copy_directory i make_directory nauczyły się obsługiwać wiele plików wejściowych lub katalogów.
- Polecenia:
- Polecenie cmake_parse_arguments () jest teraz zaimplementowane natywnie. Moduł CMakeParseArguments pozostaje pusty jako symbol zastępczy dla zgodności.
- Komenda install (DIRECTORY) nauczyła się obsługi wyrażeń generatora na liście katalogów.
- Zmienne:
- Zmienna CMAKE_ERROR_DEPRECATED może teraz zostać ustawiona przy użyciu opcji -Werror = przestarzałe i -Wno-błąd = przestarzałe cmake (1).
- Zmienna CMAKE_WARN_DEPRECATED może być teraz ustawiona przy użyciu opcji cmake (1) -Wdeprecated i -Wno-deprecated.
- Właściwości:
- Właściwość target VS_GLOBAL_ jest teraz zaimplementowana dla wersji VS 2010 i nowszych. Poprzednio działało tylko w VS 2008 i poniżej.
- Moduły:
- Moduł ExternalProject nauczył się nowej opcji GIT_REMOTE_NAME, aby kontrolować wartość git clone --origin.
- Moduł FindBoost zapewnia teraz zaimportowane obiekty docelowe, takie jak Boost :: boost i Boost :: filesystem.
- Makro FLEX_TARGET modułu FindFLEX nauczyło się nowej opcji DEFINES_FILE do określenia niestandardowego generowanego nagłówka wyjściowego.
- Moduł FindGTest dostarcza teraz zaimportowane obiekty docelowe.
- Moduł FindGTK2, gdy włączona jest opcja GTK2_USE_IMPORTED_TARGETS, teraz ustawia GTK2_LIBRARIES tak, aby zawierał listę zaimportowanych obiektów docelowych zamiast ścieżek do bibliotek. Ponadto teraz ustawia nową zmienną GTK2_TARGETS zawierającą wszystkie cele zaimportowane.
- Moduł FindOpenMP nauczył się obsługiwać Clang.
- Moduł FindOpenSSL uzyskał nową opcję OPENSSL_MSVC_STATIC_RT w celu wyszukiwania bibliotek przy użyciu statycznego środowiska wykonawczego MSVC.
- Moduł FindPNG zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindTIFF zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindXalanC został wprowadzony w celu znalezienia biblioteki przetwarzania transformacji XSL Xache-C ++.
- Moduł FindXercesC zapewnia teraz zaimportowane obiekty docelowe.
- Platformy:
- Dodano wsparcie dla kompilatora ARM (arm.com) z identyfikatorem kompilatora ARMCC.
- Dodano nowy plik platformy do kompilacji krzyżowej w środowisku Cray Linux, aby skierować węzły obliczeniowe. Zobacz Cross Compiling dla środowiska Cray Linux dla szczegółów użycia.
- Funkcja Kompiluj funkcje zna teraz funkcje obsługiwane przez kompilatory Clang w systemie Windows (MinGW).
- Budując wbudowane platformy Apple, takie jak iOS, CMake nauczył się budować i instalować kombinowane obiekty docelowe, które zawierają zarówno urządzenie, jak i wersję symulatora. To zachowanie można włączyć, ustawiając właściwość docelową IOS_INSTALL_COMBINED.
- CPack:
- Moduł CPackDMG nauczył się nowej zmiennej, aby określić uruchamianie pliku AppleScript w celu dostosowania wyglądu folderu instalacyjnego DragNDrop, w tym ustawienia obrazu tła przy użyciu dostarczonego pliku PNG lub pliku TIFF o wielu rozdzielczościach. Zobacz zmienne CPACK_DMG_DS_STORE_SETUP_SCRIPT i CPACK_DMG_BACKGROUND_IMAGE.
- Moduł CPackDeb nauczył się ustawiania opcjonalnego pliku źródłowego pliku konfiguracyjnego przy użyciu zmiennej monolitycznej lub na składnik. Zobacz CPACK_DEBIAN_PACKAGE_SOURCE.
- Moduł CPackDeb nauczył się ustawiania pól kontrolnych Pakietu, Sekcji i Priorytetu na komponent. Zobacz zmienne CPACK_DEBIAN__PACKAGE_SECTION i CPACK_DEBIAN__PACKAGE_PRIORITY.
- Generator DragPack CPack nauczył się dodawać SLA do wielu języków do DMG, który jest prezentowany użytkownikowi podczas próby montażu DMG. Szczegółowe informacje zawiera zmienne CPACK_DMG_SLA_LANGUAGES i CPACK_DMG_SLA_DIR.
- Moduł CPackNSIS nauczył się nowych zmiennych, aby dodać bitmapy do instalatora. Zobacz zmienne CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP i CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
- Moduł CPackRPM nauczył się ustawiać pola kontrolne Nazwa i Grupa na składnik. Zobacz CPACK_RPM__PACKAGE_NAME i CPACK_RPM__PACKAGE_GROUP.
- Inne:
- Ostrzeżenia dotyczące przestarzałych funkcji są teraz domyślnie włączone. Mogą być one pomijane za pomocą opcji -Wno-zdezaktualizowane lub przez ustawienie zmiennej CMAKE_WARN_DEPRECATED na wartość false.
- Przestarzałe i usunięte funkcje:
- Polecenie cmake (1) -E time teraz poprawnie przekazuje argumenty ze spacjami lub znakami specjalnymi do procesu potomnego. Może to zepsuć skrypty, które pracowały nad błędem z ich własnym dodatkowym cytowaniem lub ucieczką.
- Generator Xcode został ustawiony tak, aby konsekwentnie usuwał ukośniki odwrotne w ciągach z innymi generatorami. Projekty, które wcześniej pracowały nad niespójnością z dodatkowym poziomem ukośników odwróconych uwarunkowanych w generatorze Xcode, muszą zostać zaktualizowane, aby usunąć obejście dla CMake 3.5 i nowszych.
- Inne zmiany:
- Generator Visual Studio 14 2015 nauczył się mapować flagę / debug: fastlink linker na właściwość pliku .vcxproj.
- Moduł FindGTK2 konfiguruje teraz zaimportowany cel GTK2 :: sigc ++, aby umożliwić c ++ 11 na jego podległych stronach, używając sigc ++ 2.5.1 lub nowszego.
- Prekompilowany plik binarny systemu Windows dostarczany w cmake.org jest teraz pakietem .msi, a nie instalatorem. Przed zainstalowaniem nowego pakietu może być konieczne ręczne odinstalowanie wersji CMake niższej niż 3.5.
Co nowego w wersji:
- Nowe funkcje:
- GUI:
- cmake-gui (1) uzyskał opcje kontrolowania ostrzeżeń o przestarzałej funkcjonalności.
- cmake-gui (1) nauczył się ustawić zestaw narzędzi do użycia z generatorami VS IDE i Xcode, podobnie jak istniejąca opcja -T do cmake (1).
- cmake-gui (1) uzyskał Eksplorator wyrażeń regularnych, który może być używany do tworzenia i oceniania wyrażeń regularnych w czasie rzeczywistym. Okno eksploratora jest dostępne w menu Narzędzia.
- Wiersz poleceń:
- Opcje cmake (1) -Wdev i -Wno-dev umożliwiają teraz domyślne wyłączanie i ignorowanie wycofanych ostrzeżeń.
- Tłumienie ostrzeżeń programistów jako błędów można teraz kontrolować za pomocą nowych opcji -Werror = dev i -Wno-error = dev cmake (1).
- Narzędzia cmake (1) -E wiersza poleceń, copy_if_different, copy_directory i make_directory nauczyły się obsługiwać wiele plików wejściowych lub katalogów.
- Polecenia:
- Polecenie cmake_parse_arguments () jest teraz zaimplementowane natywnie. Moduł CMakeParseArguments pozostaje pusty jako symbol zastępczy dla zgodności.
- Komenda install (DIRECTORY) nauczyła się obsługi wyrażeń generatora na liście katalogów.
- Zmienne:
- Zmienna CMAKE_ERROR_DEPRECATED może teraz zostać ustawiona przy użyciu opcji -Werror = przestarzałe i -Wno-błąd = przestarzałe cmake (1).
- Zmienna CMAKE_WARN_DEPRECATED może być teraz ustawiona przy użyciu opcji cmake (1) -Wdeprecated i -Wno-deprecated.
- Właściwości:
- Właściwość target VS_GLOBAL_ jest teraz zaimplementowana dla wersji VS 2010 i nowszych. Poprzednio działało tylko w VS 2008 i poniżej.
- Moduły:
- Moduł ExternalProject nauczył się nowej opcji GIT_REMOTE_NAME, aby kontrolować wartość git clone --origin.
- Moduł FindBoost zapewnia teraz zaimportowane obiekty docelowe, takie jak Boost :: boost i Boost :: filesystem.
- Makro FLEX_TARGET modułu FindFLEX nauczyło się nowej opcji DEFINES_FILE do określenia niestandardowego generowanego nagłówka wyjściowego.
- Moduł FindGTest dostarcza teraz zaimportowane obiekty docelowe.
- Moduł FindGTK2, gdy włączona jest opcja GTK2_USE_IMPORTED_TARGETS, teraz ustawia GTK2_LIBRARIES tak, aby zawierał listę zaimportowanych obiektów docelowych zamiast ścieżek do bibliotek. Ponadto teraz ustawia nową zmienną GTK2_TARGETS zawierającą wszystkie cele zaimportowane.
- Moduł FindOpenMP nauczył się obsługiwać Clang.
- Moduł FindOpenSSL uzyskał nową opcję OPENSSL_MSVC_STATIC_RT w celu wyszukiwania bibliotek przy użyciu statycznego środowiska wykonawczego MSVC.
- Moduł FindPNG zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindTIFF zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindXalanC został wprowadzony w celu znalezienia biblioteki przetwarzania transformacji XSL Xache-C ++.
- Moduł FindXercesC zapewnia teraz zaimportowane obiekty docelowe.
- Platformy:
- Dodano wsparcie dla kompilatora ARM (arm.com) z identyfikatorem kompilatora ARMCC.
- Dodano nowy plik platformy do kompilacji krzyżowej w środowisku Cray Linux, aby skierować węzły obliczeniowe. Zobacz Cross Compiling dla środowiska Cray Linux dla szczegółów użycia.
- Funkcja Kompiluj funkcje zna teraz funkcje obsługiwane przez kompilatory Clang w systemie Windows (MinGW).
- Budując wbudowane platformy Apple, takie jak iOS, CMake nauczył się budować i instalować kombinowane obiekty docelowe, które zawierają zarówno urządzenie, jak i wersję symulatora. To zachowanie można włączyć, ustawiając właściwość docelową IOS_INSTALL_COMBINED.
- CPack:
- Moduł CPackDMG nauczył się nowej zmiennej, aby określić uruchamianie pliku AppleScript w celu dostosowania wyglądu folderu instalacyjnego DragNDrop, w tym ustawienia obrazu tła przy użyciu dostarczonego pliku PNG lub pliku TIFF o wielu rozdzielczościach. Zobacz zmienne CPACK_DMG_DS_STORE_SETUP_SCRIPT i CPACK_DMG_BACKGROUND_IMAGE.
- Moduł CPackDeb nauczył się ustawiania opcjonalnego pliku źródłowego pliku konfiguracyjnego przy użyciu zmiennej monolitycznej lub na składnik. Zobacz CPACK_DEBIAN_PACKAGE_SOURCE.
- Moduł CPackDeb nauczył się ustawiania pól kontrolnych Pakietu, Sekcji i Priorytetu na komponent. Zobacz zmienne CPACK_DEBIAN__PACKAGE_SECTION i CPACK_DEBIAN__PACKAGE_PRIORITY.
- Generator DragPack CPack nauczył się dodawać SLA do wielu języków do DMG, który jest prezentowany użytkownikowi podczas próby montażu DMG. Szczegółowe informacje zawiera zmienne CPACK_DMG_SLA_LANGUAGES i CPACK_DMG_SLA_DIR.
- Moduł CPackNSIS nauczył się nowych zmiennych, aby dodać bitmapy do instalatora. Zobacz zmienne CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP i CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
- Moduł CPackRPM nauczył się ustawiać pola kontrolne Nazwa i Grupa na składnik. Zobacz CPACK_RPM__PACKAGE_NAME i CPACK_RPM__PACKAGE_GROUP.
- Inne:
- Ostrzeżenia dotyczące przestarzałych funkcji są teraz domyślnie włączone. Mogą być one pomijane za pomocą opcji -Wno-zdezaktualizowane lub przez ustawienie zmiennej CMAKE_WARN_DEPRECATED na wartość false.
- Przestarzałe i usunięte funkcje:
- Polecenie cmake (1) -E time teraz poprawnie przekazuje argumenty ze spacjami lub znakami specjalnymi do procesu potomnego. Może to zepsuć skrypty, które pracowały nad błędem z ich własnym dodatkowym cytowaniem lub ucieczką.
- Generator Xcode został ustawiony tak, aby konsekwentnie usuwał ukośniki odwrotne w ciągach z innymi generatorami. Projekty, które wcześniej pracowały nad niespójnością z dodatkowym poziomem ukośników odwróconych uwarunkowanych w generatorze Xcode, muszą zostać zaktualizowane, aby usunąć obejście dla CMake 3.5 i nowszych.
- Inne zmiany:
- Generator Visual Studio 14 2015 nauczył się mapować flagę / debug: fastlink linker na właściwość pliku .vcxproj.
- Moduł FindGTK2 konfiguruje teraz zaimportowany cel GTK2 :: sigc ++, aby umożliwić c ++ 11 na jego podległych stronach, używając sigc ++ 2.5.1 lub nowszego.
- Prekompilowany plik binarny systemu Windows dostarczany w cmake.org jest teraz pakietem .msi, a nie instalatorem. Przed zainstalowaniem nowego pakietu może być konieczne ręczne odinstalowanie wersji CMake niższej niż 3.5.
Co nowego w wersji 3.9.2:
- Nowe funkcje:
- GUI:
- cmake-gui (1) uzyskał opcje kontrolowania ostrzeżeń o przestarzałej funkcjonalności.
- cmake-gui (1) nauczył się ustawić zestaw narzędzi do użycia z generatorami VS IDE i Xcode, podobnie jak istniejąca opcja -T do cmake (1).
- cmake-gui (1) uzyskał Eksplorator wyrażeń regularnych, który może być używany do tworzenia i oceniania wyrażeń regularnych w czasie rzeczywistym. Okno eksploratora jest dostępne w menu Narzędzia.
- Wiersz poleceń:
- Opcje cmake (1) -Wdev i -Wno-dev umożliwiają teraz domyślne wyłączanie i ignorowanie wycofanych ostrzeżeń.
- Tłumienie ostrzeżeń programistów jako błędów można teraz kontrolować za pomocą nowych opcji -Werror = dev i -Wno-error = dev cmake (1).
- Narzędzia cmake (1) -E wiersza poleceń, copy_if_different, copy_directory i make_directory nauczyły się obsługiwać wiele plików wejściowych lub katalogów.
- Polecenia:
- Polecenie cmake_parse_arguments () jest teraz zaimplementowane natywnie. Moduł CMakeParseArguments pozostaje pusty jako symbol zastępczy dla zgodności.
- Komenda install (DIRECTORY) nauczyła się obsługi wyrażeń generatora na liście katalogów.
- Zmienne:
- Zmienna CMAKE_ERROR_DEPRECATED może teraz zostać ustawiona przy użyciu opcji -Werror = przestarzałe i -Wno-błąd = przestarzałe cmake (1).
- Zmienna CMAKE_WARN_DEPRECATED może być teraz ustawiona przy użyciu opcji cmake (1) -Wdeprecated i -Wno-deprecated.
- Właściwości:
- Właściwość target VS_GLOBAL_ jest teraz zaimplementowana dla wersji VS 2010 i nowszych. Poprzednio działało tylko w VS 2008 i poniżej.
- Moduły:
- Moduł ExternalProject nauczył się nowej opcji GIT_REMOTE_NAME, aby kontrolować wartość git clone --origin.
- Moduł FindBoost zapewnia teraz zaimportowane obiekty docelowe, takie jak Boost :: boost i Boost :: filesystem.
- Makro FLEX_TARGET modułu FindFLEX nauczyło się nowej opcji DEFINES_FILE do określenia niestandardowego generowanego nagłówka wyjściowego.
- Moduł FindGTest dostarcza teraz zaimportowane obiekty docelowe.
- Moduł FindGTK2, gdy włączona jest opcja GTK2_USE_IMPORTED_TARGETS, teraz ustawia GTK2_LIBRARIES tak, aby zawierał listę zaimportowanych obiektów docelowych zamiast ścieżek do bibliotek. Ponadto teraz ustawia nową zmienną GTK2_TARGETS zawierającą wszystkie cele zaimportowane.
- Moduł FindOpenMP nauczył się obsługiwać Clang.
- Moduł FindOpenSSL uzyskał nową opcję OPENSSL_MSVC_STATIC_RT w celu wyszukiwania bibliotek przy użyciu statycznego środowiska wykonawczego MSVC.
- Moduł FindPNG zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindTIFF zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindXalanC został wprowadzony w celu znalezienia biblioteki przetwarzania transformacji XSL Xache-C ++.
- Moduł FindXercesC zapewnia teraz zaimportowane obiekty docelowe.
- Platformy:
- Dodano wsparcie dla kompilatora ARM (arm.com) z identyfikatorem kompilatora ARMCC.
- Dodano nowy plik platformy do kompilacji krzyżowej w środowisku Cray Linux, aby skierować węzły obliczeniowe. Zobacz Cross Compiling dla środowiska Cray Linux dla szczegółów użycia.
- Funkcja Kompiluj funkcje zna teraz funkcje obsługiwane przez kompilatory Clang w systemie Windows (MinGW).
- Budując wbudowane platformy Apple, takie jak iOS, CMake nauczył się budować i instalować kombinowane obiekty docelowe, które zawierają zarówno urządzenie, jak i wersję symulatora. To zachowanie można włączyć, ustawiając właściwość docelową IOS_INSTALL_COMBINED.
- CPack:
- Moduł CPackDMG nauczył się nowej zmiennej, aby określić uruchamianie pliku AppleScript w celu dostosowania wyglądu folderu instalacyjnego DragNDrop, w tym ustawienia obrazu tła przy użyciu dostarczonego pliku PNG lub pliku TIFF o wielu rozdzielczościach. Zobacz zmienne CPACK_DMG_DS_STORE_SETUP_SCRIPT i CPACK_DMG_BACKGROUND_IMAGE.
- Moduł CPackDeb nauczył się ustawiania opcjonalnego pliku źródłowego pliku konfiguracyjnego przy użyciu zmiennej monolitycznej lub na składnik. Zobacz CPACK_DEBIAN_PACKAGE_SOURCE.
- Moduł CPackDeb nauczył się ustawiania pól kontrolnych Pakietu, Sekcji i Priorytetu na komponent. Zobacz zmienne CPACK_DEBIAN__PACKAGE_SECTION i CPACK_DEBIAN__PACKAGE_PRIORITY.
- Generator DragPack CPack nauczył się dodawać SLA do wielu języków do DMG, który jest prezentowany użytkownikowi podczas próby montażu DMG. Szczegółowe informacje zawiera zmienne CPACK_DMG_SLA_LANGUAGES i CPACK_DMG_SLA_DIR.
- Moduł CPackNSIS nauczył się nowych zmiennych, aby dodać bitmapy do instalatora. Zobacz zmienne CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP i CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
- Moduł CPackRPM nauczył się ustawiać pola kontrolne Nazwa i Grupa na składnik. Zobacz CPACK_RPM__PACKAGE_NAME i CPACK_RPM__PACKAGE_GROUP.
- Inne:
- Ostrzeżenia dotyczące przestarzałych funkcji są teraz domyślnie włączone. Mogą być one pomijane za pomocą opcji -Wno-zdezaktualizowane lub przez ustawienie zmiennej CMAKE_WARN_DEPRECATED na wartość false.
- Przestarzałe i usunięte funkcje:
- Polecenie cmake (1) -E time teraz poprawnie przekazuje argumenty ze spacjami lub znakami specjalnymi do procesu potomnego. Może to zepsuć skrypty, które pracowały nad błędem z ich własnym dodatkowym cytowaniem lub ucieczką.
- Generator Xcode został ustawiony tak, aby konsekwentnie usuwał ukośniki odwrotne w ciągach z innymi generatorami. Projekty, które wcześniej pracowały nad niespójnością z dodatkowym poziomem ukośników odwróconych uwarunkowanych w generatorze Xcode, muszą zostać zaktualizowane, aby usunąć obejście dla CMake 3.5 i nowszych.
- Inne zmiany:
- Generator Visual Studio 14 2015 nauczył się mapować flagę / debug: fastlink linker na właściwość pliku .vcxproj.
- Moduł FindGTK2 konfiguruje teraz zaimportowany cel GTK2 :: sigc ++, aby umożliwić c ++ 11 na jego podległych stronach, używając sigc ++ 2.5.1 lub nowszego.
- Prekompilowany plik binarny systemu Windows dostarczany w cmake.org jest teraz pakietem .msi, a nie instalatorem. Przed zainstalowaniem nowego pakietu może być konieczne ręczne odinstalowanie wersji CMake niższej niż 3.5.
Co nowego w wersji 3.8.1:
- Nowe funkcje:
- GUI:
- cmake-gui (1) uzyskał opcje kontrolowania ostrzeżeń o przestarzałej funkcjonalności.
- cmake-gui (1) nauczył się ustawić zestaw narzędzi do użycia z generatorami VS IDE i Xcode, podobnie jak istniejąca opcja -T do cmake (1).
- cmake-gui (1) uzyskał Eksplorator wyrażeń regularnych, który może być używany do tworzenia i oceniania wyrażeń regularnych w czasie rzeczywistym. Okno eksploratora jest dostępne w menu Narzędzia.
- Wiersz poleceń:
- Opcje cmake (1) -Wdev i -Wno-dev umożliwiają teraz domyślne wyłączanie i ignorowanie wycofanych ostrzeżeń.
- Tłumienie ostrzeżeń programistów jako błędów można teraz kontrolować za pomocą nowych opcji -Werror = dev i -Wno-error = dev cmake (1).
- Narzędzia cmake (1) -E wiersza poleceń, copy_if_different, copy_directory i make_directory nauczyły się obsługiwać wiele plików wejściowych lub katalogów.
- Polecenia:
- Polecenie cmake_parse_arguments () jest teraz zaimplementowane natywnie. Moduł CMakeParseArguments pozostaje pusty jako symbol zastępczy dla zgodności.
- Komenda install (DIRECTORY) nauczyła się obsługi wyrażeń generatora na liście katalogów.
- Zmienne:
- Zmienna CMAKE_ERROR_DEPRECATED może teraz zostać ustawiona przy użyciu opcji -Werror = przestarzałe i -Wno-błąd = przestarzałe cmake (1).
- Zmienna CMAKE_WARN_DEPRECATED może być teraz ustawiona przy użyciu opcji cmake (1) -Wdeprecated i -Wno-deprecated.
- Właściwości:
- Właściwość target VS_GLOBAL_ jest teraz zaimplementowana dla wersji VS 2010 i nowszych. Poprzednio działało tylko w VS 2008 i poniżej.
- Moduły:
- Moduł ExternalProject nauczył się nowej opcji GIT_REMOTE_NAME, aby kontrolować wartość git clone --origin.
- Moduł FindBoost zapewnia teraz zaimportowane obiekty docelowe, takie jak Boost :: boost i Boost :: filesystem.
- Makro FLEX_TARGET modułu FindFLEX nauczyło się nowej opcji DEFINES_FILE do określenia niestandardowego generowanego nagłówka wyjściowego.
- Moduł FindGTest dostarcza teraz zaimportowane obiekty docelowe.
- Moduł FindGTK2, gdy włączona jest opcja GTK2_USE_IMPORTED_TARGETS, teraz ustawia GTK2_LIBRARIES tak, aby zawierał listę zaimportowanych obiektów docelowych zamiast ścieżek do bibliotek. Ponadto teraz ustawia nową zmienną GTK2_TARGETS zawierającą wszystkie cele zaimportowane.
- Moduł FindOpenMP nauczył się obsługiwać Clang.
- Moduł FindOpenSSL uzyskał nową opcję OPENSSL_MSVC_STATIC_RT w celu wyszukiwania bibliotek przy użyciu statycznego środowiska wykonawczego MSVC.
- Moduł FindPNG zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindTIFF zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindXalanC został wprowadzony w celu znalezienia biblioteki przetwarzania transformacji XSL Xache-C ++.
- Moduł FindXercesC zapewnia teraz zaimportowane obiekty docelowe.
- Platformy:
- Dodano wsparcie dla kompilatora ARM (arm.com) z identyfikatorem kompilatora ARMCC.
- Dodano nowy plik platformy do kompilacji krzyżowej w środowisku Cray Linux, aby skierować węzły obliczeniowe. Zobacz Cross Compiling dla środowiska Cray Linux dla szczegółów użycia.
- Funkcja Kompiluj funkcje zna teraz funkcje obsługiwane przez kompilatory Clang w systemie Windows (MinGW).
- Budując wbudowane platformy Apple, takie jak iOS, CMake nauczył się budować i instalować kombinowane obiekty docelowe, które zawierają zarówno urządzenie, jak i wersję symulatora. To zachowanie można włączyć, ustawiając właściwość docelową IOS_INSTALL_COMBINED.
- CPack:
- Moduł CPackDMG nauczył się nowej zmiennej, aby określić uruchamianie pliku AppleScript w celu dostosowania wyglądu folderu instalacyjnego DragNDrop, w tym ustawienia obrazu tła przy użyciu dostarczonego pliku PNG lub pliku TIFF o wielu rozdzielczościach. Zobacz zmienne CPACK_DMG_DS_STORE_SETUP_SCRIPT i CPACK_DMG_BACKGROUND_IMAGE.
- Moduł CPackDeb nauczył się ustawiania opcjonalnego pliku źródłowego pliku konfiguracyjnego przy użyciu zmiennej monolitycznej lub na składnik. Zobacz CPACK_DEBIAN_PACKAGE_SOURCE.
- Moduł CPackDeb nauczył się ustawiania pól kontrolnych Pakietu, Sekcji i Priorytetu na komponent. Zobacz zmienne CPACK_DEBIAN__PACKAGE_SECTION i CPACK_DEBIAN__PACKAGE_PRIORITY.
- Generator DragPack CPack nauczył się dodawać SLA do wielu języków do DMG, który jest prezentowany użytkownikowi podczas próby montażu DMG. Szczegółowe informacje zawiera zmienne CPACK_DMG_SLA_LANGUAGES i CPACK_DMG_SLA_DIR.
- Moduł CPackNSIS nauczył się nowych zmiennych, aby dodać bitmapy do instalatora. Zobacz zmienne CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP i CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
- Moduł CPackRPM nauczył się ustawiać pola kontrolne Nazwa i Grupa na składnik. Zobacz CPACK_RPM__PACKAGE_NAME i CPACK_RPM__PACKAGE_GROUP.
- Inne:
- Ostrzeżenia dotyczące przestarzałych funkcji są teraz domyślnie włączone. Mogą być one pomijane za pomocą opcji -Wno-zdezaktualizowane lub przez ustawienie zmiennej CMAKE_WARN_DEPRECATED na wartość false.
- Przestarzałe i usunięte funkcje:
- Polecenie cmake (1) -E time teraz poprawnie przekazuje argumenty ze spacjami lub znakami specjalnymi do procesu potomnego. Może to zepsuć skrypty, które pracowały nad błędem z ich własnym dodatkowym cytowaniem lub ucieczką.
- Generator Xcode został ustawiony tak, aby konsekwentnie usuwał ukośniki odwrotne w ciągach z innymi generatorami. Projekty, które wcześniej pracowały nad niespójnością z dodatkowym poziomem ukośników odwróconych uwarunkowanych w generatorze Xcode, muszą zostać zaktualizowane, aby usunąć obejście dla CMake 3.5 i nowszych.
- Inne zmiany:
- Generator Visual Studio 14 2015 nauczył się mapować flagę / debug: fastlink linker na właściwość pliku .vcxproj.
- Moduł FindGTK2 konfiguruje teraz zaimportowany cel GTK2 :: sigc ++, aby umożliwić c ++ 11 na jego podległych stronach, używając sigc ++ 2.5.1 lub nowszego.
- Prekompilowany plik binarny systemu Windows dostarczany w cmake.org jest teraz pakietem .msi, a nie instalatorem. Przed zainstalowaniem nowego pakietu może być konieczne ręczne odinstalowanie wersji CMake niższej niż 3.5.
Co nowego w wersji 3.8.0:
- Nowe funkcje:
- GUI:
- cmake-gui (1) uzyskał opcje kontrolowania ostrzeżeń o przestarzałej funkcjonalności.
- cmake-gui (1) nauczył się ustawić zestaw narzędzi do użycia z generatorami VS IDE i Xcode, podobnie jak istniejąca opcja -T do cmake (1).
- cmake-gui (1) uzyskał Eksplorator wyrażeń regularnych, który może być używany do tworzenia i oceniania wyrażeń regularnych w czasie rzeczywistym. Okno eksploratora jest dostępne w menu Narzędzia.
- Wiersz poleceń:
- Opcje cmake (1) -Wdev i -Wno-dev umożliwiają teraz domyślne wyłączanie i ignorowanie wycofanych ostrzeżeń.
- Tłumienie ostrzeżeń programistów jako błędów można teraz kontrolować za pomocą nowych opcji -Werror = dev i -Wno-error = dev cmake (1).
- Narzędzia cmake (1) -E wiersza poleceń, copy_if_different, copy_directory i make_directory nauczyły się obsługiwać wiele plików wejściowych lub katalogów.
- Polecenia:
- Polecenie cmake_parse_arguments () jest teraz zaimplementowane natywnie. Moduł CMakeParseArguments pozostaje pusty jako symbol zastępczy dla zgodności.
- Komenda install (DIRECTORY) nauczyła się obsługi wyrażeń generatora na liście katalogów.
- Zmienne:
- Zmienna CMAKE_ERROR_DEPRECATED może teraz zostać ustawiona przy użyciu opcji -Werror = przestarzałe i -Wno-błąd = przestarzałe cmake (1).
- Zmienna CMAKE_WARN_DEPRECATED może być teraz ustawiona przy użyciu opcji cmake (1) -Wdeprecated i -Wno-deprecated.
- Właściwości:
- Właściwość target VS_GLOBAL_ jest teraz zaimplementowana dla wersji VS 2010 i nowszych. Poprzednio działało tylko w VS 2008 i poniżej.
- Moduły:
- Moduł ExternalProject nauczył się nowej opcji GIT_REMOTE_NAME, aby kontrolować wartość git clone --origin.
- Moduł FindBoost zapewnia teraz zaimportowane obiekty docelowe, takie jak Boost :: boost i Boost :: filesystem.
- Makro FLEX_TARGET modułu FindFLEX nauczyło się nowej opcji DEFINES_FILE do określenia niestandardowego generowanego nagłówka wyjściowego.
- Moduł FindGTest dostarcza teraz zaimportowane obiekty docelowe.
- Moduł FindGTK2, gdy włączona jest opcja GTK2_USE_IMPORTED_TARGETS, teraz ustawia GTK2_LIBRARIES tak, aby zawierał listę zaimportowanych obiektów docelowych zamiast ścieżek do bibliotek. Ponadto teraz ustawia nową zmienną GTK2_TARGETS zawierającą wszystkie cele zaimportowane.
- Moduł FindOpenMP nauczył się obsługiwać Clang.
- Moduł FindOpenSSL uzyskał nową opcję OPENSSL_MSVC_STATIC_RT w celu wyszukiwania bibliotek przy użyciu statycznego środowiska wykonawczego MSVC.
- Moduł FindPNG zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindTIFF zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindXalanC został wprowadzony w celu znalezienia biblioteki przetwarzania transformacji XSL Xache-C ++.
- Moduł FindXercesC zapewnia teraz zaimportowane obiekty docelowe.
- Platformy:
- Dodano wsparcie dla kompilatora ARM (arm.com) z identyfikatorem kompilatora ARMCC.
- Dodano nowy plik platformy do kompilacji krzyżowej w środowisku Cray Linux, aby skierować węzły obliczeniowe. Zobacz Cross Compiling dla środowiska Cray Linux dla szczegółów użycia.
- Funkcja Kompiluj funkcje zna teraz funkcje obsługiwane przez kompilatory Clang w systemie Windows (MinGW).
- Budując wbudowane platformy Apple, takie jak iOS, CMake nauczył się budować i instalować kombinowane obiekty docelowe, które zawierają zarówno urządzenie, jak i wersję symulatora. To zachowanie można włączyć, ustawiając właściwość docelową IOS_INSTALL_COMBINED.
- CPack:
- Moduł CPackDMG nauczył się nowej zmiennej, aby określić uruchamianie pliku AppleScript w celu dostosowania wyglądu folderu instalacyjnego DragNDrop, w tym ustawienia obrazu tła przy użyciu dostarczonego pliku PNG lub pliku TIFF o wielu rozdzielczościach. Zobacz zmienne CPACK_DMG_DS_STORE_SETUP_SCRIPT i CPACK_DMG_BACKGROUND_IMAGE.
- Moduł CPackDeb nauczył się ustawiania opcjonalnego pliku źródłowego pliku konfiguracyjnego przy użyciu zmiennej monolitycznej lub na składnik. Zobacz CPACK_DEBIAN_PACKAGE_SOURCE.
- Moduł CPackDeb nauczył się ustawiania pól kontrolnych Pakietu, Sekcji i Priorytetu na komponent. Zobacz zmienne CPACK_DEBIAN__PACKAGE_SECTION i CPACK_DEBIAN__PACKAGE_PRIORITY.
- Generator DragPack CPack nauczył się dodawać SLA do wielu języków do DMG, który jest prezentowany użytkownikowi podczas próby montażu DMG. Szczegółowe informacje zawiera zmienne CPACK_DMG_SLA_LANGUAGES i CPACK_DMG_SLA_DIR.
- Moduł CPackNSIS nauczył się nowych zmiennych, aby dodać bitmapy do instalatora. Zobacz zmienne CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP i CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
- Moduł CPackRPM nauczył się ustawiać pola kontrolne Nazwa i Grupa na składnik. Zobacz CPACK_RPM__PACKAGE_NAME i CPACK_RPM__PACKAGE_GROUP.
- Inne:
- Ostrzeżenia dotyczące przestarzałych funkcji są teraz domyślnie włączone. Mogą być one pomijane za pomocą opcji -Wno-zdezaktualizowane lub przez ustawienie zmiennej CMAKE_WARN_DEPRECATED na wartość false.
- Przestarzałe i usunięte funkcje:
- Polecenie cmake (1) -E time teraz poprawnie przekazuje argumenty ze spacjami lub znakami specjalnymi do procesu potomnego. Może to zepsuć skrypty, które pracowały nad błędem z ich własnym dodatkowym cytowaniem lub ucieczką.
- Generator Xcode został ustawiony tak, aby konsekwentnie usuwał ukośniki odwrotne w ciągach z innymi generatorami. Projekty, które wcześniej pracowały nad niespójnością z dodatkowym poziomem ukośników odwróconych uwarunkowanych w generatorze Xcode, muszą zostać zaktualizowane, aby usunąć obejście dla CMake 3.5 i nowszych.
- Inne zmiany:
- Generator Visual Studio 14 2015 nauczył się mapować flagę / debug: fastlink linker na właściwość pliku .vcxproj.
- Moduł FindGTK2 konfiguruje teraz zaimportowany cel GTK2 :: sigc ++, aby umożliwić c ++ 11 na jego podległych stronach, używając sigc ++ 2.5.1 lub nowszego.
- Prekompilowany plik binarny systemu Windows dostarczany w cmake.org jest teraz pakietem .msi, a nie instalatorem. Przed zainstalowaniem nowego pakietu może być konieczne ręczne odinstalowanie wersji CMake niższej niż 3.5.
Co nowego w wersji 3.7.2:
- Nowe funkcje:
- GUI:
- cmake-gui (1) uzyskał opcje kontrolowania ostrzeżeń o przestarzałej funkcjonalności.
- cmake-gui (1) nauczył się ustawić zestaw narzędzi do użycia z generatorami VS IDE i Xcode, podobnie jak istniejąca opcja -T do cmake (1).
- cmake-gui (1) uzyskał Eksplorator wyrażeń regularnych, który może być używany do tworzenia i oceniania wyrażeń regularnych w czasie rzeczywistym. Okno eksploratora jest dostępne w menu Narzędzia.
- Wiersz poleceń:
- Opcje cmake (1) -Wdev i -Wno-dev umożliwiają teraz domyślne wyłączanie i ignorowanie wycofanych ostrzeżeń.
- Tłumienie ostrzeżeń programistów jako błędów można teraz kontrolować za pomocą nowych opcji -Werror = dev i -Wno-error = dev cmake (1).
- Narzędzia cmake (1) -E wiersza poleceń, copy_if_different, copy_directory i make_directory nauczyły się obsługiwać wiele plików wejściowych lub katalogów.
- Polecenia:
- Polecenie cmake_parse_arguments () jest teraz zaimplementowane natywnie. Moduł CMakeParseArguments pozostaje pusty jako symbol zastępczy dla zgodności.
- Komenda install (DIRECTORY) nauczyła się obsługi wyrażeń generatora na liście katalogów.
- Zmienne:
- Zmienna CMAKE_ERROR_DEPRECATED może teraz zostać ustawiona przy użyciu opcji -Werror = przestarzałe i -Wno-błąd = przestarzałe cmake (1).
- Zmienna CMAKE_WARN_DEPRECATED może być teraz ustawiona przy użyciu opcji cmake (1) -Wdeprecated i -Wno-deprecated.
- Właściwości:
- Właściwość target VS_GLOBAL_ jest teraz zaimplementowana dla wersji VS 2010 i nowszych. Poprzednio działało tylko w VS 2008 i poniżej.
- Moduły:
- Moduł ExternalProject nauczył się nowej opcji GIT_REMOTE_NAME, aby kontrolować wartość git clone --origin.
- Moduł FindBoost zapewnia teraz zaimportowane obiekty docelowe, takie jak Boost :: boost i Boost :: filesystem.
- Makro FLEX_TARGET modułu FindFLEX nauczyło się nowej opcji DEFINES_FILE do określenia niestandardowego generowanego nagłówka wyjściowego.
- Moduł FindGTest dostarcza teraz zaimportowane obiekty docelowe.
- Moduł FindGTK2, gdy włączona jest opcja GTK2_USE_IMPORTED_TARGETS, teraz ustawia GTK2_LIBRARIES tak, aby zawierał listę zaimportowanych obiektów docelowych zamiast ścieżek do bibliotek. Ponadto teraz ustawia nową zmienną GTK2_TARGETS zawierającą wszystkie cele zaimportowane.
- Moduł FindOpenMP nauczył się obsługiwać Clang.
- Moduł FindOpenSSL uzyskał nową opcję OPENSSL_MSVC_STATIC_RT w celu wyszukiwania bibliotek przy użyciu statycznego środowiska wykonawczego MSVC.
- Moduł FindPNG zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindTIFF zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindXalanC został wprowadzony w celu znalezienia biblioteki przetwarzania transformacji XSL Xache-C ++.
- Moduł FindXercesC zapewnia teraz zaimportowane obiekty docelowe.
- Platformy:
- Dodano wsparcie dla kompilatora ARM (arm.com) z identyfikatorem kompilatora ARMCC.
- Dodano nowy plik platformy do kompilacji krzyżowej w środowisku Cray Linux, aby skierować węzły obliczeniowe. Zobacz Cross Compiling dla środowiska Cray Linux dla szczegółów użycia.
- Funkcja Kompiluj funkcje zna teraz funkcje obsługiwane przez kompilatory Clang w systemie Windows (MinGW).
- Budując wbudowane platformy Apple, takie jak iOS, CMake nauczył się budować i instalować kombinowane obiekty docelowe, które zawierają zarówno urządzenie, jak i wersję symulatora. To zachowanie można włączyć, ustawiając właściwość docelową IOS_INSTALL_COMBINED.
- CPack:
- Moduł CPackDMG nauczył się nowej zmiennej, aby określić uruchamianie pliku AppleScript w celu dostosowania wyglądu folderu instalacyjnego DragNDrop, w tym ustawienia obrazu tła przy użyciu dostarczonego pliku PNG lub pliku TIFF o wielu rozdzielczościach. Zobacz zmienne CPACK_DMG_DS_STORE_SETUP_SCRIPT i CPACK_DMG_BACKGROUND_IMAGE.
- Moduł CPackDeb nauczył się ustawiania opcjonalnego pliku źródłowego pliku konfiguracyjnego przy użyciu zmiennej monolitycznej lub na składnik. Zobacz CPACK_DEBIAN_PACKAGE_SOURCE.
- Moduł CPackDeb nauczył się ustawiania pól kontrolnych Pakietu, Sekcji i Priorytetu na komponent. Zobacz zmienne CPACK_DEBIAN__PACKAGE_SECTION i CPACK_DEBIAN__PACKAGE_PRIORITY.
- Generator DragPack CPack nauczył się dodawać SLA do wielu języków do DMG, który jest prezentowany użytkownikowi podczas próby montażu DMG. Szczegółowe informacje zawiera zmienne CPACK_DMG_SLA_LANGUAGES i CPACK_DMG_SLA_DIR.
- Moduł CPackNSIS nauczył się nowych zmiennych, aby dodać bitmapy do instalatora. Zobacz zmienne CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP i CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
- Moduł CPackRPM nauczył się ustawiać pola kontrolne Nazwa i Grupa na składnik. Zobacz CPACK_RPM__PACKAGE_NAME i CPACK_RPM__PACKAGE_GROUP.
- Inne:
- Ostrzeżenia dotyczące przestarzałych funkcji są teraz domyślnie włączone. Mogą być one pomijane za pomocą opcji -Wno-zdezaktualizowane lub przez ustawienie zmiennej CMAKE_WARN_DEPRECATED na wartość false.
- Przestarzałe i usunięte funkcje:
- Polecenie cmake (1) -E time teraz poprawnie przekazuje argumenty ze spacjami lub znakami specjalnymi do procesu potomnego. Może to zepsuć skrypty, które pracowały nad błędem z ich własnym dodatkowym cytowaniem lub ucieczką.
- Generator Xcode został ustawiony tak, aby konsekwentnie usuwał ukośniki odwrotne w ciągach z innymi generatorami. Projekty, które wcześniej pracowały nad niespójnością z dodatkowym poziomem ukośników odwróconych uwarunkowanych w generatorze Xcode, muszą zostać zaktualizowane, aby usunąć obejście dla CMake 3.5 i nowszych.
- Inne zmiany:
- Generator Visual Studio 14 2015 nauczył się mapować flagę / debug: fastlink linker na właściwość pliku .vcxproj.
- Moduł FindGTK2 konfiguruje teraz zaimportowany cel GTK2 :: sigc ++, aby umożliwić c ++ 11 na jego podległych stronach, używając sigc ++ 2.5.1 lub nowszego.
- Prekompilowany plik binarny systemu Windows dostarczany w cmake.org jest teraz pakietem .msi, a nie instalatorem. Przed zainstalowaniem nowego pakietu może być konieczne ręczne odinstalowanie wersji CMake niższej niż 3.5.
Co nowego w wersji 3.7.1:
- Nowe funkcje:
- GUI:
- cmake-gui (1) uzyskał opcje kontrolowania ostrzeżeń o przestarzałej funkcjonalności.
- cmake-gui (1) nauczył się ustawić zestaw narzędzi do użycia z generatorami VS IDE i Xcode, podobnie jak istniejąca opcja -T do cmake (1).
- cmake-gui (1) uzyskał Eksplorator wyrażeń regularnych, który może być używany do tworzenia i oceniania wyrażeń regularnych w czasie rzeczywistym. Okno eksploratora jest dostępne w menu Narzędzia.
- Wiersz poleceń:
- Opcje cmake (1) -Wdev i -Wno-dev umożliwiają teraz domyślne wyłączanie i ignorowanie wycofanych ostrzeżeń.
- Tłumienie ostrzeżeń programistów jako błędów można teraz kontrolować za pomocą nowych opcji -Werror = dev i -Wno-error = dev cmake (1).
- Narzędzia cmake (1) -E wiersza poleceń, copy_if_different, copy_directory i make_directory nauczyły się obsługiwać wiele plików wejściowych lub katalogów.
- Polecenia:
- Polecenie cmake_parse_arguments () jest teraz zaimplementowane natywnie. Moduł CMakeParseArguments pozostaje pusty jako symbol zastępczy dla zgodności.
- Komenda install (DIRECTORY) nauczyła się obsługi wyrażeń generatora na liście katalogów.
- Zmienne:
- Zmienna CMAKE_ERROR_DEPRECATED może teraz zostać ustawiona przy użyciu opcji -Werror = przestarzałe i -Wno-błąd = przestarzałe cmake (1).
- Zmienna CMAKE_WARN_DEPRECATED może być teraz ustawiona przy użyciu opcji cmake (1) -Wdeprecated i -Wno-deprecated.
- Właściwości:
- Właściwość target VS_GLOBAL_ jest teraz zaimplementowana dla wersji VS 2010 i nowszych. Poprzednio działało tylko w VS 2008 i poniżej.
- Moduły:
- Moduł ExternalProject nauczył się nowej opcji GIT_REMOTE_NAME, aby kontrolować wartość git clone --origin.
- Moduł FindBoost zapewnia teraz zaimportowane obiekty docelowe, takie jak Boost :: boost i Boost :: filesystem.
- Makro FLEX_TARGET modułu FindFLEX nauczyło się nowej opcji DEFINES_FILE do określenia niestandardowego generowanego nagłówka wyjściowego.
- Moduł FindGTest dostarcza teraz zaimportowane obiekty docelowe.
- Moduł FindGTK2, gdy włączona jest opcja GTK2_USE_IMPORTED_TARGETS, teraz ustawia GTK2_LIBRARIES tak, aby zawierał listę zaimportowanych obiektów docelowych zamiast ścieżek do bibliotek. Ponadto teraz ustawia nową zmienną GTK2_TARGETS zawierającą wszystkie cele zaimportowane.
- Moduł FindOpenMP nauczył się obsługiwać Clang.
- Moduł FindOpenSSL uzyskał nową opcję OPENSSL_MSVC_STATIC_RT w celu wyszukiwania bibliotek przy użyciu statycznego środowiska wykonawczego MSVC.
- Moduł FindPNG zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindTIFF zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindXalanC został wprowadzony w celu znalezienia biblioteki przetwarzania transformacji XSL Xache-C ++.
- Moduł FindXercesC zapewnia teraz zaimportowane obiekty docelowe.
- Platformy:
- Dodano wsparcie dla kompilatora ARM (arm.com) z identyfikatorem kompilatora ARMCC.
- Dodano nowy plik platformy do kompilacji krzyżowej w środowisku Cray Linux, aby skierować węzły obliczeniowe. Zobacz Cross Compiling dla środowiska Cray Linux dla szczegółów użycia.
- Funkcja Kompiluj funkcje zna teraz funkcje obsługiwane przez kompilatory Clang w systemie Windows (MinGW).
- Budując wbudowane platformy Apple, takie jak iOS, CMake nauczył się budować i instalować kombinowane obiekty docelowe, które zawierają zarówno urządzenie, jak i wersję symulatora. To zachowanie można włączyć, ustawiając właściwość docelową IOS_INSTALL_COMBINED.
- CPack:
- Moduł CPackDMG nauczył się nowej zmiennej, aby określić uruchamianie pliku AppleScript w celu dostosowania wyglądu folderu instalacyjnego DragNDrop, w tym ustawienia obrazu tła przy użyciu dostarczonego pliku PNG lub pliku TIFF o wielu rozdzielczościach. Zobacz zmienne CPACK_DMG_DS_STORE_SETUP_SCRIPT i CPACK_DMG_BACKGROUND_IMAGE.
- Moduł CPackDeb nauczył się ustawiania opcjonalnego pliku źródłowego pliku konfiguracyjnego przy użyciu zmiennej monolitycznej lub na składnik. Zobacz CPACK_DEBIAN_PACKAGE_SOURCE.
- Moduł CPackDeb nauczył się ustawiania pól kontrolnych Pakietu, Sekcji i Priorytetu na komponent. Zobacz zmienne CPACK_DEBIAN__PACKAGE_SECTION i CPACK_DEBIAN__PACKAGE_PRIORITY.
- Generator DragPack CPack nauczył się dodawać SLA do wielu języków do DMG, który jest prezentowany użytkownikowi podczas próby montażu DMG. Szczegółowe informacje zawiera zmienne CPACK_DMG_SLA_LANGUAGES i CPACK_DMG_SLA_DIR.
- Moduł CPackNSIS nauczył się nowych zmiennych, aby dodać bitmapy do instalatora. Zobacz zmienne CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP i CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
- Moduł CPackRPM nauczył się ustawiać pola kontrolne Nazwa i Grupa na składnik. Zobacz CPACK_RPM__PACKAGE_NAME i CPACK_RPM__PACKAGE_GROUP.
- Inne:
- Ostrzeżenia dotyczące przestarzałych funkcji są teraz domyślnie włączone. Mogą być one pomijane za pomocą opcji -Wno-zdezaktualizowane lub przez ustawienie zmiennej CMAKE_WARN_DEPRECATED na wartość false.
- Przestarzałe i usunięte funkcje:
- Polecenie cmake (1) -E time teraz poprawnie przekazuje argumenty ze spacjami lub znakami specjalnymi do procesu potomnego. Może to zepsuć skrypty, które pracowały nad błędem z ich własnym dodatkowym cytowaniem lub ucieczką.
- Generator Xcode został ustawiony tak, aby konsekwentnie usuwał ukośniki odwrotne w ciągach z innymi generatorami. Projekty, które wcześniej pracowały nad niespójnością z dodatkowym poziomem ukośników odwróconych uwarunkowanych w generatorze Xcode, muszą zostać zaktualizowane, aby usunąć obejście dla CMake 3.5 i nowszych.
- Inne zmiany:
- Generator Visual Studio 14 2015 nauczył się mapować flagę / debug: fastlink linker na właściwość pliku .vcxproj.
- Moduł FindGTK2 konfiguruje teraz zaimportowany cel GTK2 :: sigc ++, aby umożliwić c ++ 11 na jego podległych stronach, używając sigc ++ 2.5.1 lub nowszego.
- Prekompilowany plik binarny systemu Windows dostarczany w cmake.org jest teraz pakietem .msi, a nie instalatorem. Przed zainstalowaniem nowego pakietu może być konieczne ręczne odinstalowanie wersji CMake niższej niż 3.5.
Co nowego w wersji 3.7.0:
- Nowe funkcje:
- GUI:
- cmake-gui (1) uzyskał opcje kontrolowania ostrzeżeń o przestarzałej funkcjonalności.
- cmake-gui (1) nauczył się ustawić zestaw narzędzi do użycia z generatorami VS IDE i Xcode, podobnie jak istniejąca opcja -T do cmake (1).
- cmake-gui (1) uzyskał Eksplorator wyrażeń regularnych, który może być używany do tworzenia i oceniania wyrażeń regularnych w czasie rzeczywistym. Okno eksploratora jest dostępne w menu Narzędzia.
- Wiersz poleceń:
- Opcje cmake (1) -Wdev i -Wno-dev umożliwiają teraz domyślne wyłączanie i ignorowanie wycofanych ostrzeżeń.
- Tłumienie ostrzeżeń programistów jako błędów można teraz kontrolować za pomocą nowych opcji -Werror = dev i -Wno-error = dev cmake (1).
- Narzędzia cmake (1) -E wiersza poleceń, copy_if_different, copy_directory i make_directory nauczyły się obsługiwać wiele plików wejściowych lub katalogów.
- Polecenia:
- Polecenie cmake_parse_arguments () jest teraz zaimplementowane natywnie. Moduł CMakeParseArguments pozostaje pusty jako symbol zastępczy dla zgodności.
- Komenda install (DIRECTORY) nauczyła się obsługi wyrażeń generatora na liście katalogów.
- Zmienne:
- Zmienna CMAKE_ERROR_DEPRECATED może teraz zostać ustawiona przy użyciu opcji -Werror = przestarzałe i -Wno-błąd = przestarzałe cmake (1).
- Zmienna CMAKE_WARN_DEPRECATED może być teraz ustawiona przy użyciu opcji cmake (1) -Wdeprecated i -Wno-deprecated.
- Właściwości:
- Właściwość target VS_GLOBAL_ jest teraz zaimplementowana dla wersji VS 2010 i nowszych. Poprzednio działało tylko w VS 2008 i poniżej.
- Moduły:
- Moduł ExternalProject nauczył się nowej opcji GIT_REMOTE_NAME, aby kontrolować wartość git clone --origin.
- Moduł FindBoost zapewnia teraz zaimportowane obiekty docelowe, takie jak Boost :: boost i Boost :: filesystem.
- Makro FLEX_TARGET modułu FindFLEX nauczyło się nowej opcji DEFINES_FILE do określenia niestandardowego generowanego nagłówka wyjściowego.
- Moduł FindGTest dostarcza teraz zaimportowane obiekty docelowe.
- Moduł FindGTK2, gdy włączona jest opcja GTK2_USE_IMPORTED_TARGETS, teraz ustawia GTK2_LIBRARIES tak, aby zawierał listę zaimportowanych obiektów docelowych zamiast ścieżek do bibliotek. Ponadto teraz ustawia nową zmienną GTK2_TARGETS zawierającą wszystkie cele zaimportowane.
- Moduł FindOpenMP nauczył się obsługiwać Clang.
- Moduł FindOpenSSL uzyskał nową opcję OPENSSL_MSVC_STATIC_RT w celu wyszukiwania bibliotek przy użyciu statycznego środowiska wykonawczego MSVC.
- Moduł FindPNG zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindTIFF zapewnia teraz zaimportowane obiekty docelowe.
- Moduł FindXalanC został wprowadzony w celu znalezienia biblioteki przetwarzania transformacji XSL Xache-C ++.
- Moduł FindXercesC zapewnia teraz zaimportowane obiekty docelowe.
- Platformy:
- Dodano wsparcie dla kompilatora ARM (arm.com) z identyfikatorem kompilatora ARMCC.
- Dodano nowy plik platformy do kompilacji krzyżowej w środowisku Cray Linux, aby skierować węzły obliczeniowe. Zobacz Cross Compiling dla środowiska Cray Linux dla szczegółów użycia.
- Funkcja Kompiluj funkcje zna teraz funkcje obsługiwane przez kompilatory Clang w systemie Windows (MinGW).
- Budując wbudowane platformy Apple, takie jak iOS, CMake nauczył się budować i instalować kombinowane obiekty docelowe, które zawierają zarówno urządzenie, jak i wersję symulatora. To zachowanie można włączyć, ustawiając właściwość docelową IOS_INSTALL_COMBINED.
- CPack:
- Moduł CPackDMG nauczył się nowej zmiennej, aby określić uruchamianie pliku AppleScript w celu dostosowania wyglądu folderu instalacyjnego DragNDrop, w tym ustawienia obrazu tła przy użyciu dostarczonego pliku PNG lub pliku TIFF o wielu rozdzielczościach. Zobacz zmienne CPACK_DMG_DS_STORE_SETUP_SCRIPT i CPACK_DMG_BACKGROUND_IMAGE.
- Moduł CPackDeb nauczył się ustawiania opcjonalnego pliku źródłowego pliku konfiguracyjnego przy użyciu zmiennej monolitycznej lub na składnik. Zobacz CPACK_DEBIAN_PACKAGE_SOURCE.
- Moduł CPackDeb nauczył się ustawiania pól kontrolnych Pakietu, Sekcji i Priorytetu na komponent. Zobacz zmienne CPACK_DEBIAN__PACKAGE_SECTION i CPACK_DEBIAN__PACKAGE_PRIORITY.
- Generator DragPack CPack nauczył się dodawać SLA do wielu języków do DMG, który jest prezentowany użytkownikowi podczas próby montażu DMG. Szczegółowe informacje zawiera zmienne CPACK_DMG_SLA_LANGUAGES i CPACK_DMG_SLA_DIR.
- Moduł CPackNSIS nauczył się nowych zmiennych, aby dodać bitmapy do instalatora. Zobacz zmienne CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP i CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP.
- Moduł CPackRPM nauczył się ustawiać pola kontrolne Nazwa i Grupa na składnik. Zobacz CPACK_RPM__PACKAGE_NAME i CPACK_RPM__PACKAGE_GROUP.
- Inne:
- Ostrzeżenia dotyczące przestarzałych funkcji są teraz domyślnie włączone. Mogą być one pomijane za pomocą opcji -Wno-zdezaktualizowane lub przez ustawienie zmiennej CMAKE_WARN_DEPRECATED na wartość false.
- Przestarzałe i usunięte funkcje:
- Polecenie cmake (1) -E time teraz poprawnie przekazuje argumenty ze spacjami lub znakami specjalnymi do procesu potomnego. Może to zepsuć skrypty, które pracowały nad błędem z ich własnym dodatkowym cytowaniem lub ucieczką.
- Generator Xcode został ustawiony tak, aby konsekwentnie usuwał ukośniki odwrotne w ciągach z innymi generatorami. Projekty, które wcześniej pracowały nad niespójnością z dodatkowym poziomem ukośników odwróconych uwarunkowanych w generatorze Xcode, muszą zostać zaktualizowane, aby usunąć obejście dla CMake 3.5 i nowszych.
- Inne zmiany:
- Generator Visual Studio 14 2015 nauczył się mapować flagę / debug: fastlink linker na właściwość pliku .vcxproj.
- Moduł FindGTK2 konfiguruje teraz zaimportowany cel GTK2 :: sigc ++, aby umożliwić c ++ 11 na jego podległych stronach, używając sigc ++ 2.5.1 lub nowszego.
- Prekompilowany plik binarny systemu Windows dostarczany w cmake.org jest teraz pakietem .msi, a nie instalatorem. Przed zainstalowaniem nowego pakietu może być konieczne ręczne odinstalowanie wersji CMake niższej niż 3.5.
Komentarze nie znaleziono