[1/2] colm: Update to version 0.14.7

Message ID 20230123090638.5651-1-adolf.belka@ipfire.org
State Superseded
Commit 59408f2cbf55467130f1bbe1d411330e087d9de4
Headers
Series [1/2] colm: Update to version 0.14.7 |

Commit Message

Adolf Belka Jan. 23, 2023, 9:06 a.m. UTC
  - Update from version 0.13.0.6 to 0.14.7
- Update of rootfile
- patch from colm commit fc61ecb required to fix bug of make looking for static and
   dynamic libs even if one of them was disabled
- Changelog is not available in source tarball or on website etc. Changes have to be
   reviewed by the commits https://github.com/adrian-thurston/colm/commits/0.14.7

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
 config/rootfiles/common/colm                  | 69 ++++++++++++++++++-
 lfs/colm                                      |  9 ++-
 ...hared-and-link-libcolm-appropriately.patch | 43 ++++++++++++
 3 files changed, 117 insertions(+), 4 deletions(-)
 create mode 100644 src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
  

Comments

Peter Müller Jan. 27, 2023, 12:08 a.m. UTC | #1
Hello Adolf,

thank you for this patch. It looks good to me, but there is already a source
tarball on https://source.ipfire.org/source-2.x/colm-0.14.7.tar.gz (Marcel
put it there on 2021-09-19, but it has a different checksum:

$ b2sum colm-0.14.7*
aa2144882a3bc0b7923f86be1d8c45a580a7611254d4815ccf0b69dbc3b0173bac0dd726285272596d2d837ec04a3ccfc741575469e2d7e3a48b101a533dba8f  colm-0.14.7-github.tar.gz
c8be14001e8dc3340f5c55fbf8140b86237ec9462699e417f618cf44c759307eda0ede9f7a9ef897f5b8bc51d1fdf8b7360872a30b4cf07ba8191e405940030c  colm-0.14.7-ipfire.tar.gz

Attempting to download colm's tarball from https://github.com/adrian-thurston/colm/archive/refs/tags/0.14.7.tar.gz,
I get a file that has the same checksum as your patch does. A superficial
investigation did not turn up the source of the c8be... tarball.

@Marcel: Where did you download it from?

Thanks, and best regards,
Peter Müller


