Skip to content
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

Rework native compilation #37

Merged
merged 20 commits into from
Sep 30, 2023
Merged

Rework native compilation #37

merged 20 commits into from
Sep 30, 2023

Conversation

05nelsonm
Copy link
Collaborator

@05nelsonm 05nelsonm commented Sep 26, 2023

Simply testing this out to see if it compiles on the latest desktop machines with CI. Needs much more testing in the following regards:

  • How it will function as an exported library for others to consume
    • Will need to play around with consuming a -SNAPSHOT from another project on another machine
  • How a final product would function on different operating systems and older versions.

This PR reworks native compilations and adds iOS targets.

NOTE: Resulting .klib for iOS are 4M (not great, but not bad compared to desktop). Will need to work on that to reduce size.

Closes #31

@05nelsonm 05nelsonm self-assigned this Sep 26, 2023
Copy link
Collaborator Author

@05nelsonm 05nelsonm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

.

@05nelsonm
Copy link
Collaborator Author

I do not understand why this is failing on linux... My local environment is based off 22.04 LTS (same as ubuntu-latest) and test failure output is not helpful.

@05nelsonm 05nelsonm force-pushed the issue/31-compile-native branch 4 times, most recently from 9809abd to abe2b1f Compare September 28, 2023 02:32
@05nelsonm
Copy link
Collaborator Author

05nelsonm commented Sep 29, 2023

So, including the sqlite3mc_amalgamation.c in the .def file will work for iOS it seems. Unfortunately, the build is 8M. Will need to pre-build using external/native/task.sh like originally planned, then use -include-binary option when configuring cinterop.

Also need to investigate the possibility of including a shared lib via -include-binary, which would allow enabling linux and macos such that they too can be pre-built and included in the resulting .klib

@05nelsonm 05nelsonm merged commit 7e9fa22 into master Sep 30, 2023
6 checks passed
@05nelsonm 05nelsonm deleted the issue/31-compile-native branch September 30, 2023 20:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Fix native rekey behavior
1 participant