Comments (15)
Per discussion, having Xcode rebuild dependencies automatically sounds like a 2.0 thing—it seems like that would require (as a 🌈 and 🐴 goal) Xcode to be doing all of the building and Carthage just to be setting it up.
from carthage.
This could potentially be captured by #56. Then the problem of working on both in parallel just becomes the normal Git submodules problem.
from carthage.
Now that #56 is closed, what do you think?
from carthage.
This seems to encompass some sort of automatic rebuilding, which we don't support—and which I'm not sure it would be very feasible to support.
So, technically, I guess it's still an issue, but I don't know what the resolution would even look like. I'd recommend closing it as “won't fix,” unless you have an idea for making automatic rebuilding happen (without any project-modifying shenanigans).
from carthage.
We could parse xcodebuild
output to see which files were compiled or copied, record their mod dates, and then rebuild when relevant files have changed.
Or actually, we could just note the time we built and check for files newer than that. It’s a bit imprecise, but I think that’s ok for a first pass.
from carthage.
@robrix When do you think this step would happen? If it's part of carthage build
, that sounds like #101, and nothing to do with automatic rebuilding-on-demand.
from carthage.
We could parse
xcodebuild
output
Doesn't Carthage use xctool
? Using one of the JSON reporters would make that easier.
from carthage.
@paulyoung It does not use xctool
for building Carthage projects. I was pretty reluctant to introduce any kind of binary dependency for the built product.
from carthage.
@jspahrsummers I see. I was surprised when it was required for make package
TBH. 📦🔨
from carthage.
It's incorrectly a requirement of script/bootstrap
, nothing else.
from carthage.
@jspahrsummers That’s what I was thinking, and it does indeed sound like #101.
Automatic rebuilding (e.g. on-demand from Xcode) is the real 🌈/✨ thing, I suppose.
from carthage.
I theorized in chat that this might be possible with the use of a Run Script phase (that just executes carthage build
) before your project compiles any of its sources. TBD.
from carthage.
I was able to get automatic rebuilding (tested by making a breaking change in a dependency checkout) by using the following shell script:
/usr/local/bin/carthage build "$SRCROOT"
… inserted into my project's Build Phases as follows:
So this all appears to work, although it's kind of agonizing not having build progress while the script runs.
Is this generally useful enough to be documented somewhere? If so, where?
from carthage.
Is this generally useful enough to be documented somewhere? If so, where?
@Carthage/carthage bump
from carthage.
Is this generally useful enough to be documented somewhere? If so, where?
Generally yes, but I'd wait until we have platform specific builds for this.
from carthage.
Related Issues (20)
- [Workaround Listed] 'Could not find any available simulators for visionOS', even after having Xcode UI remove visionOS Platform/SDK.
- An unknown server-side error occurred while processing the command. Original error: Unable to launch WebDriverAgent because of xcodebuild failure: Command 'carthage bootstrap --platform iOS' exited with code 1
- Xcode 15: make can't install carthage, -static-stdlib not supported HOT 3
- "Building universal frameworks with common architectures is not possible."
- Carthage doesn't catch frameworks built with a newer swift version. HOT 1
- Does Carthage support having different versions of the same library together?
- Builds a dependency twice when it contains a SPM target with the same name
- https://SoundCloud.com/manu_s0
- Sc
- Carthage Build Failure: Task failed with exit code 70 HOT 1
- `credential.helper=/usr/local/share/gcm-core/git-credential-manager` makes GUI windows pop up. How many windows pop up may have confusing aspects. HOT 3
- Carthage
- Inconsistent extraction-and-overwrite of xcframeworks with identical names from GitHub Release assets. HOT 2
- empty log
- Can not build carthage my custom framework when add libraries in pod
- [Xcode 16.0 Beta] Carthage fails during dsym step HOT 2
- [Xcode 16.0 Beta] Carthage fails to `xcodebuild archive -showBuildSettings`, mentions `no destinations`. HOT 12
- [Xcode 16.0 Beta] `no shared framework schemes` on iOS; `EFFECTIVE_PLATFORM_NAME` contains `-maccatalyst`. HOT 3
- SwiftProtobuf.xcodeproj cannot be opened because it is missing its project.pbxproj file
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 carthage.