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

feat(examples): Introduce DuckDB C example #22

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

razvand
Copy link

@razvand razvand commented Dec 2, 2023

Introduce DuckDB library and a simple C example as binary compatibility run. Extract DuckDB library and build program using Dockerfile. Then run it with the base kernel images from ../../kernels/.

Add typical files for a bincompat app:

  • Kraftfile: build / run rules, including pulling the base image
  • Dockerfile: filesystem, including binary and libraries
  • Makefile: used to generate the root filesystem from the Dockerfile rules
  • README.md: instructions to set up, build and run the application
  • config.yaml: configuration file to generate scripts to the application
  • main.c: the test implementation

config.yaml is used to generate run scripts using the ../../utils/bincompat/generate.py script.

The kernels in ../../kernels are generated by running the ../../utils/bincompat/base-build-all.sh script while inside the ../../library/base/ directory.

@razvand razvand added the enhancement New feature or request label Dec 2, 2023
@razvand razvand requested a review from Mihnea0Firoiu December 2, 2023 21:27
@razvand razvand force-pushed the razvand/examples/duckdb-c branch 2 times, most recently from 8447dd8 to b5b691d Compare December 3, 2023 18:53
Comment on lines +18 to +19
```console
```
Copy link
Member

Choose a reason for hiding this comment

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

Add the output here.

Introduce DuckDB library and a simple C example as binary compatibility
run. Extract DuckDB library and build program using `Dockerfile`. Then
run it with the `base` kernel images from `../../kernels/`.

Add typical files for a bincompat app:

* `Kraftfile`: build / run rules, including pulling the `base` image
* `Dockerfile`: filesystem, including binary and libraries
* `Makefile`: used to generate the root filesystem from the `Dockerfile`
  rules
* `README.md`: instructions to set up, build and run the application
* `config.yaml`: configuration file to generate scripts to the
  application
* `main.c`: the test implementation

`config.yaml` is used to generate run scripts using the
`../../utils/bincompat/generate.py` script.

The kernels in `../../kernels` are generated by running the
`../../utils/bincompat/base-build-all.sh` script while inside the
`../../library/base/` directory.

Signed-off-by: Razvan Deaconescu <[email protected]>
@razvand razvand force-pushed the razvand/examples/duckdb-c branch from 9e1e5af to b12ed6a Compare December 20, 2023 07:34
razvand pushed a commit that referenced this pull request Mar 18, 2024
Reviewed-by: Alexander Jung <[email protected]>
Approved-by: Alexander Jung <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

2 participants