Skip to content

Commit fd99e1f

Browse files
committed
Fix invalid link argument on macOS and add build and deploy configs for linux
1 parent e2055c1 commit fd99e1f

File tree

4 files changed

+28
-5
lines changed

4 files changed

+28
-5
lines changed

.github/workflows/build.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
build:
1313
strategy:
1414
matrix:
15-
os: [macOS-latest, windows-latest]
15+
os: [ macOS-latest, windows-latest, ubuntu-latest ]
1616
runs-on: ${{matrix.os}}
1717
steps:
1818
- name: Checkout the repo
@@ -24,6 +24,10 @@ jobs:
2424
msystem: MINGW64
2525
update: true
2626
install: git mingw-w64-x86_64-toolchain libsqlite
27+
- name: Install libsqlite3-dev
28+
if: matrix.os == 'ubuntu-latest'
29+
run: |
30+
sudo apt-get update && sudo apt-get install -y libsqlite3-dev
2731
- name: Validate Gradle Wrapper
2832
uses: gradle/wrapper-validation-action@v1
2933
- name: Cache gradle

.github/workflows/deploy.yml

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
build:
1313
strategy:
1414
matrix:
15-
os: [macOS-latest, windows-latest]
15+
os: [ macOS-latest, windows-latest, ubuntu-latest ]
1616
runs-on: ${{matrix.os}}
1717
steps:
1818
- name: Checkout the repo
@@ -24,6 +24,10 @@ jobs:
2424
msystem: MINGW64
2525
update: true
2626
install: git mingw-w64-x86_64-toolchain libsqlite
27+
- name: Install libsqlite3-dev
28+
if: matrix.os == 'ubuntu-latest'
29+
run: |
30+
sudo apt-get update && sudo apt-get install -y libsqlite3-dev
2731
- name: Validate Gradle Wrapper
2832
uses: gradle/wrapper-validation-action@v1
2933
- name: Cache gradle
@@ -58,6 +62,13 @@ jobs:
5862
ORG_GRADLE_PROJECT_SONATYPE_NEXUS_USERNAME: ${{ secrets.SONATYPE_NEXUS_USERNAME }}
5963
ORG_GRADLE_PROJECT_SONATYPE_NEXUS_PASSWORD: ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
6064
ORG_GRADLE_PROJECT_SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
65+
- name: Publish Linux Artifacts
66+
if: matrix.os == 'ubuntu-latest'
67+
run: ./gradlew publishLinux --no-daemon --stacktrace
68+
env:
69+
ORG_GRADLE_PROJECT_SONATYPE_NEXUS_USERNAME: ${{ secrets.SONATYPE_NEXUS_USERNAME }}
70+
ORG_GRADLE_PROJECT_SONATYPE_NEXUS_PASSWORD: ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
71+
ORG_GRADLE_PROJECT_SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
6172

6273
env:
6374
GRADLE_OPTS: -Dorg.gradle.configureondemand=true -Dkotlin.incremental=false -Dorg.gradle.jvmargs="-Xmx3g -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:MaxMetaspaceSize=512m"

gradle/gradle-mvn-mpp-push.gradle

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,3 +99,7 @@ publishing {
9999
tasks.register('publishWindows') {
100100
dependsOn 'publishMingwPublicationToMavenRepository'
101101
}
102+
103+
tasks.register('publishLinux') {
104+
dependsOn 'publishLinuxX64PublicationToMavenRepository'
105+
}

sqliter-driver/build.gradle.kts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,13 @@ kotlin {
4141
knTargets.forEach { target ->
4242
configInterop(target)
4343
val test by target.compilations.getting
44-
test.kotlinOptions.freeCompilerArgs += listOf("-linker-options", "-lsqlite3", "-L/usr/lib")
45-
}
44+
45+
if (target.name.startsWith("linux")) {
46+
test.kotlinOptions.freeCompilerArgs += listOf("-linker-options", "-lsqlite3 -L/usr/lib")
47+
} else {
48+
test.kotlinOptions.freeCompilerArgs += listOf("-linker-options", "-lsqlite3")
49+
}
50+
}
4651

4752
sourceSets {
4853
commonMain {
@@ -63,7 +68,6 @@ kotlin {
6368
val appleMain = sourceSets.maybeCreate("appleMain").apply {
6469
dependsOn(nativeCommonMain)
6570
}
66-
6771
val linuxMain = sourceSets.maybeCreate("linuxX64Main").apply {
6872
dependsOn(nativeCommonMain)
6973
}

0 commit comments

Comments
 (0)