- Notifications
You must be signed in to change notification settings - Fork 127
Fix dependeny on upb.lib which was split into 5 separate object library files. #1589
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
kendalharland wants to merge 41 commits into firebase:main from thebrowsercompany:kendal/fix-upb-lib
Closed
Fix dependeny on upb.lib which was split into 5 separate object library files. #1589
kendalharland wants to merge 41 commits into firebase:main from thebrowsercompany:kendal/fix-upb-lib
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
The C++ Interop efforts in Swift currently have some limitations. In particular, it cannot support trivial types with non-trivial destructors. As a workaround, provide a copy constructor which can be used by the Swift interop while using the regular semantics for all other cases. A second issue arises in the handling of futures. Unfortunately, it is not currently possible to pass an indirect block parameter which prevents the construction of a callback. Workaround this by providing an inline shim to use a direct parameter (i.e. indirect value through a pointer) which then allows a callback to be formed. Both of these items are being tracked upstream but seem to be potentially sufficient to enable the use of Swift for using the C++ SDK for desktop scenarios.
This adds a minimal build of firebase statically for use with Swift on Windows to provide the required base libraries. We build a release only build intended for re-distribution as a basis for building a library to access the Firebase APIs from Swift.
Fix repository URL
Correct enclosing namespace for `Firestore`.
Distribute firestore dependency headers
Enable support for ARM64. Add a matrix to allow building the x64 and ARM64 slices of the SDK.
Indicate that the build is performed in CI, explicitly disable the static MSVC library linkage.
Use explicit path to python interpreter.
Ensure that we use the same python version across the sub-builds as `Python3_EXECUTABLE` can be explicitly passed to control the version of python in use.
We would like to cross-compile to ARM64, so we need to ensure that we disable the flatc build.
Prebuild flatc manually and use that to build the flatbuffer code. This should help us with the cross-compilation for ARM64.
This pins the flatc build to the same revision that will be used in the build of firebase.
Make some pdbs
Enable CMP0141 to allow us to embed debug information for Firebase.
Reference some types so that they are included in the CXX module.
This introduces an initial nuget packaging for simpler distribution of the artifacts.
This will publish the package to ease the consumption of it in the client.
Remove an extraneous `include` in the path.
Add missing `firebase_util.lib` to the packaging. Thanks to @jeffdav for identifying the missing library.
Correct the library name to `firestore_util.lib`.
…Bs in the BCNY windows build (#20) * [windows][build] add a helper script to adjust MSVC debug flags to be Z7 instead of Zi * [bcny][gh workflow] build firebase with /Z7 for embedded debug information on windows * roll back to the mainline branch
The release artifacts are very helpful for running other GHA pipelines (e.g. swift-firebase). Automate the release creation to avoid having to manually upload the release content.
Use `std::vector<_>::const_iterator` for the typealias to allow building with different C++ standard libraries. This is required to enable the use of the package for Android platforms.
* Enable C++ standard exception handling for windows build * Disable exception handling altogether --------- Co-authored-by: kendal <kendal@thebrowser.company>
* [cmake] Target AXV2 ISA when building for AMD64 Targeting AXV2 is the closest we can get to targeting Haswell when compiling with msvc. See DEVIN-1142 for more context. * Make changes in bcny-firebase.yml instead of CMakeLists.txt --------- Co-authored-by: kendal <kendal@thebrowser.company>
Co-authored-by: kendal <kendal@thebrowser.company>
Changes: - Adds `FIREBASE_INCLUDE_{FUNCTIONS,STORAGE}` defines to the `cmake` build. - Includes corresponding header files in the nuget package. - Includes generated libs in the nuget package. - Removes `upb.lib` which appears to no longer be generated. Skip actions/upload for nuget pkg when workflow_dispatch Co-authored-by: kendal <kendal@thebrowser.company>
| Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). View this failed invocation of the CLA check for more information. For the most up to date status, view the checks section at the bottom of the pull request. |
Author
| Gha, sorry! Wrong repository again. |
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
Testing
Presubmit workflow
Type of Change
Place an
xthe applicable box: