Comments (5)
I've found another instance of this, which I can't work around, which might eventually block me.
Environment: Gradle 3.1, Windows 10 Version 1607, now with MinGW installed.
apply plugin: 'cpp'
apply plugin: 'visual-studio'
model {
toolChains {
gcc(Gcc) {
}
}
platforms {
x64 {
architecture "x64"
}
}
components {
TestProject(NativeLibrarySpec) {
targetPlatform 'x64'
}
}
}
This, again, doesn't create the full set of Visual Studio tasks. This is a bit of a nuisance for us as we're looking at (but haven't got to yet) cross-compiling both locally (MinGW / VM with shared disk / Windows Linux Subsystem) and also remote (Visual C++ for Linux) and it would be appreciated if the Visual Studio plugin would just generate the IDE projects and solutions.
from gradle.
Thanks for reporting the limitation between Visual Studio and Gcc. The visual studio integration is limited when it comes to your current scenario. There is some idea in discussion in how this can be improved in order to provide a better solution. The IDE, especially for C++, is opinionated on certain modeling which make it the integration harder than it seems.
We decided not to take route of generating native IDE projects and solutions because of the complexity when it comes to mapping generated source set, pre-build, pre-link and post-link steps. The current solution is by far perfect and because of this it's harder to integrate current Visual Studio plugins. It's best to seek a solution in Gradle as you will be able to reuse the logic on local developer machine as well as CI server. That been said, share your various usage scenario with us so we can take them into account during future design improvement.
from gradle.
I suppose I should clarify, my issue is that the Visual Studio plugin won't create some of the IDE tasks when Gradle knows that it can't build that target, but it's not consistent and it's not explained - i.e. it creates the Project and Filters tasks, but not the Solution task or the encompassing lifecycle tasks.
I would like the Visual Studio plugin (or any IDE project generator) to work independently from whether the target binaries are buildable, or, if it must be tied to whether to something is buildable, then it shouldn't generate only half the tasks - it should generate none of them.
I'm not expecting Gradle's Visual Studio plugin to generate Visual Studio projects with VS-equivalent build steps (pre-build, pre-link, etc.) - we're implementing all the build logic in Gradle, however, almost all of our developers will want to work in Visual Studio, so it's paramount that I'm able to generate something.
I've already written quite a lot of gradle (and will write more yet) to modify the generated Visual Studio projects, but it's much easier when I can depend on Gradle having created the projects in the first place :)
from gradle.
Thanks for reporting this issue, we will consider your scenario in the improvement work for Visual Studio integration.
from gradle.
Issue moved to gradle/gradle-native #496 via ZenHub
from gradle.
Related Issues (20)
- CachingTaskInputFileCollection loose relative path sensitivity
- Create release notes for the new Java compiler integration with the Problems API
- Wrong information about removing unintentional subprojects HOT 3
- Formatting should be the same with JDK8 compiler reports as with other compilers HOT 1
- Allow configurations to be safely resolved from outside of owning scope HOT 1
- Gradle 7+ "force" changes cause a different resolution behavior HOT 3
- Deprecate running Gradle on JVM versions < 17
- Add mechanism for different package managers to contribute their installed JVM toolchains HOT 2
- Task dependency inference doesn't work for named domain object containers HOT 1
- Idea plugin is not IP compatible when configured directly
- `unreportedProblemInCurrentCall` error when using configure action
- Allow Configuration Cache for TAPI requests without Isolated Projects HOT 1
- Problem description copied from the CC report is noisy and ill-formatted HOT 2
- Let providers handle task and transform dependencies uniformly everywhere
- API for adding LICENSE.txt file to published JAR (and other artifacts) HOT 3
- Simple custom interceptors for bytecode upgrade don't allow to upgrade any type
- Gradle build fails with an error on sync with Configuration Cache
- GradleRunner race condition: Cannot access input property 'sources' of task HOT 1
- Use configuration names in `AbstractDependencyReportTask` HOT 3
- Gradle 8.8 causing Java crashes on older macOS HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gradle.