Package: chicken Version: 2.3-1 Severity: normal Tags: patch
Chicken-setup installs extensions (eggs) to /usr/lib/chicken which might be mounted as read-only. http://www.debian.org/doc/packaging-manuals/fhs/fhs-2.3.html#PURPOSE31 "/var is specified here in order to make it possible to mount /usr read-only. Everything that once went into /usr that is written to during system operation (as opposed to installation and software maintenance) must be in /var." I would recommend to move the repository to /var/lib/chicken and wrote a patch which allows to change the repository path by setting localstatedir (e.g. --localstatedir=/var). (This patch is against chicken 2.41.) Regards -- Philipp Benner
--- chicken-2.41.orig/Makefile.am +++ chicken-2.41/Makefile.am @@ -58,8 +58,8 @@ chicken_static_LDADD = chicken.o support.o easyffi.o compiler.o optimizer.o c-platform.o c-backend.o batch-driver.o libchicken.la $(MORE_STATIC_LIBS) chicken_static_LDFLAGS = -static $(LINKFLAGS) -BASE_CPPFLAGS=-DC_STACK_GROWS_DOWNWARD=$(STACK_GROWS_DOWNWARD) -DC_INSTALL_LIB_HOME='"$(pkglibdir)/$(BINARY_VERSION)"' \ - -DC_INSTALL_HOME='"$(pkgdatadir)"' -DC_USE_C_DEFAULTS +BASE_CPPFLAGS=-DC_STACK_GROWS_DOWNWARD=$(STACK_GROWS_DOWNWARD) \ + -DC_INSTALL_LIB_HOME='"$(localstatedir)/lib/chicken/$(BINARY_VERSION)"' -DC_INSTALL_HOME='"$(pkgdatadir)"' -DC_USE_C_DEFAULTS INCLUDES=$(BASE_CPPFLAGS) -DC_NO_PIC_NO_DLL library.lo: library.c chicken.h @@ -123,7 +123,7 @@ echo "# define C_INSTALL_HOME \"${pkgdatadir}\"" >>chicken-defaults.h; \ echo "#endif" >> chicken-defaults.h; \ echo "#ifndef C_INSTALL_LIB_HOME" >> chicken-defaults.h; \ - echo "# define C_INSTALL_LIB_HOME \"${pkglibdir}/${BINARY_VERSION}\"" >>chicken-defaults.h; \ + echo "# define C_INSTALL_LIB_HOME \"${localstatedir}/lib/chicken/${BINARY_VERSION}\"" >>chicken-defaults.h; \ echo "#endif" >> chicken-defaults.h; \ echo "#ifndef C_DEFAULT_TARGET_STACK_SIZE" >> chicken-defaults.h; \ echo "# define C_DEFAULT_TARGET_STACK_SIZE ($${nursery})" >>chicken-defaults.h; \ --- chicken-2.41.orig/Makefile.in +++ chicken-2.41/Makefile.in @@ -200,8 +200,8 @@ chicken_static_LDADD = chicken.o support.o easyffi.o compiler.o optimizer.o c-platform.o c-backend.o batch-driver.o libchicken.la $(MORE_STATIC_LIBS) chicken_static_LDFLAGS = -static $(LINKFLAGS) -BASE_CPPFLAGS = -DC_STACK_GROWS_DOWNWARD=$(STACK_GROWS_DOWNWARD) -DC_INSTALL_LIB_HOME='"$(pkglibdir)/$(BINARY_VERSION)"' \ - -DC_INSTALL_HOME='"$(pkgdatadir)"' -DC_USE_C_DEFAULTS +BASE_CPPFLAGS = -DC_STACK_GROWS_DOWNWARD=$(STACK_GROWS_DOWNWARD) \ + -DC_INSTALL_LIB_HOME='"$(localstatedir)/lib/chicken/$(BINARY_VERSION)"' -DC_INSTALL_HOME='"$(pkgdatadir)"' -DC_USE_C_DEFAULTS INCLUDES = $(BASE_CPPFLAGS) -DC_NO_PIC_NO_DLL @@ -1599,7 +1599,7 @@ echo "# define C_INSTALL_HOME \"${pkgdatadir}\"" >>chicken-defaults.h; \ echo "#endif" >> chicken-defaults.h; \ echo "#ifndef C_INSTALL_LIB_HOME" >> chicken-defaults.h; \ - echo "# define C_INSTALL_LIB_HOME \"${pkglibdir}/${BINARY_VERSION}\"" >>chicken-defaults.h; \ + echo "# define C_INSTALL_LIB_HOME \"${localstatedir}/lib/chicken/${BINARY_VERSION}\"" >>chicken-defaults.h; \ echo "#endif" >> chicken-defaults.h; \ echo "#ifndef C_DEFAULT_TARGET_STACK_SIZE" >> chicken-defaults.h; \ echo "# define C_DEFAULT_TARGET_STACK_SIZE ($${nursery})" >>chicken-defaults.h; \
signature.asc
Description: Digital signature