> - Update from version 0.13.0.6 to 0.14.7
> - Update of rootfile
> - patch from colm commit fc61ecb required to fix bug of make looking for static and
>    dynamic libs even if one of them was disabled
> - Changelog is not available in source tarball or on website etc. Changes have to be
>    reviewed by the commits https://github.com/adrian-thurston/colm/commits/0.14.7
> 
> Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
> ---
>  config/rootfiles/common/colm                  | 69 ++++++++++++++++++-
>  lfs/colm                                      |  9 ++-
>  ...hared-and-link-libcolm-appropriately.patch | 43 ++++++++++++
>  3 files changed, 117 insertions(+), 4 deletions(-)
>  create mode 100644 src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
> 
> diff --git a/config/rootfiles/common/colm b/config/rootfiles/common/colm
> index 7f0d22396..a3ad4bcdd 100644
> --- a/config/rootfiles/common/colm
> +++ b/config/rootfiles/common/colm
> @@ -1,7 +1,48 @@
>  #usr/bin/colm
> +#usr/bin/colm-wrap
> +#usr/include/aapl
> +#usr/include/aapl/astring.h
> +#usr/include/aapl/avlbasic.h
> +#usr/include/aapl/avlcommon.h
> +#usr/include/aapl/avlibasic.h
> +#usr/include/aapl/avlikeyless.h
> +#usr/include/aapl/avlimap.h
> +#usr/include/aapl/avlimel.h
> +#usr/include/aapl/avlimelkey.h
> +#usr/include/aapl/avliset.h
> +#usr/include/aapl/avlitree.h
> +#usr/include/aapl/avlkeyless.h
> +#usr/include/aapl/avlmap.h
> +#usr/include/aapl/avlmel.h
> +#usr/include/aapl/avlmelkey.h
> +#usr/include/aapl/avlset.h
> +#usr/include/aapl/avltree.h
> +#usr/include/aapl/bstcommon.h
> +#usr/include/aapl/bstmap.h
> +#usr/include/aapl/bstset.h
> +#usr/include/aapl/bsttable.h
> +#usr/include/aapl/bubblesort.h
> +#usr/include/aapl/buffer.h
> +#usr/include/aapl/compare.h
> +#usr/include/aapl/dlcommon.h
> +#usr/include/aapl/dlist.h
> +#usr/include/aapl/dlistmel.h
> +#usr/include/aapl/dlistval.h
> +#usr/include/aapl/insertsort.h
> +#usr/include/aapl/mergesort.h
> +#usr/include/aapl/quicksort.h
> +#usr/include/aapl/resize.h
> +#usr/include/aapl/rope.h
> +#usr/include/aapl/sbstmap.h
> +#usr/include/aapl/sbstset.h
> +#usr/include/aapl/sbsttable.h
> +#usr/include/aapl/svector.h
> +#usr/include/aapl/table.h
> +#usr/include/aapl/vector.h
>  #usr/include/colm
>  #usr/include/colm/bytecode.h
>  #usr/include/colm/colm.h
> +#usr/include/colm/colmex.h
>  #usr/include/colm/config.h
>  #usr/include/colm/debug.h
>  #usr/include/colm/defs.h
> @@ -14,8 +55,34 @@
>  #usr/include/colm/struct.h
>  #usr/include/colm/tree.h
>  #usr/include/colm/type.h
> -#usr/lib/libcolm-0.13.0.6.so
> +#usr/include/libfsm
> +#usr/include/libfsm/action.h
> +#usr/include/libfsm/asm.h
> +#usr/include/libfsm/common.h
> +#usr/include/libfsm/dot.h
> +#usr/include/libfsm/fsmgraph.h
> +#usr/include/libfsm/gendata.h
> +#usr/include/libfsm/ragel.h
> +#usr/include/libfsm/redfsm.h
> +#usr/lib/libcolm-0.14.7.so
>  #usr/lib/libcolm.la
>  #usr/lib/libcolm.so
> +#usr/lib/libfsm-0.14.7.so
> +#usr/lib/libfsm.la
> +#usr/lib/libfsm.so
>  #usr/share/doc/colm
>  #usr/share/doc/colm/colm.vim
> +#usr/share/ril.lm
> +#usr/share/rlhc-c.lm
> +#usr/share/rlhc-crack.lm
> +#usr/share/rlhc-csharp.lm
> +#usr/share/rlhc-d.lm
> +#usr/share/rlhc-go.lm
> +#usr/share/rlhc-java.lm
> +#usr/share/rlhc-js.lm
> +#usr/share/rlhc-julia.lm
> +#usr/share/rlhc-main.lm
> +#usr/share/rlhc-ocaml.lm
> +#usr/share/rlhc-ruby.lm
> +#usr/share/rlhc-rust.lm
> +#usr/share/runtests
> diff --git a/lfs/colm b/lfs/colm
> index 5e118336e..5a7d22c93 100644
> --- a/lfs/colm
> +++ b/lfs/colm
> @@ -1,7 +1,7 @@
>  ###############################################################################
>  #                                                                             #
>  # IPFire.org - A linux based firewall                                         #
> -# Copyright (C) 2007-2018  IPFire Team  <info@ipfire.org>                     #
> +# Copyright (C) 2007-2023  IPFire Team  <info@ipfire.org>                     #
>  #                                                                             #
>  # This program is free software: you can redistribute it and/or modify        #
>  # it under the terms of the GNU General Public License as published by        #
> @@ -24,7 +24,7 @@
>  
>  include Config
>  
> -VER        = 0.13.0.6
> +VER        = 0.14.7
>  
>  THISAPP    = colm-$(VER)
>  DL_FILE    = $(THISAPP).tar.gz
> @@ -40,7 +40,7 @@ objects = $(DL_FILE)
>  
>  $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
>  
> -$(DL_FILE)_BLAKE2 = e5b00bc276fa3414cc9ec557a6e4ca93194f86cd6b3b1ad11611352962da1ef68aa1acd4aa62d47495ba04313dcc52e2a17588fefabf51572d19826c7bb70fe8
> +$(DL_FILE)_BLAKE2 = aa2144882a3bc0b7923f86be1d8c45a580a7611254d4815ccf0b69dbc3b0173bac0dd726285272596d2d837ec04a3ccfc741575469e2d7e3a48b101a533dba8f
>  
>  install : $(TARGET)
>  
> @@ -71,8 +71,11 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
>  	@$(PREBUILD)
>  	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
>  	$(UPDATE_AUTOMAKE)
> +	cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
> +	cd $(DIR_APP) && ./autogen.sh
>  	cd $(DIR_APP) && ./configure \
>  		--prefix=/usr \
> +		--disable-manual \
>  		--disable-static
>  	cd $(DIR_APP) && make $(MAKETUNING)
>  	cd $(DIR_APP) && make install
> diff --git a/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch b/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
> new file mode 100644
> index 000000000..65c7ea30d
> --- /dev/null
> +++ b/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
> @@ -0,0 +1,43 @@
> +diff -Naur colm-0.14.7.orig/configure.ac colm-0.14.7/configure.ac
> +--- colm-0.14.7.orig/configure.ac	2021-02-10 07:13:17.000000000 +0100
> ++++ colm-0.14.7/configure.ac	2023-01-22 16:50:04.910666917 +0100
> +@@ -45,6 +45,7 @@
> + AC_CHECK_TOOL(AR, ar)
> + AC_PROG_RANLIB
> + AC_PROG_LIBTOOL
> ++
> + SED_SUBST=["\
> + 	-e 's|@CXX@|${CXX}|g' \
> + 	-e 's|@CC@|${CC}|g' \
> +@@ -424,6 +425,13 @@
> + echo "#define VERSION \"$VERSION\"" > src/version.h
> + echo "#define PUBDATE \"$PUBDATE\"" >> src/version.h
> + 
> ++if test "x$enable_static" = "xyes"; then 
> ++	AC_DEFINE([LINK_STATIC], [1], [Link static lib when invoking C compile and link])
> ++fi
> ++
> ++if test "x$enable_shared" = "xyes"; then
> ++	AC_DEFINE([LINK_SHARED], [1], [Link shared lib when invoking C compile and link])
> ++fi
> + 
> + dnl
> + dnl Wrap up.
> +diff -Naur colm-0.14.7.orig/src/main.cc colm-0.14.7/src/main.cc
> +--- colm-0.14.7.orig/src/main.cc	2021-02-10 07:13:17.000000000 +0100
> ++++ colm-0.14.7/src/main.cc	2023-01-22 16:46:51.225559962 +0100
> +@@ -485,7 +485,14 @@
> + 				" -I%s/../aapl"
> + 				" -I%s/include"
> + 				" -L%s"
> ++#if defined(LINK_STATIC)
> + 				" %s/libcolm.a",
> ++#elif defined(LINK_SHARED)
> ++				" %s/libcolm.so",
> ++#else
> ++#				error "must enabled at least one of shared or static libs"
> ++#endif
> ++
> + 				binaryFn, intermedFn, srcLocation,
> + 				srcLocation, location, location );
> + 	}
  
