# ExternalProject\_Add + file api

**URL:** https://discourse.cmake.org/t/externalproject-add-file-api/4868
**Category:** Code
**Created:** [January 18, 2022, 4:25pm UTC](https://discourse.cmake.org/t/externalproject-add-file-api/4868 "2022-01-18T16:25:11Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![DavidHeitbrink](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/d/8e7dd6/32.png) [@DavidHeitbrink](https://discourse.cmake.org/u/DavidHeitbrink)
#### Post date: [January 18, 2022, 4:25pm UTC](https://discourse.cmake.org/t/externalproject-add-file-api/4868/1 "2022-01-18T16:25:11Z")

</div>

I am working with a multi-repo system, basically everything is added via ExternalProject\_Add. My build system is Linux (with cmake v 3.20.2), I have a remote connection from a windows machine.

The issue I am having is I want to use Visual Studio which I can connect and build my project(s) just fine. The issue I am getting is the it uses the file API (cmake-file-api) to figure out what it can and cannot debug. All of the targets it sees in the relevant .json files under reply folder it marks as “type” : “UTILITY”, which basically VS ignores for the most part.

Is there a way I can setup my project so it will mark specific I items I have added via ExternalProject\_Add, such that I will create a EXECUTABLE entry for items that are in the relevant “external project”.

---

<div class="post-metadata">

### Author: ![craig.scott](https://discourse.cmake.org/user_avatar/discourse.cmake.org/craig.scott/32/20_2.png) [@craig.scott](https://discourse.cmake.org/u/craig.scott)
#### Post date: [January 18, 2022, 8:28pm UTC](https://discourse.cmake.org/t/externalproject-add-file-api/4868/2 "2022-01-18T20:28:26Z")

</div>

Not currently. There is a more detailed discussion of this topic in the CMake issue tracker here:

[https://gitlab.kitware.com/cmake/cmake/-/issues/22826](https://gitlab.kitware.com/cmake/cmake/-/issues/22826)
