diff --git a/TODO.md b/TODO.md index 8ea1ea8d81..6afd0be3d5 100644 --- a/TODO.md +++ b/TODO.md @@ -13,95 +13,5 @@ If you find an interesting piece of software here, consider to package it, also [azure-sdk-tools](https://github.com/Azure/azure-sdk-for-python/tree/main/tools/azure-sdk-tools) | setuptools | devel | Anna | ✔ | ✔ [Lua-cURL](https://github.com/Lua-cURL/Lua-cURLv3) | cmake | lua | Anna | ✔ | ✔ [odilia](https://odilia.app) | cargo | accessibility | Anna | ✔ | ✖ -[spacelib](https://github.com/Alessandro-Barbieri/SpaceLib) | none | science | Alessandro-Barbieri | ✖ | ✖ -[cpp-fuzzy-logic](https://sourceforge.net/projects/cpp-fuzzy-logic) | none | devel | Alessandro-Barbieri | ✖ | ✖ -[free fuzzy logic library](http://ffll.sourceforge.net) | none | devel | Alessandro-Barbieri | ✖ | ✖ -[solarized](https://github.com/altercation/solarized) | none | shell | Alessandro-Barbieri | ✔ | ✖ -[fizsh](https://github.com/zsh-users/fizsh) | none | shell | Alessandro-Barbieri | ✖ | ✖ -[zsh-directory-history](https://github.com/tymm/zsh-directory-history) | none | shell | Alessandro-Barbieri | ✖ | ✖ -[zsh-you-should-use](https://github.com/MichaelAquilina/zsh-you-should-use) | none | shell | Alessandro-Barbieri | ✖ | ✖ -[forgit](https://github.com/wfxr/forgit) | none | shell | Alessandro-Barbieri | ✖ | ✖ -[openocl](https://openocl.org/) | none | octave | Alessandro-Barbieri | ✖ | ✖ -[octave-scicosim](https://wiki.octave.org/Sci_cosim) | none | octave | Alessandro-Barbieri | ✖ | ✖ -[silk-guardian](https://github.com/NateBrune/silk-guardian) | make | util | Alessandro-Barbieri | ✖ | ✖ -[lucida](https://github.com/claritylab/lucida) | make | | Alessandro-Barbieri | ✔ | ✖ -[embedded fuzzy logic library](https://github.com/zerokol/eFLL) | make | devel | Alessandro-Barbieri | ✖ | ✖ -[Intel-sgx](https://01.org/intel-softwareguard-extensions) | make | devel | Alessandro-Barbieri | ✔ | ✖ -[compcert](https://compcert.org) | make | compiler | Alessandro-Barbieri | ✔ | ✖ -[predictive](https://www.dr-qubit.org/predictive.html) | make | emacs | Alessandro-Barbieri | ✔ | ✖ -[tau](http://www.cs.uoregon.edu/research/tau/home.php) | make | tools | Alessandro-Barbieri | ✔ | ✔ -[gnat-llvm](https://github.com/AdaCore/gnat-llvm) | make | compiler | Alessandro-Barbieri | ✔ | ✖ -[csparse](https://people.sc.fsu.edu/~jburkardt/c_src/csparse/csparse.html) | make | science | Alessandro-Barbieri | ✖ | ✔ -[gslib](https://github.com/Nek5000/gslib) | make | cluster | Alessandro-Barbieri | ✖ | ✔ -[argobots](https://www.argobots.org/) | autotools | devel | Alessandro-Barbieri | ✖ | ✔ -[mochi-ssg](https://github.com/mochi-hpc/mochi-ssg) | autotools | cluster | Alessandro-Barbieri | ✖ | ✔ -[mochi-margo](https://github.com/mochi-hpc/mochi-margo) | autotools | cluster | Alessandro-Barbieri | ✖ | ✔ -[mochi-abt-io](https://github.com/mochi-hpc/mochi-abt-io) | autotools | cluster | Alessandro-Barbieri | ✖ | ✔ -[machinekit](https://github.com/machinekit/machinekit) | autotools | science | Alessandro-Barbieri | ✔ | ✖ | ✔ -[libreoffice-online](https://github.com/LibreOffice/online) | autotools | office | Alessandro-Barbieri | ✔ | ✖ -[latte-integrale](https://www.math.ucdavis.edu/~latte/) | autotools | math | Alessandro-Barbieri | ✔ | ✖ -[tides](https://sourceforge.net/projects/tidesodes/) | autotools | math | Alessandro-Barbieri | ✖ | ✔ -[Cakeml](https://cakeml.org/) | autotools | ML | Alessandro-Barbieri | ✔ | ✔ -[warewulf](https://warewulf.lbl.gov/) | autotools | cluster | Alessandro-Barbieri | ✖ | ✔ -[jmodelica](https://github.com/jnorthrup/jmodelica) | autotools | science | Alessandro-Barbieri | ✔ | ✔ -[flux-core](https://github.com/flux-framework/flux-core) | autotools | cluster | Alessandro-Barbieri | ✔ | ✔ -[GPI-2](https://github.com/cc-hpc-itwm/GPI-2) | autotools | cluster | Alessandro-Barbieri | ✖ | ✔ -[blasfeo](https://github.com/giaf/blasfeo) | cmake | science | Alessandro-Barbieri | ✔ | ✔ -[libfixmath](https://github.com/PetteriAimonen/libfixmath) | cmake | devel | Alessandro-Barbieri | ✖ | ✖ -[hpmpc](https://github.com/giaf/hpmpc) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[mercury](https://github.com/mercury-hpc/mercury) | cmake | cluster | Alessandro-Barbieri | ✖ | ✔ -[chrono](https://projectchrono.org/) | cmake | science | Alessandro-Barbieri | ✖ | ✖ -[cocos2d-x](https://github.com/cocos2d/cocos2d-x) | cmake | game | Alessandro-Barbieri | ✔ | ✖ -[opensiv3d](https://github.com/Siv3D/OpenSiv3D) | cmake | game | Alessandro-Barbieri | ✔ | ✖ -[grive2](https://github.com/vitalif/grive2) | cmake | filesystem | Alessandro-Barbieri | ✖ | ✖ -[chapel](https://github.com/chapel-lang/chapel) | make | science | Alessandro-Barbieri | ✔ | ✔ -[osmium](https://wiki.openstreetmap.org/wiki/Osmium) | cmake | geography | Alessandro-Barbieri | ✖ | ✔ -[fuzzylite](https://github.com/fuzzylite/fuzzylite) | cmake | devel | Alessandro-Barbieri | ✖ | ✖ -[valhalla](https://github.com/valhalla/valhalla) | cmake | geography | Alessandro-Barbieri | ✖ | ✖ -[openenclave](https://openenclave.io/sdk/) | cmake | util | Alessandro-Barbieri | ✖ | ✖ -[alpaka](https://github.com/alpaka-group/alpaka) | cmake | science | Alessandro-Barbieri | ✖ -[mochi-thallium](https://github.com/mochi-hpc/mochi-thallium) | cmake | cluster | Alessandro-Barbieri | ✖ | ✔ -[flexiblas](https://www.mpi-magdeburg.mpg.de/projects/flexiblas) | cmake | science | Alessandro-Barbieri | ✔ -[blitz](https://github.com/blitzpp/blitz) | cmake | c++ | Alessandro-Barbieri | ✖ | ✔ -[fmi-library](https://github.com/modelon-community/fmi-library) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[aerodyn](https://github.com/OpenFAST/openfast/tree/main/modules/aerodyn) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[llvm-ompss2](https://github.com/bsc-pm/llvm) | cmake | cluster | Alessandro-Barbieri | ✔ | ✔ -[pagmo](https://esa.github.io/pagmo2/) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[osqp](https://github.com/osqp/osqp) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[superscs](https://github.com/kul-optec/superscs) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[amrex](https://github.com/AMReX-Codes/amrex/blob/development/CMakeLists.txt) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[DataTransferKit](https://github.com/ORNL-CEES/DataTransferKit) | cmake | cluster | Alessandro-Barbieri | ✖ | ✔ -[heffte](https://bitbucket.org/icl/heffte/src/master/) | cmake | cluster | Alessandro-Barbieri | ✖ | ✔ -[omega_h](https://github.com/sandialabs/omega_h) | cmake | cluster | Alessandro-Barbieri | ✖ | ✔ -[phist](https://bitbucket.org/essex/phist/) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[precice](https://github.com/precice/precice) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[scorec](https://github.com/SCOREC/core) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[slate](https://bitbucket.org/icl/slate/) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[tasmanian](https://github.com/ORNL/TASMANIAN) | cmake | science | Alessandro-Barbieri | ✖ | ✔ -[vite](https://solverstack.gitlabpages.inria.fr/vite/) | cmake | visualization | Alessandro-Barbieri | ✖ | ✔ -[zpp](https://github.com/jbigot/zpp) | cmake | devel | Alessandro-Barbieri | ✖ | ✔ -[enarx](https://enarx.dev/) | cargo | util | Alessandro-Barbieri | ✖ | ✖ -[ruplacer](https://github.com/dmerejkowsky/ruplacer) | cargo | sys | Alessandro-Barbieri | ✖ | ✖ -[open-match](https://github.com/googleforgames/open-match) | go | devel | Alessandro-Barbieri | ✔ | ✖ -[gridstudio](https://github.com/ricklamers/gridstudio) | go | visualization | Alessandro-Barbieri | ✔ | ✖ -[osmosis](https://wiki.openstreetmap.org/wiki/Osmosis) | gradle | geography | Alessandro-Barbieri | ✔ | ✖ -[Opensearch](https://github.com/opensearch-project/OpenSearch) | gradle | | Alessandro-Barbieri | ✔ | ✖ -[cocalc](https://github.com/sagemathinc/cocalc) | npm | math | Alessandro-Barbieri | ✔ | ✖ -[node-red](https://nodered.org/) | npm | programming | Alessandro-Barbieri | ✔ | ✖ -[tangram](https://github.com/tangrams/tangram) | npm | geoscience | Alessandro-Barbieri | ✔ | ✖ -[ijavascript](https://github.com/n-riesco/ijavascript) | npm | jupyter | Alessandro-Barbieri | ✔ | ✖ -[pelias](https://github.com/pelias/pelias) | npm | geoscience | Alessandro-Barbieri | ✔ | ✖ -[carto](https://github.com/mapbox/carto) | npm | geoscience | Alessandro-Barbieri | ✔ | ✖ -[bee-node-dashboard](https://github.com/iotaledger/node-dashboard) | npm | cryptocurrencies | Alessandro-Barbieri | ✔ | ✔ -[Gitfs](https://github.com/presslabs/gitfs) | setuptools | filesystem | Alessandro-Barbieri | ✔ | ✖ -[usbkill](https://github.com/hephaest0s/usbkill) | setuptools | util | Alessandro-Barbieri | ✖ | ✖ -[blockify](https://github.com/serialoverflow/blockify) | setuptools | audio | Alessandro-Barbieri | ✖ | ✖ -[foobnix](https://github.com/foobnix/foobnix) | setuptools | audio | | | ✖ -[mmtracking](https://github.com/open-mmlab/mmtracking) | setuptools | science | Alessandro-Barbieri | ✖ -[libensemble](https://github.com/Libensemble/libensemble) | setuptools | cluster | Alessandro-Barbieri | ✖ | ✔ [ActivityWatch](https://github.com/ActivityWatch/activitywatch) | setuptools | utils | David Roman | ✔ | ✖ -[casadi](https://web.casadi.org/) | cmake swig | science | Alessandro-Barbieri | ✖ | ✔ -[ipyleaflet](https://github.com/jupyter-widgets/ipyleaflet) | setuptools yarn | jupyter | Alessandro-Barbieri | ✔ | ✖ -[gitlab](https://gitlab.com/gitlab-org/gitlab-foss) | yarn gem | vcs | Alessandro-Barbieri | ✔ | ✖ -[HOL4](http://hol-theorem-prover.org/) | ? | math | Alessandro-Barbieri | ✔ | ✖ [croissant](https://github.com/giann/croissant) | ? | dev-lua | NRK | ✔ | ? diff --git a/dev-lang/quickjs/Manifest b/dev-lang/quickjs/Manifest index 7d664f78ea..559f41a64d 100644 --- a/dev-lang/quickjs/Manifest +++ b/dev-lang/quickjs/Manifest @@ -1 +1,2 @@ DIST quickjs-2021-03-27.tar.xz 753556 BLAKE2B a959da95ca4861b5675359ac81598b50a80170ec4f4d819c44d666dd4ecb5a2e11d63230f98b611d5109941f5b21f5c8f791d56d153b818408ec1c59350d5e1d SHA512 eeb810083484df213bc658a8703ca3ef094b7789c2b49eed86cb4068c9f9da401ad0300261d61a163c6ea82306f3ef50bf8e29a64920f704fd8958ef08a7286c +DIST quickjs-2024-01-13.tar.xz 765800 BLAKE2B 6d65d9ae19ef816a7e4784821d138d2be9965bbbea42c11f13adc0560dc6d67db9cd75c367680a5caec34182a320819127fc0d0c95c10fcf441161ca7880d5aa SHA512 9f426404e4dc1e2a41fcc235b72e58708041aed24eadd5fb9e82f62435501003d3a6b04831f307b04852551d2fd265b94cd400b3293ec0810465f52de8a6c057 diff --git a/dev-lang/quickjs/files/quickjs-2024-01-13-respect-env.patch b/dev-lang/quickjs/files/quickjs-2024-01-13-respect-env.patch new file mode 100644 index 0000000000..aa2efa9ea3 --- /dev/null +++ b/dev-lang/quickjs/files/quickjs-2024-01-13-respect-env.patch @@ -0,0 +1,46 @@ +--- a/Makefile.old ++++ b/Makefile +@@ -69,7 +69,7 @@ endif + ifdef CONFIG_CLANG + HOST_CC=clang + CC=$(CROSS_PREFIX)clang +- CFLAGS+=-g -Wall -MMD -MF $(OBJDIR)/$(@F).d ++ CFLAGS+=-Wall -MMD -MF $(OBJDIR)/$(@F).d + CFLAGS += -Wextra + CFLAGS += -Wno-sign-compare + CFLAGS += -Wno-missing-field-initializers +@@ -92,13 +92,13 @@ else ifdef CONFIG_COSMO + HOST_CC=gcc + CC=cosmocc + # cosmocc does not correct support -MF +- CFLAGS=-g -Wall #-MMD -MF $(OBJDIR)/$(@F).d ++ CFLAGS=-Wall #-MMD -MF $(OBJDIR)/$(@F).d + CFLAGS += -Wno-array-bounds -Wno-format-truncation + AR=cosmoar + else + HOST_CC=gcc + CC=$(CROSS_PREFIX)gcc +- CFLAGS+=-g -Wall -MMD -MF $(OBJDIR)/$(@F).d ++ CFLAGS+=-Wall -MMD -MF $(OBJDIR)/$(@F).d + CFLAGS += -Wno-array-bounds -Wno-format-truncation + ifdef CONFIG_LTO + AR=$(CROSS_PREFIX)gcc-ar +@@ -120,14 +120,14 @@ DEFINES+=-D__USE_MINGW_ANSI_STDIO # for standard snprintf behavior + endif + + CFLAGS+=$(DEFINES) +-CFLAGS_DEBUG=$(CFLAGS) -O0 +-CFLAGS_SMALL=$(CFLAGS) -Os +-CFLAGS_OPT=$(CFLAGS) -O2 ++CFLAGS_DEBUG=$(CFLAGS) ++CFLAGS_SMALL=$(CFLAGS) ++CFLAGS_OPT=$(CFLAGS) + CFLAGS_NOLTO:=$(CFLAGS_OPT) + ifdef CONFIG_COSMO + LDFLAGS+=-s # better to strip by default + else +-LDFLAGS+=-g ++LDFLAGS+= + endif + ifdef CONFIG_LTO + CFLAGS_SMALL+=-flto diff --git a/dev-lang/quickjs/files/quickjs-2024-01-13-sharedlib.patch b/dev-lang/quickjs/files/quickjs-2024-01-13-sharedlib.patch new file mode 100644 index 0000000000..15a6ddcc35 --- /dev/null +++ b/dev-lang/quickjs/files/quickjs-2024-01-13-sharedlib.patch @@ -0,0 +1,59 @@ +From c57e930e9573ce29d816899bb3e7303d8ae2d69b Mon Sep 17 00:00:00 2001 +From: "Haelwenn (lanodan) Monnier" +Date: Mon, 1 Apr 2024 22:33:10 +0200 +Subject: [PATCH] Makefile: Allow building libquickjs as a shared library + +Adapted from https://git.alpinelinux.org/aports/tree/community/quickjs/01-sharedlib.patch?id=27a8f649949c36bfc3e45854e08c48a8eb06e07c + +Co-authored-by: Celeste <20312-Celeste@users.gitlab.alpinelinux.org> +--- + Makefile | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +diff --git a/Makefile b/Makefile +index 0270a6ad8..76c2a4b11 100644 +--- a/Makefile ++++ b/Makefile +@@ -32,6 +32,8 @@ endif + #CONFIG_WIN32=y + # use link time optimization (smaller and faster executables but slower build) + #CONFIG_LTO=y ++# also build libquickjs as a shared library ++#CONFIG_SHARED=y + # consider warnings as errors (for development) + #CONFIG_WERROR=y + # force 32 bit build for some utilities +@@ -205,6 +207,10 @@ PROGS+=libquickjs.a + ifdef CONFIG_LTO + PROGS+=libquickjs.lto.a + endif ++ifdef CONFIG_SHARED ++SO_VERSION=$(shell sed 's/-/./g' VERSION) ++PROGS+=libquickjs.so.$(SO_VERSION) ++endif + + # examples + ifeq ($(CROSS_PREFIX),) +@@ -289,6 +295,11 @@ libquickjs.a: $(patsubst %.o, %.nolto.o, $(QJS_LIB_OBJS)) + $(AR) rcs $@ $^ + endif # CONFIG_LTO + ++ifdef CONFIG_SHARED ++libquickjs.so.$(SO_VERSION): $(patsubst %.o, %.pic.o, $(QJS_LIB_OBJS)) ++ $(CC) -shared -Wl,-soname,$@ $(LDFLAGS) -o $@ $^ ++endif # CONFIG_SHARED ++ + repl.c: $(QJSC) repl.js + $(QJSC) -c -o $@ -m repl.js + +@@ -362,6 +373,10 @@ install: all + install -m644 libquickjs.a "$(DESTDIR)$(PREFIX)/lib/quickjs" + ifdef CONFIG_LTO + install -m644 libquickjs.lto.a "$(DESTDIR)$(PREFIX)/lib/quickjs" ++endif ++ifdef CONFIG_SHARED ++ install -Dm755 libquickjs.so.$(SO_VERSION) "$(DESTDIR)$(PREFIX)/lib" ++ ln -s libquickjs.so.$(SO_VERSION) "$(DESTDIR)$(PREFIX)/lib/libquickjs.so" + endif + mkdir -p "$(DESTDIR)$(PREFIX)/include/quickjs" + install -m644 quickjs.h quickjs-libc.h "$(DESTDIR)$(PREFIX)/include/quickjs" diff --git a/dev-lang/quickjs/quickjs-2024.01.13.ebuild b/dev-lang/quickjs/quickjs-2024.01.13.ebuild new file mode 100644 index 0000000000..bdd0ed5173 --- /dev/null +++ b/dev-lang/quickjs/quickjs-2024.01.13.ebuild @@ -0,0 +1,48 @@ +# Copyright 2021-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +MY_P="${PN}-${PV//./-}" + +DESCRIPTION="Small embeddable Javascript engine" +HOMEPAGE="https://bellard.org/quickjs/" +SRC_URI="https://bellard.org/quickjs/${MY_P}.tar.xz" +S="${WORKDIR}/${MY_P}" +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="lto" + +PATCHES=( + "${FILESDIR}/quickjs-2020.11.08_Remove-TTY-check-in-test.patch" + "${FILESDIR}/quickjs-2024-01-13-sharedlib.patch" + "${FILESDIR}/quickjs-2024-01-13-respect-env.patch" +) + +src_prepare() { + # Changed in master + sed -i '/^CONFIG_LTO=/s;^;#;' Makefile || die + + default + + sed -i '/$(STRIP) .*/d' Makefile || die "Failed removing STRIP call" + + sed -Ei '/^\s*(CC|AR)=/d' Makefile \ + || die "Failed to remove hard-coded tools." + + sed -i 's;$(PREFIX)/lib;$(LIBDIR);' Makefile || die "Failed fixing libdir" +} + +src_configure() { + export CC="$(tc-getCC)" + export AR="$(tc-getAR)" + + export PREFIX=/usr + export LIBDIR="/usr/$(get_libdir)" + + export CONFIG_LTO=$(use lto) + export CONFIG_SHARED=y +}