Adolf Belka Jan. 27, 2023, 8:16 a.m. UTC | #2
Hi Peter,

On 27/01/2023 01:08, Peter Müller wrote:
> Hello Adolf,
> 
> thank you for this patch. It looks good to me, but there is already a source
> tarball on https://source.ipfire.org/source-2.x/colm-0.14.7.tar.gz (Marcel
> put it there on 2021-09-19, but it has a different checksum:
> 
> $ b2sum colm-0.14.7*
> aa2144882a3bc0b7923f86be1d8c45a580a7611254d4815ccf0b69dbc3b0173bac0dd726285272596d2d837ec04a3ccfc741575469e2d7e3a48b101a533dba8f  colm-0.14.7-github.tar.gz
> c8be14001e8dc3340f5c55fbf8140b86237ec9462699e417f618cf44c759307eda0ede9f7a9ef897f5b8bc51d1fdf8b7360872a30b4cf07ba8191e405940030c  colm-0.14.7-ipfire.tar.gz
> 
> Attempting to download colm's tarball from https://github.com/adrian-thurston/colm/archive/refs/tags/0.14.7.tar.gz,
> I get a file that has the same checksum as your patch does. A superficial
> investigation did not turn up the source of the c8be... tarball.
Yes, I downloaded my file from the github source. Also for the ragel version.

The c8be tarball is from http://www.colm.net/files/colm/colm-0.14.7.tar.gz
The link for that is on the http://www.colm.net/open-source/colm/  page.

I found the colm and ragel github location first so used that. It is the source that Arch Linux uses and when I am looking for the source I always first check where Arch Linux is downloading it from and try that location.

How should we decide where to get source files from if they are in two locations and how do you identify if there are multiple locations. Is github  preferred for the source or is it the last location that should be used.

