diff --git a/anda/kotlin/kotlin-native/anda.hcl b/anda/kotlin/kotlin-native/anda.hcl new file mode 100644 index 0000000000..8458440e73 --- /dev/null +++ b/anda/kotlin/kotlin-native/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "kotlin-native.spec" + } +} diff --git a/anda/kotlin/kotlin-native/kotlin-native.spec b/anda/kotlin/kotlin-native/kotlin-native.spec new file mode 100644 index 0000000000..98a2479dad --- /dev/null +++ b/anda/kotlin/kotlin-native/kotlin-native.spec @@ -0,0 +1,141 @@ +%define _binaries_in_noarch_packages_terminate_build 0 + +BuildRoot: %{_tmppath}/%{name}-%{version}-build +Name: kotlin-native +Version: 1.8.20 +Release: 1%{?dist} +Summary: LLVM backend for the Kotlin compiler +ExclusiveArch: x86_64 + +License: ASL 2.0 +URL: https://kotlinlang.org/docs/reference/native-overview.html +Source0: https://github.com/JetBrains/kotlin/releases/download/v%{version}/kotlin-native-linux-x86_64-%{version}.tar.gz + +BuildRequires: tar +BuildRequires: sed +BuildRequires: bash +BuildRequires: (java-headless >= 1:1.8.0 or java >= 1.8.0) +Requires: (java-headless >= 1:1.8.0 or java >= 1.8.0) +Requires: ncurses-compat-libs +Suggests: python +Suggests: lldb + + +%description +Kotlin/Native is a technology for compiling Kotlin code to native binaries, +which can run without a virtual machine. It is an LLVM based backend for the +Kotlin compiler and native implementation of the Kotlin standard library. + + +%prep +tar -xf %{SOURCE0} && cd kotlin-native-linux-x86_64-%{version} +sed -i "s|\(DIR *= *\).*|\1%{_bindir}|" bin/* +sed -i "s|\(KONAN_HOME *= *\).*|\1%{_datadir}/%{name}|" bin/* + + +%install +rm -rf %{buildroot} && mkdir -p %{buildroot}%{_bindir}/ && cd kotlin-native-linux-x86_64-%{version} +install -m 0755 bin/cinterop %{buildroot}%{_bindir}/ +install -m 0755 bin/generate-platform %{buildroot}%{_bindir}/ +install -m 0755 bin/jsinterop %{buildroot}%{_bindir}/ +install -m 0755 bin/klib %{buildroot}%{_bindir}/ +install -m 0755 bin/konanc %{buildroot}%{_bindir}/ +install -m 0755 bin/konan-lldb %{buildroot}%{_bindir}/ +install -m 0755 bin/kotlinc-native %{buildroot}%{_bindir}/ +install -m 0755 bin/run_konan %{buildroot}%{_bindir}/ +mkdir -p %{buildroot}%{_datadir}/%{name}/ +for name in klib konan tools; do + find "$name/" -type f -exec install -Dm 0644 {} %{buildroot}%{_datadir}/%{name}/{} \; +done +mkdir -p %{buildroot}%{_datadir}/licenses/%{name}/ +cd licenses && find * -type f -exec install -Dm 0644 {} %{buildroot}%{_datadir}/licenses/%{name}/{} \; + + +%verifyscript +rm -rf test && mkdir test && cd test +cat < test.kt +fun main(args: Array) { + println("Hello, world!") +} +EOT +kotlinc-native test.kt -o test +./test.kexe + + +%files +%{_bindir}/* +%dir %{_datadir}/%{name}/ +%dir %{_datadir}/%{name}/klib/ +%{_datadir}/%{name}/klib/** +%dir %{_datadir}/%{name}/konan/ +%{_datadir}/%{name}/konan/** +%dir %{_datadir}/%{name}/tools/ +%{_datadir}/%{name}/tools/** +%dir %{_datadir}/licenses/%{name}/ +%{_datadir}/licenses/%{name}/* +%license kotlin-native-linux-x86_64-%{version}/licenses/LICENSE.txt + + +%changelog +* Mon Apr 03 2023 Gonçalo Silva +- Update to 1.8.20 +* Thu Feb 02 2023 Gonçalo Silva +- Update to 1.8.10 +* Wed Dec 28 2022 Gonçalo Silva +- Update to 1.8.0 +* Wed Nov 09 2022 Gonçalo Silva +- Update to 1.7.21 +* Thu Sep 29 2022 Gonçalo Silva +- Update to 1.7.20 +* Fri Jul 08 2022 Gonçalo Silva +- Update to 1.7.10 +* Mon Jun 13 2022 Gonçalo Silva +- Update to 1.7.0 +* Mon Jun 13 2022 Gonçalo Silva +- Update to 1.6.21 +* Thu Jun 09 2022 Gonçalo Silva +- Update to 1.7.0 +* Wed Apr 20 2022 Gonçalo Silva +- Update to 1.6.21 +* Mon Apr 04 2022 Gonçalo Silva +- Update to 1.6.20 +* Tue Dec 14 2021 Gonçalo Silva +- Update to 1.6.10 +* Fri Dec 10 2021 Gonçalo Silva +- Update to 1.6.0 +* Mon Nov 29 2021 Gonçalo Silva +- Update to 1.5.32 +* Tue Nov 16 2021 Gonçalo Silva +- Update to 1.6.0 +* Mon Sep 20 2021 Gonçalo Silva +- Update to 1.5.31 +* Tue Aug 24 2021 Gonçalo Silva +- Update to 1.5.30 +* Tue Jul 13 2021 Gonçalo Silva +- Update to 1.5.21 +* Thu Jun 24 2021 Gonçalo Silva +- Update to 1.5.20 +* Mon May 24 2021 Gonçalo Silva +- Update to 1.5.10 +* Wed May 05 2021 Gonçalo Silva +- Update to 1.5.0 +* Tue Mar 30 2021 Gonçalo Silva +- Update to 1.4.32 +* Fri Feb 26 2021 Gonçalo Silva +- Update to 1.4.31 +* Wed Feb 03 2021 Gonçalo Silva +- Update to 1.4.30 +* Mon Jan 18 2021 Gonçalo Silva +- Update to 1.4.30-RC +* Mon Dec 07 2020 Gonçalo Silva +- Update to 1.4.21 +* Thu Nov 19 2020 Gonçalo Silva +- Update to 1.4.20 +* Thu Sep 10 2020 Gonçalo Silva +- Update to 1.4.10 +* Fri Aug 14 2020 Gonçalo Silva +- Update to 1.4.0 +* Sat Apr 18 2020 Gonçalo Silva +- Update to 1.3.72 +* Mon Apr 13 2020 Gonçalo Silva +- Kotlin/Native 1.3.71 \ No newline at end of file diff --git a/anda/kotlin/kotlin-native/update.rhai b/anda/kotlin/kotlin-native/update.rhai new file mode 100644 index 0000000000..7a5a757de5 --- /dev/null +++ b/anda/kotlin/kotlin-native/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("JetBrains/kotlin")); \ No newline at end of file diff --git a/anda/kotlin/kotlin/anda.hcl b/anda/kotlin/kotlin/anda.hcl new file mode 100644 index 0000000000..d11b3eca0f --- /dev/null +++ b/anda/kotlin/kotlin/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "kotlin.spec" + } +} diff --git a/anda/kotlin/kotlin/kotlin.spec b/anda/kotlin/kotlin/kotlin.spec new file mode 100644 index 0000000000..e2ab174906 --- /dev/null +++ b/anda/kotlin/kotlin/kotlin.spec @@ -0,0 +1,132 @@ +BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildArch: noarch +Name: kotlin +Version: 1.8.20 +Release: 1%{?dist} +Summary: Statically typed programming language + +License: ASL 2.0 +URL: https://kotlinlang.org/ +Source0: https://github.com/JetBrains/kotlin/releases/download/v%{version}/kotlin-compiler-%{version}.zip + +BuildRequires: unzip +BuildRequires: sed +BuildRequires: bash +BuildRequires: (java-headless >= 1:1.8.0 or java >= 1.8.0) +Requires: (java-headless >= 1:1.8.0 or java >= 1.8.0) + + +%description +Kotlin is a statically typed programming language that targets the JVM, +Android, JavaScript and Native (via kotlin-native). Developed by JetBrains, +the project started in 2010 and had its official 1.0 release in 2016. + + +%prep +unzip -o %{SOURCE0} && cd kotlinc +sed -i "s|\(DIR *= *\).*|\1%{_bindir}|" bin/* +sed -i "s|\(KOTLIN_HOME *= *\).*|\1%{_datadir}/%{name}|" bin/* + + +%install +rm -rf %{buildroot} && mkdir -p %{buildroot}%{_bindir}/ && cd kotlinc +install -m 0755 bin/kotlin %{buildroot}%{_bindir}/ +install -m 0755 bin/kotlin-dce-js %{buildroot}%{_bindir}/ +install -m 0755 bin/kotlinc %{buildroot}%{_bindir}/ +install -m 0755 bin/kotlinc-js %{buildroot}%{_bindir}/ +install -m 0755 bin/kotlinc-jvm %{buildroot}%{_bindir}/ +mkdir -p %{buildroot}%{_datadir}/%{name}/ +install -m 0644 build.txt %{buildroot}%{_datadir}/%{name}/ +mkdir -p %{buildroot}%{_datadir}/%{name}/lib/ +install -m 0644 lib/* %{buildroot}%{_datadir}/%{name}/lib/ +mkdir -p %{buildroot}%{_datadir}/licenses/%{name}/ +cd license/ && find * -type f -exec install -Dm 0644 {} %{buildroot}%{_datadir}/licenses/%{name}/{} \; + + +%verifyscript +rm -rf test && mkdir test && cd test +cat < test.kt +fun main(args: Array) { + println("Hello, world!") +} +EOT +kotlinc test.kt && kotlin TestKt +kotlinc test.kt -include-runtime -d test.jar +kotlinc-js test.kt -output test.js +kotlinc-jvm test.kt -include-runtime -d test.jar + + +%files +%{_bindir}/* +%dir %{_datadir}/%{name}/ +%{_datadir}/%{name}/build.txt +%dir %{_datadir}/%{name}/lib/ +%{_datadir}/%{name}/lib/* +%dir %{_datadir}/licenses/%{name}/ +%{_datadir}/licenses/%{name}/* +%license kotlinc/license/LICENSE.txt + + +%changelog +* Mon Apr 03 2023 Gonçalo Silva +- Update to 1.8.20 +* Thu Feb 02 2023 Gonçalo Silva +- Update to 1.8.10 +* Wed Dec 28 2022 Gonçalo Silva +- Update to 1.8.0 +* Wed Nov 09 2022 Gonçalo Silva +- Update to 1.7.21 +* Thu Sep 29 2022 Gonçalo Silva +- Update to 1.7.20 +* Fri Jul 08 2022 Gonçalo Silva +- Update to 1.7.10 +* Mon Jun 13 2022 Gonçalo Silva +- Update to 1.7.0 +* Mon Jun 13 2022 Gonçalo Silva +- Update to 1.6.21 +* Thu Jun 09 2022 Gonçalo Silva +- Update to 1.7.0 +* Wed Apr 20 2022 Gonçalo Silva +- Update to 1.6.21 +* Mon Apr 04 2022 Gonçalo Silva +- Update to 1.6.20 +* Tue Dec 14 2021 Gonçalo Silva +- Update to 1.6.10 +* Fri Dec 10 2021 Gonçalo Silva +- Update to 1.6.0 +* Mon Nov 29 2021 Gonçalo Silva +- Update to 1.5.32 +* Tue Nov 16 2021 Gonçalo Silva +- Update to 1.6.0 +* Mon Sep 20 2021 Gonçalo Silva +- Update to 1.5.31 +* Tue Aug 24 2021 Gonçalo Silva +- Update to 1.5.30 +* Tue Jul 13 2021 Gonçalo Silva +- Update to 1.5.21 +* Thu Jun 24 2021 Gonçalo Silva +- Update to 1.5.20 +* Mon May 24 2021 Gonçalo Silva +- Update to 1.5.10 +* Wed May 05 2021 Gonçalo Silva +- Update to 1.5.0 +* Tue Mar 30 2021 Gonçalo Silva +- Update to 1.4.32 +* Fri Feb 26 2021 Gonçalo Silva +- Update to 1.4.31 +* Wed Feb 03 2021 Gonçalo Silva +- Update to 1.4.30 +* Mon Jan 18 2021 Gonçalo Silva +- Update to 1.4.30-RC +* Mon Dec 07 2020 Gonçalo Silva +- Update to 1.4.21 +* Thu Nov 19 2020 Gonçalo Silva +- Update to 1.4.20 +* Thu Sep 10 2020 Gonçalo Silva +- Update to 1.4.10 +* Fri Aug 14 2020 Gonçalo Silva +- Update to 1.4.0 +* Sat Apr 18 2020 Gonçalo Silva +- Update to 1.3.72 +* Mon Apr 13 2020 Gonçalo Silva +- Kotlin 1.3.71 \ No newline at end of file diff --git a/anda/kotlin/kotlin/update.rhai b/anda/kotlin/kotlin/update.rhai new file mode 100644 index 0000000000..7a5a757de5 --- /dev/null +++ b/anda/kotlin/kotlin/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("JetBrains/kotlin")); \ No newline at end of file