commit e2c47302221e1bd8765f7aa6ad0fe48934041c38 Author: Jay Larson Date: Thu Oct 27 08:52:28 2016 -0500 First check in diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..e6e336c --- /dev/null +++ b/Makefile @@ -0,0 +1,92 @@ +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation here: +# (http://www.gnu.org/licenses/gpl-2.0.html) +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +DEPENDS = glibc,zlib +ARCH = x86_64 +URL = https://www.tcl.tk/ +DESC = Tcl (Tool Command Language) is a very powerful but easy to learn \ +dynamic programming language, suitable for a very wide range of uses +SNAPVER = sr0 + +ARCHIVE := $(PWD)/SRC/$(shell ls SRC|egrep '(bz2|gz|tar|xz)$$'|tail -1) +TYPE := $(shell file -ib $(ARCHIVE)|cut -d';' -f1|tr -d '\n') +SRCDIR := $(shell tar -tf $(ARCHIVE)|head -1|sed 's/\/.*//') +PATCHDIR := $(PWD)/SRC/patches +VERSION := $(shell echo $(SRCDIR)|egrep -o '[0-9].*'|sed 's/^-//')$(SNAPVER) + +include /usr/share/snap/Makefile.snaplinux + +$(SRCDIR)/unix/configure: $(ARCHIVE) + @if [ '$(TYPE)' == 'application/x-bzip2' ]; then \ + tar -jxf $(ARCHIVE); \ + elif [ '$(TYPE)' == 'application/x-gzip' ]; then \ + tar -zxf $(ARCHIVE); \ + elif [ '$(TYPE)' == 'application/x-tar' ]; then \ + tar -xf $(ARCHIVE); \ + elif [ '$(TYPE)' == 'application/x-xz' ]; then \ + tar -xf $(ARCHIVE); \ + else \ + echo 'Unable to determine archive type'; \ + exit 1; \ + fi + @touch $(SRCDIR)/unix/configure + +$(SRCDIR)/unix/config.log: $(SRCDIR)/unix/configure + @cd $(SRCDIR) && \ + for patch in `find $(PATCHDIR) -name \*.patch|sort`; do \ + patch --verbose -Np1 -i $$patch; \ + done + @cd $(SRCDIR)/unix; \ + ./configure \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --enable-64bit \ + --build=x86_64-snap-linux-gnu \ + --host=x86_64-snap-linux-gnu \ + --target=x86_64-snap-linux-gnu + +$(SRCDIR)/unix/tclsh: $(SRCDIR)/unix/config.log + @cd $(SRCDIR)/unix && make + @sed -e "s#$(SRCDIR)/unix#/usr/lib#" \ + -e "s#$(SRCDIR)#/usr/include#" \ + -i $(SRCDIR)/unix/tclConfig.sh + @sed -e "s#$(SRCDIR)/unix/pkgs/tdbc1.0.4#/usr/lib/tdbc1.0.4#" \ + -e "s#$(SRCDIR)/pkgs/tdbc1.0.4/generic#/usr/include#" \ + -e "s#$(SRCDIR)/pkgs/tdbc1.0.4/library#/usr/lib/tcl8.6#" \ + -e "s#$(SRCDIR)/pkgs/tdbc1.0.4#/usr/include#" \ + -i $(SRCDIR)/unix/pkgs/tdbc1.0.4/tdbcConfig.sh + @sed -e "s#$(SRCDIR)/unix/pkgs/itcl4.0.5#/usr/lib/itcl4.0.5#" \ + -e "s#$(SRCDIR)/pkgs/itcl4.0.5/generic#/usr/include#" \ + -e "s#$(SRCDIR)/pkgs/itcl4.0.5#/usr/include#" \ + -i $(SRCDIR)/unix/pkgs/itcl4.0.5/itclConfig.sh + +$(ROOT): $(SRCDIR)/unix/tclsh + @if [ -d $(ROOT) ]; then \ + touch $(ROOT); \ + else \ + mkdir -v $(ROOT); \ + fi + + @cd $(SRCDIR)/unix; \ + make install DESTDIR=$(ROOT) && \ + make install-private-headers DESTDIR=$(ROOT) + @ln -svf `basename $(ROOT)/usr/bin/tclsh*` $(ROOT)/usr/bin/tclsh + +test: $(ROOT) + @cd $(SRCDIR)/unix; \ + make test + +clean: + @rm -rvf $(ROOT) \ + $(SNAPINFO) \ + $(MANIFEST) \ + $(FILES) \ + $(SRCDIR) + diff --git a/SNAP/README b/SNAP/README new file mode 100644 index 0000000..19a3ff1 --- /dev/null +++ b/SNAP/README @@ -0,0 +1,3 @@ +This is the directory where the manifest, snapinfo, and files.tar.gz +files will be created. It is also where the usher file should be +placed if it is required by the package. diff --git a/SRC/patches/README b/SRC/patches/README new file mode 100644 index 0000000..253cdcd --- /dev/null +++ b/SRC/patches/README @@ -0,0 +1,2 @@ +Place any patch files here and preface each with a number indicating +the order of execution. Patch files are expected to use a .patch extension. diff --git a/SRC/tcl8.6.6-src.tar.gz b/SRC/tcl8.6.6-src.tar.gz new file mode 100644 index 0000000..68a9210 Binary files /dev/null and b/SRC/tcl8.6.6-src.tar.gz differ diff --git a/SRC/tcl8.6.6-src.tar.gz.sha1 b/SRC/tcl8.6.6-src.tar.gz.sha1 new file mode 100644 index 0000000..69e77ed --- /dev/null +++ b/SRC/tcl8.6.6-src.tar.gz.sha1 @@ -0,0 +1 @@ +169dd1589cad62c9fac4257c113db245da502cd0