Regards,
Adolf.
> 
> @Marcel: Where did you download it from?
> 
> Thanks, and best regards,
> Peter Müller
> 
> 
>> - Update from version 0.13.0.6 to 0.14.7
>> - Update of rootfile
>> - patch from colm commit fc61ecb required to fix bug of make looking for static and
>>     dynamic libs even if one of them was disabled
>> - Changelog is not available in source tarball or on website etc. Changes have to be
>>     reviewed by the commits https://github.com/adrian-thurston/colm/commits/0.14.7
>>
>> Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
>> ---
>>   config/rootfiles/common/colm                  | 69 ++++++++++++++++++-
>>   lfs/colm                                      |  9 ++-
>>   ...hared-and-link-libcolm-appropriately.patch | 43 ++++++++++++
>>   3 files changed, 117 insertions(+), 4 deletions(-)
>>   create mode 100644 src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
>>
>> diff --git a/config/rootfiles/common/colm b/config/rootfiles/common/colm
>> index 7f0d22396..a3ad4bcdd 100644
>> --- a/config/rootfiles/common/colm
>> +++ b/config/rootfiles/common/colm
>> @@ -1,7 +1,48 @@
>>   #usr/bin/colm
>> +#usr/bin/colm-wrap
>> +#usr/include/aapl
>> +#usr/include/aapl/astring.h
>> +#usr/include/aapl/avlbasic.h
>> +#usr/include/aapl/avlcommon.h
>> +#usr/include/aapl/avlibasic.h
>> +#usr/include/aapl/avlikeyless.h
>> +#usr/include/aapl/avlimap.h
>> +#usr/include/aapl/avlimel.h
>> +#usr/include/aapl/avlimelkey.h
>> +#usr/include/aapl/avliset.h
>> +#usr/include/aapl/avlitree.h
>> +#usr/include/aapl/avlkeyless.h
>> +#usr/include/aapl/avlmap.h
>> +#usr/include/aapl/avlmel.h
>> +#usr/include/aapl/avlmelkey.h
>> +#usr/include/aapl/avlset.h
>> +#usr/include/aapl/avltree.h
>> +#usr/include/aapl/bstcommon.h
>> +#usr/include/aapl/bstmap.h
>> +#usr/include/aapl/bstset.h
>> +#usr/include/aapl/bsttable.h
>> +#usr/include/aapl/bubblesort.h
>> +#usr/include/aapl/buffer.h
>> +#usr/include/aapl/compare.h
>> +#usr/include/aapl/dlcommon.h
>> +#usr/include/aapl/dlist.h
>> +#usr/include/aapl/dlistmel.h
>> +#usr/include/aapl/dlistval.h
>> +#usr/include/aapl/insertsort.h
>> +#usr/include/aapl/mergesort.h
>> +#usr/include/aapl/quicksort.h
>> +#usr/include/aapl/resize.h
>> +#usr/include/aapl/rope.h
>> +#usr/include/aapl/sbstmap.h
>> +#usr/include/aapl/sbstset.h
>> +#usr/include/aapl/sbsttable.h
>> +#usr/include/aapl/svector.h
>> +#usr/include/aapl/table.h
>> +#usr/include/aapl/vector.h
>>   #usr/include/colm
>>   #usr/include/colm/bytecode.h
>>   #usr/include/colm/colm.h
>> +#usr/include/colm/colmex.h
>>   #usr/include/colm/config.h
>>   #usr/include/colm/debug.h
>>   #usr/include/colm/defs.h
>> @@ -14,8 +55,34 @@
>>   #usr/include/colm/struct.h
>>   #usr/include/colm/tree.h
>>   #usr/include/colm/type.h
>> -#usr/lib/libcolm-0.13.0.6.so
>> +#usr/include/libfsm
>> +#usr/include/libfsm/action.h
>> +#usr/include/libfsm/asm.h
>> +#usr/include/libfsm/common.h
>> +#usr/include/libfsm/dot.h
>> +#usr/include/libfsm/fsmgraph.h
>> +#usr/include/libfsm/gendata.h
>> +#usr/include/libfsm/ragel.h
>> +#usr/include/libfsm/redfsm.h
>> +#usr/lib/libcolm-0.14.7.so
>>   #usr/lib/libcolm.la
>>   #usr/lib/libcolm.so
>> +#usr/lib/libfsm-0.14.7.so
>> +#usr/lib/libfsm.la
>> +#usr/lib/libfsm.so
>>   #usr/share/doc/colm
>>   #usr/share/doc/colm/colm.vim
>> +#usr/share/ril.lm
>> +#usr/share/rlhc-c.lm
>> +#usr/share/rlhc-crack.lm
>> +#usr/share/rlhc-csharp.lm
>> +#usr/share/rlhc-d.lm
>> +#usr/share/rlhc-go.lm
>> +#usr/share/rlhc-java.lm
>> +#usr/share/rlhc-js.lm
>> +#usr/share/rlhc-julia.lm
>> +#usr/share/rlhc-main.lm
>> +#usr/share/rlhc-ocaml.lm
>> +#usr/share/rlhc-ruby.lm
>> +#usr/share/rlhc-rust.lm
>> +#usr/share/runtests
>> diff --git a/lfs/colm b/lfs/colm
>> index 5e118336e..5a7d22c93 100644
>> --- a/lfs/colm
>> +++ b/lfs/colm
>> @@ -1,7 +1,7 @@
>>   ###############################################################################
>>   #                                                                             #
>>   # IPFire.org - A linux based firewall                                         #
>> -# Copyright (C) 2007-2018  IPFire Team  <info@ipfire.org>                     #
>> +# Copyright (C) 2007-2023  IPFire Team  <info@ipfire.org>                     #
>>   #                                                                             #
>>   # This program is free software: you can redistribute it and/or modify        #
>>   # it under the terms of the GNU General Public License as published by        #
>> @@ -24,7 +24,7 @@
>>   
>>   include Config
>>   
>> -VER        = 0.13.0.6
>> +VER        = 0.14.7
>>   
>>   THISAPP    = colm-$(VER)
>>   DL_FILE    = $(THISAPP).tar.gz
>> @@ -40,7 +40,7 @@ objects = $(DL_FILE)
>>   
>>   $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
>>   
>> -$(DL_FILE)_BLAKE2 = e5b00bc276fa3414cc9ec557a6e4ca93194f86cd6b3b1ad11611352962da1ef68aa1acd4aa62d47495ba04313dcc52e2a17588fefabf51572d19826c7bb70fe8
>> +$(DL_FILE)_BLAKE2 = aa2144882a3bc0b7923f86be1d8c45a580a7611254d4815ccf0b69dbc3b0173bac0dd726285272596d2d837ec04a3ccfc741575469e2d7e3a48b101a533dba8f
>>   
>>   install : $(TARGET)
>>   
>> @@ -71,8 +71,11 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
>>   	@$(PREBUILD)
>>   	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
>>   	$(UPDATE_AUTOMAKE)
>> +	cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
>> +	cd $(DIR_APP) && ./autogen.sh
>>   	cd $(DIR_APP) && ./configure \
>>   		--prefix=/usr \
>> +		--disable-manual \
>>   		--disable-static
>>   	cd $(DIR_APP) && make $(MAKETUNING)
>>   	cd $(DIR_APP) && make install
>> diff --git a/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch b/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
>> new file mode 100644
>> index 000000000..65c7ea30d
>> --- /dev/null
>> +++ b/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
>> @@ -0,0 +1,43 @@
>> +diff -Naur colm-0.14.7.orig/configure.ac colm-0.14.7/configure.ac
>> +--- colm-0.14.7.orig/configure.ac	2021-02-10 07:13:17.000000000 +0100
>> ++++ colm-0.14.7/configure.ac	2023-01-22 16:50:04.910666917 +0100
>> +@@ -45,6 +45,7 @@
>> + AC_CHECK_TOOL(AR, ar)
>> + AC_PROG_RANLIB
>> + AC_PROG_LIBTOOL
>> ++
>> + SED_SUBST=["\
>> + 	-e 's|@CXX@|${CXX}|g' \
>> + 	-e 's|@CC@|${CC}|g' \
>> +@@ -424,6 +425,13 @@
>> + echo "#define VERSION \"$VERSION\"" > src/version.h
>> + echo "#define PUBDATE \"$PUBDATE\"" >> src/version.h
>> +
>> ++if test "x$enable_static" = "xyes"; then
>> ++	AC_DEFINE([LINK_STATIC], [1], [Link static lib when invoking C compile and link])
>> ++fi
>> ++
>> ++if test "x$enable_shared" = "xyes"; then
>> ++	AC_DEFINE([LINK_SHARED], [1], [Link shared lib when invoking C compile and link])
>> ++fi
>> +
>> + dnl
>> + dnl Wrap up.
>> +diff -Naur colm-0.14.7.orig/src/main.cc colm-0.14.7/src/main.cc
>> +--- colm-0.14.7.orig/src/main.cc	2021-02-10 07:13:17.000000000 +0100
>> ++++ colm-0.14.7/src/main.cc	2023-01-22 16:46:51.225559962 +0100
>> +@@ -485,7 +485,14 @@
>> + 				" -I%s/../aapl"
>> + 				" -I%s/include"
>> + 				" -L%s"
>> ++#if defined(LINK_STATIC)
>> + 				" %s/libcolm.a",
>> ++#elif defined(LINK_SHARED)
>> ++				" %s/libcolm.so",
>> ++#else
>> ++#				error "must enabled at least one of shared or static libs"
>> ++#endif
>> ++
>> + 				binaryFn, intermedFn, srcLocation,
>> + 				srcLocation, location, location );
>> + 	}
  

