new package: colm

This commit is contained in:
Tee KOBAYASHI 2022-10-25 11:45:48 +09:00 committed by xtkoba
parent 95abbcc619
commit 8db4060344
3 changed files with 102 additions and 0 deletions

View File

@ -0,0 +1,11 @@
--- a/Makefile.in
+++ b/Makefile.in
@@ -403,7 +403,7 @@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-SUBDIRS = src doc test
+SUBDIRS = src doc
dist_doc_DATA = colm.vim
EXTRA_DIST = colm.vim sedsubst
ACLOCAL_AMFLAGS = -I m4

29
packages/colm/build.sh Normal file
View File

@ -0,0 +1,29 @@
TERMUX_PKG_HOMEPAGE=https://www.colm.net/open-source/colm/
TERMUX_PKG_DESCRIPTION="COmputer Language Machinery"
TERMUX_PKG_LICENSE="MIT"
TERMUX_PKG_MAINTAINER="@termux"
TERMUX_PKG_VERSION=0.14.7
TERMUX_PKG_SRCURL=https://www.colm.net/files/colm/colm-${TERMUX_PKG_VERSION}.tar.gz
TERMUX_PKG_SHA256=6037b31c358dda6f580f7321f97a182144a8401c690b458fcae055c65501977d
TERMUX_PKG_DEPENDS="libc++"
TERMUX_PKG_BUILD_IN_SRC=true
TERMUX_PKG_HOSTBUILD=true
termux_step_post_get_source() {
rm -f src/config.h src/defs.h
ln -sf . src/colm
}
termux_step_host_build() {
local srcdir=$TERMUX_PKG_SRCDIR
${srcdir}/configure
local f
for f in ${srcdir}/src/*.lm; do
ln -sf ${f} src/$(basename ${f})
done
make -j $TERMUX_MAKE_PROCESSES
}
termux_step_pre_configure() {
export PATH=$TERMUX_PKG_HOSTBUILD_DIR/src:$PATH
}

View File

@ -0,0 +1,62 @@
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -610,13 +610,13 @@
libprog_a_CXXFLAGS = $(common_CFLAGS)
colmincdir = $(includedir)/colm
colminc_HEADERS = $(RUNTIME_HDR)
-@EXTERNAL_COLM_FALSE@BUILD_PARSE_3_WITH = $(builddir)/bootstrap2$(EXEEXT)
+@EXTERNAL_COLM_FALSE@BUILD_PARSE_3_WITH = bootstrap2$(EXEEXT)
#
# Generate the parser using a single run with an external colm program.
#
@EXTERNAL_COLM_TRUE@BUILD_PARSE_3_WITH = $(EXTERNAL_COLM)/bin/colm$(EXEEXT)
-@EXTERNAL_COLM_FALSE@WRAP_PARSE_3_WITH = $(builddir)/colm-wrap
+@EXTERNAL_COLM_FALSE@WRAP_PARSE_3_WITH = colm-wrap
@EXTERNAL_COLM_TRUE@WRAP_PARSE_3_WITH = $(EXTERNAL_COLM)/bin/colm-wrap
@EXTERNAL_COLM_FALSE@AM_LDFLAGS = -L.
@EXTERNAL_COLM_TRUE@AM_LDFLAGS = $(EXTERNAL_LIBS)
@@ -2037,17 +2037,17 @@
@EXTERNAL_COLM_FALSE@gen/bootstrap1.pack: $(builddir)/colm-wrap bootstrap0$(EXEEXT)
@EXTERNAL_COLM_FALSE@ mkdir -p gen
-@EXTERNAL_COLM_FALSE@ $(builddir)/colm-wrap -w bootstrap0 -o $@ \
+@EXTERNAL_COLM_FALSE@ colm-wrap -w bootstrap0 -o $@ \
@EXTERNAL_COLM_FALSE@ -c -p gen/parse1.c -e gen/if1.h -x gen/if1.cc no-input
@EXTERNAL_COLM_FALSE@gen/parse1.c: gen/bootstrap1.pack
-@EXTERNAL_COLM_FALSE@ $(builddir)/colm-wrap -o $@ $<
+@EXTERNAL_COLM_FALSE@ colm-wrap -o $@ $<
@EXTERNAL_COLM_FALSE@gen/if1.h: gen/bootstrap1.pack
-@EXTERNAL_COLM_FALSE@ $(builddir)/colm-wrap -o $@ $<
+@EXTERNAL_COLM_FALSE@ colm-wrap -o $@ $<
@EXTERNAL_COLM_FALSE@gen/if1.cc: gen/bootstrap1.pack gen/if1.h
-@EXTERNAL_COLM_FALSE@ $(builddir)/colm-wrap -o $@ $<
+@EXTERNAL_COLM_FALSE@ colm-wrap -o $@ $<
#
# bootstrap2: The input program is specified using the colm grammar used in
@@ -2058,17 +2058,17 @@
@EXTERNAL_COLM_FALSE@gen/bootstrap2.pack: $(builddir)/colm-wrap bootstrap1$(EXEEXT) colm.lm
@EXTERNAL_COLM_FALSE@ mkdir -p gen
-@EXTERNAL_COLM_FALSE@ $(builddir)/colm-wrap -w bootstrap1 -o $@ \
+@EXTERNAL_COLM_FALSE@ colm-wrap -w bootstrap1 -o $@ \
@EXTERNAL_COLM_FALSE@ -c -p gen/parse2.c -e gen/if2.h -x gen/if2.cc colm.lm
@EXTERNAL_COLM_FALSE@gen/parse2.c: gen/bootstrap2.pack
-@EXTERNAL_COLM_FALSE@ $(builddir)/colm-wrap -o $@ $<
+@EXTERNAL_COLM_FALSE@ colm-wrap -o $@ $<
@EXTERNAL_COLM_FALSE@gen/if2.h: gen/bootstrap2.pack
-@EXTERNAL_COLM_FALSE@ $(builddir)/colm-wrap -o $@ $<
+@EXTERNAL_COLM_FALSE@ colm-wrap -o $@ $<
@EXTERNAL_COLM_FALSE@gen/if2.cc: gen/bootstrap2.pack gen/if2.h
-@EXTERNAL_COLM_FALSE@ $(builddir)/colm-wrap -o $@ $<
+@EXTERNAL_COLM_FALSE@ colm-wrap -o $@ $<
gen/bootstrap3.pack: $(WRAP_PARSE_3_WITH) $(BUILD_PARSE_3_WITH) prog.lm colm.lm
mkdir -p gen