@@ -900,6 +900,20 @@ void generate_cmake(const char *path, const parser::Project *parent_project) {
900900 ofs << " }\n " ;
901901 }
902902
903+ if (!project.packages .empty ()) {
904+ comment (" Packages" );
905+ for (const auto &dep : project.packages ) {
906+ auto version = dep.version ;
907+ if (version == " *" )
908+ version.clear ();
909+ auto required = dep.required ? " REQUIRED" : " " ;
910+ auto config = dep.config ? " CONFIG" : " " ;
911+ auto components = std::make_pair (" COMPONENTS" , dep.components );
912+ ConditionScope cs (gen, dep.condition );
913+ cmd (" find_package" )(dep.name , version, required, config, components).endl ();
914+ }
915+ }
916+
903917 if (!project.contents .empty ()) {
904918 cmd (" include" )(" FetchContent" ).endl ();
905919 if (!project.root ()->vcpkg .enabled ()) {
@@ -935,20 +949,6 @@ void generate_cmake(const char *path, const parser::Project *parent_project) {
935949 }
936950 }
937951
938- if (!project.packages .empty ()) {
939- comment (" Packages" );
940- for (const auto &dep : project.packages ) {
941- auto version = dep.version ;
942- if (version == " *" )
943- version.clear ();
944- auto required = dep.required ? " REQUIRED" : " " ;
945- auto config = dep.config ? " CONFIG" : " " ;
946- auto components = std::make_pair (" COMPONENTS" , dep.components );
947- ConditionScope cs (gen, dep.condition );
948- cmd (" find_package" )(dep.name , version, required, config, components).endl ();
949- }
950- }
951-
952952 auto add_subdir = [&](const std::string &dir) {
953953 // clang-format off
954954 comment (" Subdirectory: " + dir);
0 commit comments