Patch

diff --git a/config/rootfiles/common/colm b/config/rootfiles/common/colm
index 7f0d22396..a3ad4bcdd 100644
--- a/config/rootfiles/common/colm
+++ b/config/rootfiles/common/colm
@@ -1,7 +1,48 @@ 
 #usr/bin/colm
+#usr/bin/colm-wrap
+#usr/include/aapl
+#usr/include/aapl/astring.h
+#usr/include/aapl/avlbasic.h
+#usr/include/aapl/avlcommon.h
+#usr/include/aapl/avlibasic.h
+#usr/include/aapl/avlikeyless.h
+#usr/include/aapl/avlimap.h
+#usr/include/aapl/avlimel.h
+#usr/include/aapl/avlimelkey.h
+#usr/include/aapl/avliset.h
+#usr/include/aapl/avlitree.h
+#usr/include/aapl/avlkeyless.h
+#usr/include/aapl/avlmap.h
+#usr/include/aapl/avlmel.h
+#usr/include/aapl/avlmelkey.h
+#usr/include/aapl/avlset.h
+#usr/include/aapl/avltree.h
+#usr/include/aapl/bstcommon.h
+#usr/include/aapl/bstmap.h
+#usr/include/aapl/bstset.h
+#usr/include/aapl/bsttable.h
+#usr/include/aapl/bubblesort.h
+#usr/include/aapl/buffer.h
+#usr/include/aapl/compare.h
+#usr/include/aapl/dlcommon.h
+#usr/include/aapl/dlist.h
+#usr/include/aapl/dlistmel.h
+#usr/include/aapl/dlistval.h
+#usr/include/aapl/insertsort.h
+#usr/include/aapl/mergesort.h
+#usr/include/aapl/quicksort.h
+#usr/include/aapl/resize.h
+#usr/include/aapl/rope.h
+#usr/include/aapl/sbstmap.h
+#usr/include/aapl/sbstset.h
+#usr/include/aapl/sbsttable.h
+#usr/include/aapl/svector.h
+#usr/include/aapl/table.h
+#usr/include/aapl/vector.h
 #usr/include/colm
 #usr/include/colm/bytecode.h
 #usr/include/colm/colm.h
+#usr/include/colm/colmex.h
 #usr/include/colm/config.h
 #usr/include/colm/debug.h
 #usr/include/colm/defs.h
@@ -14,8 +55,34 @@ 
 #usr/include/colm/struct.h
 #usr/include/colm/tree.h
 #usr/include/colm/type.h
-#usr/lib/libcolm-0.13.0.6.so
+#usr/include/libfsm
+#usr/include/libfsm/action.h
+#usr/include/libfsm/asm.h
+#usr/include/libfsm/common.h
+#usr/include/libfsm/dot.h
+#usr/include/libfsm/fsmgraph.h
+#usr/include/libfsm/gendata.h
+#usr/include/libfsm/ragel.h
+#usr/include/libfsm/redfsm.h
+#usr/lib/libcolm-0.14.7.so
 #usr/lib/libcolm.la
 #usr/lib/libcolm.so
+#usr/lib/libfsm-0.14.7.so
+#usr/lib/libfsm.la
+#usr/lib/libfsm.so
 #usr/share/doc/colm
 #usr/share/doc/colm/colm.vim
+#usr/share/ril.lm
+#usr/share/rlhc-c.lm
+#usr/share/rlhc-crack.lm
+#usr/share/rlhc-csharp.lm
+#usr/share/rlhc-d.lm
+#usr/share/rlhc-go.lm
+#usr/share/rlhc-java.lm
+#usr/share/rlhc-js.lm
+#usr/share/rlhc-julia.lm
+#usr/share/rlhc-main.lm
+#usr/share/rlhc-ocaml.lm
+#usr/share/rlhc-ruby.lm
+#usr/share/rlhc-rust.lm
+#usr/share/runtests
diff --git a/lfs/colm b/lfs/colm
index 5e118336e..5a7d22c93 100644
--- a/lfs/colm
+++ b/lfs/colm
@@ -1,7 +1,7 @@ 
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2018  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2023  IPFire Team  <info@ipfire.org>                     #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -24,7 +24,7 @@ 
 
 include Config
 
-VER        = 0.13.0.6
+VER        = 0.14.7
 
 THISAPP    = colm-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@  objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_BLAKE2 = e5b00bc276fa3414cc9ec557a6e4ca93194f86cd6b3b1ad11611352962da1ef68aa1acd4aa62d47495ba04313dcc52e2a17588fefabf51572d19826c7bb70fe8
+$(DL_FILE)_BLAKE2 = aa2144882a3bc0b7923f86be1d8c45a580a7611254d4815ccf0b69dbc3b0173bac0dd726285272596d2d837ec04a3ccfc741575469e2d7e3a48b101a533dba8f
 
 install : $(TARGET)
 
@@ -71,8 +71,11 @@  $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 	@$(PREBUILD)
 	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
 	$(UPDATE_AUTOMAKE)
+	cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
+	cd $(DIR_APP) && ./autogen.sh
 	cd $(DIR_APP) && ./configure \
 		--prefix=/usr \
+		--disable-manual \
 		--disable-static
 	cd $(DIR_APP) && make $(MAKETUNING)
 	cd $(DIR_APP) && make install
diff --git a/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch b/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
new file mode 100644
index 000000000..65c7ea30d
--- /dev/null
+++ b/src/patches/colm-0.14.7-check-enable_static-and-enable_shared-and-link-libcolm-appropriately.patch
@@ -0,0 +1,43 @@ 
+diff -Naur colm-0.14.7.orig/configure.ac colm-0.14.7/configure.ac
+--- colm-0.14.7.orig/configure.ac	2021-02-10 07:13:17.000000000 +0100
++++ colm-0.14.7/configure.ac	2023-01-22 16:50:04.910666917 +0100
+@@ -45,6 +45,7 @@
+ AC_CHECK_TOOL(AR, ar)
+ AC_PROG_RANLIB
+ AC_PROG_LIBTOOL
++
+ SED_SUBST=["\
+ 	-e 's|@CXX@|${CXX}|g' \
+ 	-e 's|@CC@|${CC}|g' \
+@@ -424,6 +425,13 @@
+ echo "#define VERSION \"$VERSION\"" > src/version.h
+ echo "#define PUBDATE \"$PUBDATE\"" >> src/version.h
+ 
++if test "x$enable_static" = "xyes"; then 
++	AC_DEFINE([LINK_STATIC], [1], [Link static lib when invoking C compile and link])
++fi
++
++if test "x$enable_shared" = "xyes"; then
++	AC_DEFINE([LINK_SHARED], [1], [Link shared lib when invoking C compile and link])
++fi
+ 
+ dnl
+ dnl Wrap up.
+diff -Naur colm-0.14.7.orig/src/main.cc colm-0.14.7/src/main.cc
+--- colm-0.14.7.orig/src/main.cc	2021-02-10 07:13:17.000000000 +0100
++++ colm-0.14.7/src/main.cc	2023-01-22 16:46:51.225559962 +0100
+@@ -485,7 +485,14 @@
+ 				" -I%s/../aapl"
+ 				" -I%s/include"
+ 				" -L%s"
++#if defined(LINK_STATIC)
+ 				" %s/libcolm.a",
++#elif defined(LINK_SHARED)
++				" %s/libcolm.so",
++#else
++#				error "must enabled at least one of shared or static libs"
++#endif
++
+ 				binaryFn, intermedFn, srcLocation,
+ 				srcLocation, location, location );
+ 	}