--- smarteiffel2-2.3.orig/debian/compat +++ smarteiffel2-2.3/debian/compat @@ -0,0 +1 @@ +4 --- smarteiffel2-2.3.orig/debian/rules +++ smarteiffel2-2.3/debian/rules @@ -0,0 +1,92 @@ +#!/usr/bin/make -f + +# This package uses cdbs +# It also uses the dbs patch system +DEB_TAR_SRCDIR := SmartEiffel +include /usr/share/cdbs/1/rules/tarball.mk +include /usr/share/cdbs/1/rules/simple-patchsys.mk +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/class/makefile.mk +DEB_TARBALL := smarteiffel.tgz +DEB_BUILDDIR = build-tree/SmartEiffel +DEB_DESTDIR = $(CURDIR)/debian/smarteiffel2 +VISIONDIR = $(CURDIR)/debian/smarteiffel2-vision +EIFTESTDIR = $(CURDIR)/debian/smarteiffel2-test +DEB_COMPRESS_EXCLUDE := .e .html +DEB_MAKE_CLEAN_TARGET := clean +DEB_MAKE_BUILD_TARGET := all DESTDIR=$(DEB_DESTDIR) +DEB_MAKE_INSTALL_TARGET := install DESTDIR=$(DEB_DESTDIR) +# This gets round a bug in cdbs +cdbs_simple_patchsys_levels = 1 0 2 3 +# no check for this software +# DEB_MAKE_CHECK_TARGET := + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +SEINSTDIR=/usr/lib/smarteiffel2 +export PATH=$(DEB_BUILDDIR)/bin:/usr/bin:/usr/sbin:/bin:/usr/sbin + +SYMMAN= clean.1 compile_to_c.1 compile_to_jvm.1 finder.1 pretty.1 \ + print_jvm_class.1 se.1 short.1 + +SELIBS=lib_std lib_rand lib_show lib_se + + +# Installation directory +SEDIR=$(CURDIR)/$(DEB_BUILDDIR) +export SmartEiffel=$(SEDIR)/serc2 +export SEDIR + +INSTALL = /usr/bin/install -o root -g root +INSTALL_DATA = $(INSTALL) -m 644 +INSTALL_SCRIPT = $(INSTALL) -m 755 +INSTALL_PROGRAM = $(INSTALL_SCRIPT) + +post-patches:: + export PATH=$(SEDIR)/bin:$$PATH + rm -rf $(SEDIR)/serc2 + mkdir -p $(SEDIR)/serc2 + sed -e "s|%SmartEiffel%|$(SEDIR)|" $(SEDIR)/vanilla.se + +clean:: + -rm -f *.jpeg + -rm -f debian/stamp-* + -rm -f *.cdbs-config_list + +common-install-arch:: + $(INSTALL_PROGRAM) $(SEDIR)/bin/* $(DEB_DESTDIR)/usr/lib/smarteiffel2/bin + -rm $(DEB_DESTDIR)/usr/lib/smarteiffel2/bin/README.txt + cp -a $(SEDIR)/lib $(SEDIR)/short $(DEB_DESTDIR)/usr/lib/smarteiffel2 + $(INSTALL) -d $(DEB_DESTDIR)/usr/lib/smarteiffel2/short/html_deb + $(INSTALL_SCRIPT) debian/deb_hooks.sh $(DEB_DESTDIR)/usr/lib/smarteiffel2/short/html_deb + cd $(DEB_DESTDIR)/usr/lib/smarteiffel2/sys && \ + echo linux.c > gc && \ + echo "gcc -pipe" > compiler.se + cd $(SEDIR)/ && cp -a grand_book man misc tutorial $(DEB_DESTDIR)/usr/share/doc/smarteiffel2 + cd $(SEDIR)/ && cp -a test_suite $(EIFTESTDIR)/usr/lib/smarteiffel2 + mv $(DEB_DESTDIR)/usr/share/doc/smarteiffel2/man/*.html $(DEB_DESTDIR)/usr/share/doc/smarteiffel2/html + cp debian/*.uu $(DEB_DESTDIR)/usr/share/doc/smarteiffel2/html + $(INSTALL_DATA) $(SEDIR)/tutorial/ace/template.ace $(DEB_DESTDIR)/usr/lib/smarteiffel2 + cp -a $(SEDIR)/sys/plugins $(SEDIR)/sys/runtime $(DEB_DESTDIR)/usr/lib/smarteiffel2/sys + $(INSTALL_DATA) debian/dhelp $(DEB_DESTDIR)/usr/share/doc/smarteiffel2/.dhelp + cd $(DEB_DESTDIR)/usr/share/doc/smarteiffel2/html && \ + uudecode *uu && rm *uu + # Fix permissions + find $(DEB_DESTDIR) -type f -exec chmod 644 {} \; + find $(DEB_DESTDIR) -type f -name *.sh -exec chmod 755 {} \; + find $(DEB_DESTDIR) -type f -name *.SH -exec chmod 755 {} \; + chmod 755 $(DEB_DESTDIR)/usr/lib/smarteiffel2/bin/* + chmod a-x $(DEB_DESTDIR)/usr/lib/smarteiffel2/bin/READ_ME.txt + install -m 644 debian/vanilla.se.pkg $(DEB_DESTDIR)/etc/serc2/vanilla.se + mv $(DEB_DESTDIR)/usr/lib/smarteiffel2/lib/vision $(VISIONDIR)/usr/lib/smarteiffel2/lib + mv $(DEB_DESTDIR)/usr/lib/smarteiffel2/sys/plugins/vision $(VISIONDIR)/usr/lib/smarteiffel2/sys/plugins + mv $(DEB_DESTDIR)/usr/lib/smarteiffel2/bin/eiffeltest $(EIFTESTDIR)/usr/lib/smarteiffel2/bin + find $(EIFTESTDIR)/usr/lib/smarteiffel2/test_suite -type f | xargs chmod a-x + sed -e '/^vision\//d' $(DEB_DESTDIR)/usr/lib/smarteiffel2/lib/loadpath.se >>$$ + mv $$ $(DEB_DESTDIR)/usr/lib/smarteiffel2/lib/loadpath.se --- smarteiffel2-2.3.orig/debian/postinst +++ smarteiffel2-2.3/debian/postinst @@ -0,0 +1,57 @@ +#! /bin/sh + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package +# +# quoting from the policy: +# Any necessary prompting should almost always be confined to the +# post-installation script, and should be protected with a conditional +# so that unnecessary prompting doesn't happen if a package's +# installation fails and the `postinst' is called with `abort-upgrade', +# `abort-remove' or `abort-deconfigure'. + + +case "$1" in + configure) + + export sedir=/usr/lib/smarteiffel2 + export SmartEiffel=${sedir}/sys/system.se + + cd /usr/bin + ln -sf ../lib/smarteiffel2/bin/se se + cd /usr/lib/smarteiffel2/short/html_deb + ./deb_hooks.sh + cd ../.. + + # Build the class HTML pages + cd /usr/share/doc/smarteiffel2/html/base + se doc || exit 1 + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + --- smarteiffel2-2.3.orig/debian/changelog +++ smarteiffel2-2.3/debian/changelog @@ -0,0 +1,44 @@ +smarteiffel2 (2.3-2) unstable; urgency=low + + * Package orphaned + + -- Oliver Elphick Thu, 15 Nov 2007 07:38:01 +0000 + +smarteiffel2 (2.3-1) unstable; urgency=low + + * New upstream release + + -- Oliver Elphick Mon, 29 Jul 2007 17:00:23 +0100 + +smarteiffel2 (2.2.991.beta3.2-1) unstable; urgency=low + + * New upstream beta release of 2.3 - beta3.2 + * Changed FSF's address to their new mailing address in copyright. + * Remove vision/ line from /usr/lib/smarteiffel2/lib/loadpath.se and + have smarteiffel2-vision add it again in its postinst. Also remove + unnecessary specification of loadpath.se path from "se doc" command + in postinst. Closes: #430188 + + -- Oliver Elphick Tue, 26 Jun 2007 17:19:44 +0100 + +smarteiffel2 (2.2.99.beta3.2.svn8415-1) unstable; urgency=low + + * Latest svn version (8415) + * Copyright file now summarises all copyrights and licences. + * Exclude work directory from the source + * Separate out vision and eiffeltest into their own binary packages + + -- Oliver Elphick Sat, 26 May 2007 12:27:20 +0100 + +smarteiffel2 (2.2.99.beta3.2.svn8276-1) unstable; urgency=low + + * Closes: #406226 (ITP) + * Correct paths in /etc/serc2/vanilla.se and remove the tools path. + * Move /etc/serc2 to /etc/serc2/vanilla.se + * Add the grand_book directory to /usr/share/doc/smarteiffel2 + * Use serc2 instead of serc throughout + * Snapshot of svn version 8276 + * First release of SmartEiffel version 2 for Debian + + -- Oliver Elphick Tue, 24 Apr 2007 18:40:39 +0100 + --- smarteiffel2-2.3.orig/debian/dirs +++ smarteiffel2-2.3/debian/dirs @@ -0,0 +1,8 @@ +etc +etc/serc2 +usr/bin +usr/lib/smarteiffel2/bin +usr/lib/smarteiffel2/lib +usr/lib/smarteiffel2/sys +usr/share/doc/smarteiffel2/html/base +usr/share/man/man1 --- smarteiffel2-2.3.orig/debian/README.Debian +++ smarteiffel2-2.3/debian/README.Debian @@ -0,0 +1,20 @@ +smarteiffel2 for Debian +----------------------- + +This package introduces version 2 of smarteiffel; there are many incompatible +changes between it and SmartEiffel 1.1 Version 1.2 of SmartEiffel goes some +way towards easing the transition, but SmartEiffel has begun to diverge +from other Eiffel implementations and may now be regarded as possibly a +different language rather than merely a different dialect. + +See http://smarteiffel.loria.fr for up-to-date documentation. + +Debian difference to upstream +============================= + +The default serc directory in the upstream version is /etc/serc or +$HOME/.serc. In the Debian version, the equivalents are /etc/serc2 and +$HOME/.serc2. This is to avoid clashes with the smarteiffel package, in +case that may be installed at the same time. + + -- Oliver Elphick , Wed, 24 Apr 2007 23:24:25 +0100 --- smarteiffel2-2.3.orig/debian/menu +++ smarteiffel2-2.3/debian/menu @@ -0,0 +1,3 @@ +?package(smarteiffel2):needs="text" section="Apps/Programming"\ + title="SmartEiffel2" description="The GNU Eiffel compiler"\ + command="/usr/bin/se" --- smarteiffel2-2.3.orig/debian/smarteiffel2.doc-base +++ smarteiffel2-2.3/debian/smarteiffel2.doc-base @@ -0,0 +1,10 @@ +Document: smarteiffel2 +Title: SmartEiffel 2 - The GNU Eiffel compiler +Author: The SmartEiffel Development Team +Abstract: Manual for the SmartEiffel compiler and + associated tools. +Section: Apps/Programming + +Format: HTML +Index: /usr/share/doc/smarteiffel2/html/index.html +Files: /usr/share/doc/smarteiffel2/html/*.html --- smarteiffel2-2.3.orig/debian/patches/01serc2.patch +++ smarteiffel2-2.3/debian/patches/01serc2.patch @@ -0,0 +1,228 @@ +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/install/germ/compile_to_c1.c smarteiffel2-2.3.new/build-tree/SmartEiffel/install/germ/compile_to_c1.c +--- SmartEiffel/install/germ/compile_to_c1.c 2007-07-11 18:23:45.000000000 +0100 ++++ SmartEiffel/install/germ/compile_to_c1.c 2007-07-30 17:19:37.000000000 +0100 +@@ -1409,7 +1409,7 @@ + char*s30_1944903="ceiling"; + char*s343_235492225="Attributes cannot have a rescue compound."; + char*s30_55040341="put_16_be"; +-char*s276_28418819="/etc/serc"; ++char*s276_28418819="/etc/serc2"; + char*s29_10648581="obsolete"; + char*s242_1819737650="Must use exactly 4 hexadecimal digits for INTEGER_16."; + char*s13_1210=".\n\n"; +@@ -2006,7 +2006,7 @@ + char*s30_2504="SET"; + char*s69_1656731300=" in the section ["; + char*s221_49917876="if(NULL!="; +-char*s276_193194="/.serc"; ++char*s276_193194="/.serc2"; + char*s237_207986277="OpenVMS_CC"; + char*s242_180894=" error"; + char*s255_1477688005=": unsupported option \""; +@@ -3363,7 +3363,7 @@ + char*s294_1985327250="se_gc_check_id(o,"; + char*s294_1196941282="n->object=M"; + char*s30_1176378494="type_can_be_assigned_to_item"; +-char*s276_1096544670="/lang/eiffel/.serc"; ++char*s276_1096544670="/lang/eiffel/.serc2"; + char*s220_203714719="Obsolete \""; + char*s30_55924644="std_error"; + char*s550_2097247="na_env "; +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/install.c smarteiffel2-2.3.new/build-tree/SmartEiffel/install.c +--- SmartEiffel/install.c 2007-07-11 18:23:54.000000000 +0100 ++++ SmartEiffel/install.c 2007-07-30 17:20:55.000000000 +0100 +@@ -470,7 +470,7 @@ + char*s30_55040341="put_16_be"; + char*s25_440800309="6. Change the C++ compiler type"; + char*s25_1595244596="\n0. Return to the previous menu\n\nYour choice ["; +-char*s25_28418819="/etc/serc"; ++char*s25_28418819="/etc/serc2"; + char*s13_1210=".\n\n"; + char*s80_767646015="\" while the second is in the cluster \""; + char*s30_9529116="add_last"; +@@ -625,7 +625,7 @@ + char*s25_8647="0]: "; + char*s30_2504="SET"; + char*s68_1656731300=" in the section ["; +-char*s257_193194="/.serc"; ++char*s257_193194="/.serc2"; + char*s236_207986277="OpenVMS_CC"; + char*s25_205101460="] section\n"; + char*s25_858276153="10. Set the number of C processes\n"; +@@ -721,7 +721,7 @@ + char*s30_421505="method"; + char*s29_3249="jar"; + char*s25_1736977997="\nThis compiler has no known C++ capabilities.\n In order to compile C++ programs, please also pick a C++ compiler.\n\nType if you don\'t know what this is all about.\n"; +-char*s25_46319=".serc"; ++char*s25_46319=".serc2"; + char*s25_1074386150="This tool ("; + char*s30_33120277="CHARACTER"; + char*s236_3294="lcc"; +@@ -1021,7 +1021,7 @@ + char*s236_18144="vpcc"; + char*s71_1986499="fastjar"; + char*s30_1176378494="type_can_be_assigned_to_item"; +-char*s25_1096544670="/lang/eiffel/.serc"; ++char*s25_1096544670="/lang/eiffel/.serc2"; + char*s219_203714719="Obsolete \""; + char*s30_55924644="std_error"; + char*s25_968511628="*** Warning: unable to check the validity of the compiler executable name\n (porbably because it is not fully specified.\n"; +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/make_release.sh smarteiffel2-2.3.new/build-tree/SmartEiffel/make_release.sh +--- SmartEiffel/make_release.sh 2007-07-11 18:23:54.000000000 +0100 ++++ SmartEiffel/make_release.sh 2007-07-30 17:27:20.000000000 +0100 +@@ -335,8 +335,8 @@ + echo + + se=$SmartEiffel +- export SmartEiffel=${SmartEiffel:-$HOME/.serc} +- if [ "$SmartEiffel" != "$se" -a "$SmartEiffel" != /etc/serc -a "$SmartEiffel" != $HOME/.serc ]; then ++ export SmartEiffel=${SmartEiffel:-$HOME/.serc2} ++ if [ "$SmartEiffel" != "$se" -a "$SmartEiffel" != /etc/serc2 -a "$SmartEiffel" != $HOME/.serc2 ]; then + echo + echo '*** The SmartEiffel location is not standard.' + echo '*** To use SmartEiffel, please set the SmartEiffel variable to' +@@ -468,7 +468,7 @@ + LIB=${PREFIX}/lib/smarteiffel + DOC=${DOCDIR:-${PREFIX}/doc}/smarteiffel + CONF=${ETCDIR:-${USRDIR:-}/etc} +- export SmartEiffel=${CONF}/serc ++ export SmartEiffel=${CONF}/serc2 + if [ -n "$SE_PREFIX" ]; then + # useful for boxed installs + SE_BIN=${SE_BIN:-${LIB#$SE_PREFIX}} +@@ -478,7 +478,7 @@ + SE_TOOLS=${SE_TOOLS:-${LIB#$SE_PREFIX}} + SE_LIB=${SE_LIB:-${LIB#$SE_PREFIX}} + fi +- if [ $SmartEiffel != /etc/serc -a $SmartEiffel != $HOME/.serc ]; then ++ if [ $SmartEiffel != /etc/serc2 -a $SmartEiffel != $HOME/.serc2 ]; then + foreground red + bold + echo +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/man/system.txt smarteiffel2-2.3.new/build-tree/SmartEiffel/man/system.txt +--- SmartEiffel/man/system.txt 2007-07-11 18:23:53.000000000 +0100 ++++ SmartEiffel/man/system.txt 2007-07-30 17:24:33.000000000 +0100 +@@ -38,6 +38,10 @@ + sought in standard places, which depend on the system SmartEiffel + guesses it is running upon (which may not be as accurate as what you + set in the configuration file itself). ++ * On Debian GNU/Linux, using the Debian package, the standard places ++ are (in that order) $HOME/.serc2 and /etc/serc2. (This is to ++ allow the package to coexist with the package of SmartEiffel ++ version 1.1.) + * On Unix or Linux, the standard places are (in that order) + $HOME/.serc and /etc/serc + * On Windows, the standard places are (in that order) +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/misc/eiffel.bash smarteiffel2-2.3.new/build-tree/SmartEiffel/misc/eiffel.bash +--- SmartEiffel/misc/eiffel.bash 2007-07-11 18:23:20.000000000 +0100 ++++ SmartEiffel/misc/eiffel.bash 2007-07-30 17:25:44.000000000 +0100 +@@ -61,7 +61,7 @@ + _se__filedir + ;; + -c_mode) +- # the C modes are in the serc file. Use a trick to find this file (finder hello_world). ++ # the C modes are in the serc2 file. Use a trick to find this file (finder hello_world). + serc="$("$se" find hello_world -verbose | grep -E "^Using the configuration file:" | cut -c31-)" && { + c_modes="$(cat "$serc" | awk -F'[][]' '/^\[.*\]$/ {print $2}' | grep -vE '^(General|Environment|Loadpath|Tools|Java)$')" + COMPREPLY=($(compgen -W "$c_modes" -- "$cur")) +@@ -128,7 +128,7 @@ + _se__filedir -d + ;; + *) +- # default (don't forget that the user can add commands to their serc file) ++ # default (don't forget that the user can add commands to their serc2 file) + _se__has_pattern '*.e' '*.ace' || _se__filedir '!*.@(e|ace)' + ;; + esac +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/tools/commands/install.e smarteiffel2-2.3.new/build-tree/SmartEiffel/tools/commands/install.e +--- SmartEiffel/tools/commands/install.e 2007-07-11 18:23:29.000000000 +0100 ++++ SmartEiffel/tools/commands/install.e 2007-07-30 17:18:30.000000000 +0100 +@@ -242,14 +242,14 @@ + rcf.user_env = Void or else + rcf.user_env.is_equal(once "root") + then +- seconf := once "/etc/serc" ++ seconf := once "/etc/serc2" + else + seconf := seconf_buffer + seconf.copy(rcf.home_env) + if seconf.last /= '/' then + seconf.extend('/') + end +- seconf.append(once ".serc") ++ seconf.append(once ".serc2") + end + end + +@@ -294,7 +294,7 @@ + -- We're looking for a file unique to the new Amiga Digital + -- Environment running on Taos. + set_system_name(system_tools.elate_system) +- seconf := once "/lang/eiffel/.serc" -- contributed by Joseph R. Kiniry ++ seconf := once "/lang/eiffel/.serc2" -- contributed by Joseph R. Kiniry + is_better_default_than_system_tools := True + elseif (create {FILE_TOOLS}).is_readable(once "s:startup-sequence") then + -- This check has to be performed BEFORE the Unix check +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/tools/config/serc_factory.e smarteiffel2-2.3.new/build-tree/SmartEiffel/tools/config/serc_factory.e +--- SmartEiffel/tools/config/serc_factory.e 2007-07-11 18:23:29.000000000 +0100 ++++ SmartEiffel/tools/config/serc_factory.e 2007-07-30 17:18:30.000000000 +0100 +@@ -26,14 +26,14 @@ + if basic_directory.unix_notation or else basic_directory.cygwin_notation then + s := home_env + if s /= Void then +- s.append(once "/.serc") ++ s.append(once "/.serc2") + add_to_chain(chain, s) + end + if (create {FILE_TOOLS}).is_readable(once "/sys/rc") then + system_tools.set_system_name(system_tools.elate_system) +- add_to_chain(chain, once "/lang/eiffel/.serc") ++ add_to_chain(chain, once "/lang/eiffel/.serc2") + end +- add_to_chain(chain, once "/etc/serc") ++ add_to_chain(chain, once "/etc/serc2") + elseif basic_directory.windows_notation then + s := userprofile_env + if s /= Void then +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/tools/utils/external_install.e smarteiffel2-2.3.new/build-tree/SmartEiffel/tools/utils/external_install.e +--- SmartEiffel/tools/utils/external_install.e 2007-07-11 18:23:28.000000000 +0100 ++++ SmartEiffel/tools/utils/external_install.e 2007-07-30 17:18:30.000000000 +0100 +@@ -30,7 +30,7 @@ + if c = Void then + c := once "" + c.copy(s.get_environment_variable(once "HOME")) +- c.append(once "/.serc") ++ c.append(once "/.serc2") + end + if c /= Void and then ft.file_exists(c) then + bd.connect_with(c) +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/work/germ/compile_to_c.c smarteiffel2-2.3.new/build-tree/SmartEiffel/work/germ/compile_to_c.c +--- SmartEiffel/work/germ/compile_to_c.c 2007-07-11 18:24:01.000000000 +0100 ++++ SmartEiffel/work/germ/compile_to_c.c 2007-07-30 17:28:04.000000000 +0100 +@@ -1409,7 +1409,7 @@ + char*s30_1944903="ceiling"; + char*s340_235492225="Attributes cannot have a rescue compound."; + char*s30_55040341="put_16_be"; +-char*s279_28418819="/etc/serc"; ++char*s279_28418819="/etc/serc2"; + char*s29_10648581="obsolete"; + char*s241_1819737650="Must use exactly 4 hexadecimal digits for INTEGER_16."; + char*s13_1210=".\n\n"; +@@ -2007,7 +2007,7 @@ + char*s30_2504="SET"; + char*s68_1656731300=" in the section ["; + char*s219_49917876="if(NULL!="; +-char*s279_193194="/.serc"; ++char*s279_193194="/.serc2"; + char*s235_207986277="OpenVMS_CC"; + char*s241_180894=" error"; + char*s255_1477688005=": unsupported option \""; +@@ -3365,7 +3365,7 @@ + char*s291_1985327250="se_gc_check_id(o,"; + char*s291_1196941282="n->object=M"; + char*s30_1176378494="type_can_be_assigned_to_item"; +-char*s279_1096544670="/lang/eiffel/.serc"; ++char*s279_1096544670="/lang/eiffel/.serc2"; + char*s218_203714719="Obsolete \""; + char*s30_55924644="std_error"; + char*s544_2097247="na_env "; --- smarteiffel2-2.3.orig/debian/patches/02Makefile.patch +++ smarteiffel2-2.3/debian/patches/02Makefile.patch @@ -0,0 +1,60 @@ +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/Makefile smarteiffel2-2.3.new/build-tree/SmartEiffel/Makefile +--- SmartEiffel/Makefile 2007-07-11 18:23:54.000000000 +0100 ++++ SmartEiffel/Makefile 2007-07-31 12:42:50.000000000 +0100 +@@ -39,11 +39,14 @@ + + .PHONY: clean interactive all install rm_serc + ++PLAIN = plain ++ + all: + sh ./make_release.sh build $(PLAIN) + + install: all +- sh ./make_release.sh install $(PLAIN) ++ # sh ./make_release.sh install $(PLAIN) ++ echo installation will be done by debian/rules + + interactive: se_install + ./se_install +@@ -53,6 +56,7 @@ + /bin/rm -f bin/* + /bin/rm -f se_install + /bin/rm -f rm_serc ++ /bin/rm -f se-built + + install/germ/compile_to_c.h: bin/compile_to_c tools/commands/compile_to_c.e + echo "Compiling install germ" +diff -Nur smarteiffel2-2.3/build-tree/SmartEiffel/make_release.sh smarteiffel2-2.3.new/build-tree/SmartEiffel/make_release.sh +--- SmartEiffel/make_release.sh 2007-07-31 12:35:58.000000000 +0100 ++++ SmartEiffel/make_release.sh 2007-07-31 12:46:59.000000000 +0100 +@@ -351,10 +351,12 @@ + foreground magenta + echo "Using the existing compile_to_c as bootstrap compiler" + foreground black ++ germ=FALSE + echo + elif [ -f work/germ/compile_to_c.c ]; then + title "Bootstrapping compile_to_c from the subversion germ" + run gcc -pipe -O0 -lm -o bin/compile_to_c$EXE_SUFFIX work/germ/compile_to_c.c ++ germ=TRUE + show_status $? + elif [ -f install/germ/compile_to_c.h ]; then + title "Bootstrapping compile_to_c from the install germ" +@@ -368,6 +370,8 @@ + cd bin/ + + title "Building the compiler" ++ if [ $germ = FALSE ] ++ then + progress 30 0 10 compile_to_c + run ./compile_to_c$EXE_SUFFIX "$@" $C2C_OPTIONS compile_to_c -o compile_to_c$EXE_SUFFIX + s=$? +@@ -460,6 +464,7 @@ + fi + + show_status $s ++ fi + } + + do_install() { --- smarteiffel2-2.3.orig/debian/control +++ smarteiffel2-2.3/debian/control @@ -0,0 +1,53 @@ +Source: smarteiffel2 +Section: devel +Priority: optional +Maintainer: Debian QA Group +Build-Depends: debhelper (>= 4.2.33), sharutils, cdbs (>= 0.4.47), bzip2 +Standards-Version: 3.7.2 + +Package: smarteiffel2 +Architecture: any +Depends: ${shlibs:Depends}, gcc | gcc-3.2 | gcc-3.0 | tcc, libc6-dev, libncurses5-dev +Description: GNU Eiffel compiler + GNU compiler and associated tools for the Eiffel object-oriented language. + . + SmartEiffel is an Eiffel compiler for the Eiffel language defined by Bertrand + Meyer. SmartEiffel is the GNU Eiffel Compiler. SmartEiffel also features many + Eiffel tools and a very large library of classes: collections, dictionaries, + linked lists, sets and many other data structures, portable input output + facilities, iterators, number computation, sorting, etc. + . + Eiffel provides a strongly typed, compiled language, supporting multiple + inheritance and design by contract. For further information, see + and . + . + smarteiffel2 is the latest upstream beta release of SmartEiffel; because of + many incompatibilities between it and SmartEiffel 1, it has been packaged + separately. Code written for SmartEiffel 1.1 is likely to need a lot of + reworking before it will compile with SmartEiffel 2. + . + Note that Gobo is not compatible with this version of SmartEiffel and is not + likely to become compatible again in the future, because of philosophical + differences about the direction of Eiffel development. With version 2, + SmartEiffel has begun to diverge into a separate language from other Eiffels. + +Package: smarteiffel2-vision +Architecture: any +Depends: smarteiffel2, libx11-dev, libglu1-mesa-dev +Description: GNU Eiffel compiler GUI library classes + GUI library classes for SmartEiffel. These provide Eiffel classes for + building GUI applications for X and OpenGL. + . + SmartEiffel is an Eiffel compiler for the Eiffel language defined by Bertrand + Meyer. SmartEiffel is the GNU Eiffel Compiler. + +Package: smarteiffel2-test +Architecture: any +Depends: smarteiffel2-vision +Description: GNU Eiffel compiler self-test + Tool for self-testing the SmartEiffel compiler. This will not usually be + needed by normal users. + . + SmartEiffel is an Eiffel compiler for the Eiffel language defined by Bertrand + Meyer. SmartEiffel is the GNU Eiffel Compiler. + --- smarteiffel2-2.3.orig/debian/copyright +++ smarteiffel2-2.3/debian/copyright @@ -0,0 +1,504 @@ +This package was first debianized by Oliver Elphick on +Thu, 20 Apr 2006 15:24:25 +0100 and first uploaded in April 2007. + +The upstream source was obtained from + on 26 June 2007. + + +With respect to the compiler and associated tools, for the most part the +following copyright and licence apply, according to files located in the +top-level directory: + +Upstream Authors: Dominique Colnet and + the SmartEiffel group http://smarteiffel.loria.fr/misc/people.html + +Copyright: Dominique Colnet + +License: + + GPL + + Version 2 of the GPL is included in the SVN repository, but it is not + specifically stated that only version 2 applies. + + +The following text is found in the top level README.txt file: + + Tools of SmartEiffel (i.e. compile, short, pretty, compile_to_c, finder, + compile_to_jvm, print_jvm_class and install) are free software distributed + under the terms of the GNU General Public License (GPL) as published by + the Free Software Foundation. General interest classes of the library + (i.e. all classes of directory "SmartEiffel/lib") are not under GPL but + under the MIT/X-11 licence. You can do what you want with them. As an + example, you can sell any executable software produced with the SmartEiffel + compiler if this software does not use classes of directory + "SmartEiffel/tools". + +=========================================================================== + +With respect to some classes making up the compiler and tools and all the +class libraries, which are of necessity incorporated into every program +compiled by SmartEiffel, the following applies: + + This file is part of the SmartEiffel standard library. + Copyright(C) 1994-2002: INRIA - LORIA (INRIA Lorraine) - ESIAL U.H.P. + - University of Nancy 1 - FRANCE + Copyright(C) 2003-: INRIA - LORIA (INRIA Lorraine) - I.U.T. Charlemagne + - University of Nancy 2 - FRANCE + + Authors: Dominique COLNET, Philippe RIBET, Cyril ADRIAN, Vincent CROIZIER, + Frederic MERIZEN + + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. + + http://SmartEiffel.loria.fr - SmartEiffel@loria.fr + +=========================================================================== + +With respect to some documentation, the following applies: + + Copyright (C) 2003 the SmartEiffel team + + Permission is granted to copy, distribute and/or modify this document under + the terms of the GNU Free Documentation License, Version 1.1 published by + the Free Software Foundation; with no Invariant Sections, with the + Front-Cover Texts being _SmartEiffel the GNU Eiffel suite Reference Guide_ + and _by the SmartEiffel team_, and with no Back-Cover Texts. copy of the + license is included in the section entitled ``GNU Free Documentation + License'' (see fdl.tex). + + +fld.tex contains the GNU Free Documentation License, as follows: + + GNU Free Documentation License + + Version 1.1, March 2000 + + Copyright (c) 2000 Free Software Foundation, Inc. + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The purpose of this License is to make a manual, textbook, or other + written document ``free'' in the sense of freedom: to assure everyone + the effective freedom to copy and redistribute it, with or without + modifying it, either commercially or noncommercially. Secondarily, + this License preserves for the author and publisher a way to get + credit for their work, while not being considered responsible for + modifications made by others. + + This License is a kind of ``copyleft'', which means that derivative + works of the document must themselves be free in the same sense. It + complements the GNU General Public License, which is a copyleft + license designed for free software. + + We have designed this License in order to use it for manuals for free + software, because free software needs free documentation: a free + program should come with manuals providing the same freedoms that the + software does. But this License is not limited to software manuals; + it can be used for any textual work, regardless of subject matter or + whether it is published as a printed book. We recommend this License + principally for works whose purpose is instruction or reference. + + Applicability and Definitions + + This License applies to any manual or other work that contains a + notice placed by the copyright holder saying it can be distributed + under the terms of this License. The ``Document'', below, refers to any + such manual or work. Any member of the public is a licensee, and is + addressed as ``you''. + + A ``Modified Version'' of the Document means any work containing the + Document or a portion of it, either copied verbatim, or with + modifications and/or translated into another language. + + A ``Secondary Section'' is a named appendix or a front-matter section of + the Document that deals exclusively with the relationship of the + publishers or authors of the Document to the Document's overall subject + (or to related matters) and contains nothing that could fall directly + within that overall subject. (For example, if the Document is in part a + textbook of mathematics, a Secondary Section may not explain any + mathematics.) The relationship could be a matter of historical + connection with the subject or with related matters, or of legal, + commercial, philosophical, ethical or political position regarding + them. + + The ``Invariant Sections'' are certain Secondary Sections whose titles + are designated, as being those of Invariant Sections, in the notice + that says that the Document is released under this License. + + The ``Cover Texts'' are certain short passages of text that are listed, + as Front-Cover Texts or Back-Cover Texts, in the notice that says that + the Document is released under this License. + + A ``Transparent'' copy of the Document means a machine-readable copy, + represented in a format whose specification is available to the + general public, whose contents can be viewed and edited directly and + straightforwardly with generic text editors or (for images composed of + pixels) generic paint programs or (for drawings) some widely available + drawing editor, and that is suitable for input to text formatters or + for automatic translation to a variety of formats suitable for input + to text formatters. A copy made in an otherwise Transparent file + format whose markup has been designed to thwart or discourage + subsequent modification by readers is not Transparent. A copy that is + not ``Transparent'' is called ``Opaque''. + + Examples of suitable formats for Transparent copies include plain + ASCII without markup, Texinfo input format, \LaTeX~input format, SGML + or XML using a publicly available DTD, and standard-conforming simple + HTML designed for human modification. Opaque formats include + PostScript, PDF, proprietary formats that can be read and edited only + by proprietary word processors, SGML or XML for which the DTD and/or + processing tools are not generally available, and the + machine-generated HTML produced by some word processors for output + purposes only. + + The ``Title Page'' means, for a printed book, the title page itself, + plus such following pages as are needed to hold, legibly, the material + this License requires to appear in the title page. For works in + formats which do not have any title page as such, ``Title Page'' means + the text near the most prominent appearance of the work's title, + preceding the beginning of the body of the text. + + + Verbatim Copying + + You may copy and distribute the Document in any medium, either + commercially or noncommercially, provided that this License, the + copyright notices, and the license notice saying this License applies + to the Document are reproduced in all copies, and that you add no other + conditions whatsoever to those of this License. You may not use + technical measures to obstruct or control the reading or further + copying of the copies you make or distribute. However, you may accept + compensation in exchange for copies. If you distribute a large enough + number of copies you must also follow the conditions in section 3. + + You may also lend copies, under the same conditions stated above, and + you may publicly display copies. + + + Copying in Quantity + + If you publish printed copies of the Document numbering more than 100, + and the Document's license notice requires Cover Texts, you must enclose + the copies in covers that carry, clearly and legibly, all these Cover + Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on + the back cover. Both covers must also clearly and legibly identify + you as the publisher of these copies. The front cover must present + the full title with all words of the title equally prominent and + visible. You may add other material on the covers in addition. + Copying with changes limited to the covers, as long as they preserve + the title of the Document and satisfy these conditions, can be treated + as verbatim copying in other respects. + + If the required texts for either cover are too voluminous to fit + legibly, you should put the first ones listed (as many as fit + reasonably) on the actual cover, and continue the rest onto adjacent + pages. + + If you publish or distribute Opaque copies of the Document numbering + more than 100, you must either include a machine-readable Transparent + copy along with each Opaque copy, or state in or with each Opaque copy + a publicly-accessible computer-network location containing a complete + Transparent copy of the Document, free of added material, which the + general network-using public has access to download anonymously at no + charge using public-standard network protocols. If you use the latter + option, you must take reasonably prudent steps, when you begin + distribution of Opaque copies in quantity, to ensure that this + Transparent copy will remain thus accessible at the stated location + until at least one year after the last time you distribute an Opaque + copy (directly or through your agents or retailers) of that edition to + the public. + + It is requested, but not required, that you contact the authors of the + Document well before redistributing any large number of copies, to give + them a chance to provide you with an updated version of the Document. + + + Modifications + + You may copy and distribute a Modified Version of the Document under + the conditions of sections 2 and 3 above, provided that you release + the Modified Version under precisely this License, with the Modified + Version filling the role of the Document, thus licensing distribution + and modification of the Modified Version to whoever possesses a copy + of it. In addition, you must do these things in the Modified Version: + + Use in the Title Page (and on the covers, if any) a title distinct + from that of the Document, and from those of previous versions + (which should, if there were any, be listed in the History section + of the Document). You may use the same title as a previous version + if the original publisher of that version gives permission. + + List on the Title Page, as authors, one or more persons or entities + responsible for authorship of the modifications in the Modified + Version, together with at least five of the principal authors of the + Document (all of its principal authors, if it has less than five). + + State on the Title page the name of the publisher of the + Modified Version, as the publisher. + + Preserve all the copyright notices of the Document. + + Add an appropriate copyright notice for your modifications + adjacent to the other copyright notices. + + Include, immediately after the copyright notices, a license notice + giving the public permission to use the Modified Version under the + terms of this License, in the form shown in the Addendum below. + + Preserve in that license notice the full lists of Invariant Sections + and required Cover Texts given in the Document's license notice. + + Include an unaltered copy of this License. + + Preserve the section entitled ``History'', and its title, and add to + it an item stating at least the title, year, new authors, and + publisher of the Modified Version as given on the Title Page. If + there is no section entitled ``History'' in the Document, create one + stating the title, year, authors, and publisher of the Document as + given on its Title Page, then add an item describing the Modified + Version as stated in the previous sentence. + + Preserve the network location, if any, given in the Document for + public access to a Transparent copy of the Document, and likewise + the network locations given in the Document for previous versions + it was based on. These may be placed in the ``History'' section. + You may omit a network location for a work that was published at + least four years before the Document itself, or if the original + publisher of the version it refers to gives permission. + + In any section entitled ``Acknowledgements'' or ``Dedications'', + preserve the section's title, and preserve in the section all the + substance and tone of each of the contributor acknowledgements + and/or dedications given therein. + + Preserve all the Invariant Sections of the Document, + unaltered in their text and in their titles. Section numbers + or the equivalent are not considered part of the section titles. + + Delete any section entitled ``Endorsements''. Such a section + may not be included in the Modified Version. + + Do not retitle any existing section as ``Endorsements'' + or to conflict in title with any Invariant Section. + + If the Modified Version includes new front-matter sections or + appendices that qualify as Secondary Sections and contain no material + copied from the Document, you may at your option designate some or all + of these sections as invariant. To do this, add their titles to the + list of Invariant Sections in the Modified Version's license notice. + These titles must be distinct from any other section titles. + + You may add a section entitled ``Endorsements'', provided it contains + nothing but endorsements of your Modified Version by various + parties -- for example, statements of peer review or that the text has + been approved by an organization as the authoritative definition of a + standard. + + You may add a passage of up to five words as a Front-Cover Text, and a + passage of up to 25 words as a Back-Cover Text, to the end of the list + of Cover Texts in the Modified Version. Only one passage of + Front-Cover Text and one of Back-Cover Text may be added by (or + through arrangements made by) any one entity. If the Document already + includes a cover text for the same cover, previously added by you or + by arrangement made by the same entity you are acting on behalf of, + you may not add another; but you may replace the old one, on explicit + permission from the previous publisher that added the old one. + + The author(s) and publisher(s) of the Document do not by this License + give permission to use their names for publicity for or to assert or + imply endorsement of any Modified Version. + + + Combining Documents + + You may combine the Document with other documents released under this + License, under the terms defined in section 4 above for modified + versions, provided that you include in the combination all of the + Invariant Sections of all of the original documents, unmodified, and + list them all as Invariant Sections of your combined work in its + license notice. + + The combined work need only contain one copy of this License, and + multiple identical Invariant Sections may be replaced with a single + copy. If there are multiple Invariant Sections with the same name but + different contents, make the title of each such section unique by + adding at the end of it, in parentheses, the name of the original + author or publisher of that section if known, or else a unique number. + Make the same adjustment to the section titles in the list of + Invariant Sections in the license notice of the combined work. + + In the combination, you must combine any sections entitled ``History'' + in the various original documents, forming one section entitled + ``History''; likewise combine any sections entitled ``Acknowledgements'', + and any sections entitled ``Dedications''. You must delete all sections + entitled ``Endorsements.'' + + + Collections of Documents + + You may make a collection consisting of the Document and other documents + released under this License, and replace the individual copies of this + License in the various documents with a single copy that is included in + the collection, provided that you follow the rules of this License for + verbatim copying of each of the documents in all other respects. + + You may extract a single document from such a collection, and distribute + it individually under this License, provided you insert a copy of this + License into the extracted document, and follow this License in all + other respects regarding verbatim copying of that document. + + + + Aggregation With Independent Works + + A compilation of the Document or its derivatives with other separate + and independent documents or works, in or on a volume of a storage or + distribution medium, does not as a whole count as a Modified Version + of the Document, provided no compilation copyright is claimed for the + compilation. Such a compilation is called an ``aggregate'', and this + License does not apply to the other self-contained works thus compiled + with the Document, on account of their being thus compiled, if they + are not themselves derivative works of the Document. + + If the Cover Text requirement of section 3 is applicable to these + copies of the Document, then if the Document is less than one quarter + of the entire aggregate, the Document's Cover Texts may be placed on + covers that surround only the Document within the aggregate. + Otherwise they must appear on covers around the whole aggregate. + + + Translation + + Translation is considered a kind of modification, so you may + distribute translations of the Document under the terms of section 4. + Replacing Invariant Sections with translations requires special + permission from their copyright holders, but you may include + translations of some or all Invariant Sections in addition to the + original versions of these Invariant Sections. You may include a + translation of this License provided that you also include the + original English version of this License. In case of a disagreement + between the translation and the original English version of this + License, the original English version will prevail. + + + Termination + + You may not copy, modify, sublicense, or distribute the Document except + as expressly provided for under this License. Any other attempt to + copy, modify, sublicense or distribute the Document is void, and will + automatically terminate your rights under this License. However, + parties who have received copies, or rights, from you under this + License will not have their licenses terminated so long as such + parties remain in full compliance. + + + Future Revisions of This License + + The Free Software Foundation may publish new, revised versions + of the GNU Free Documentation License from time to time. Such new + versions will be similar in spirit to the present version, but may + differ in detail to address new problems or concerns. See + http://www.gnu.org/copyleft/. + + Each version of the License is given a distinguishing version number. + If the Document specifies that a particular numbered version of this + License "or any later version" applies to it, you have the option of + following the terms and conditions either of that specified version or + of any later version that has been published (not as a draft) by the + Free Software Foundation. If the Document does not specify a version + number of this License, you may choose any version ever published (not + as a draft) by the Free Software Foundation. + + ADDENDUM: How to use this License for your documents + + To use this License in a document you have written, include a copy of + the License in the document and put the following copyright and + license notices just after the title page: + + Copyright (c) YEAR YOUR NAME. + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.1 + or any later version published by the Free Software Foundation; + with the Invariant Sections being LIST THEIR TITLES, with the + Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. + A copy of the license is included in the section entitled ``GNU + Free Documentation License''. + + If you have no Invariant Sections, write ``with no Invariant Sections'' + instead of saying which ones are invariant. If you have no + Front-Cover Texts, write ``no Front-Cover Texts'' instead of + ``Front-Cover Texts being LIST''; likewise for Back-Cover Texts. + + If your document contains nontrivial examples of program code, we + recommend releasing these examples in parallel under your choice of + free software license, such as the GNU General Public License, + to permit their use in free software. + +=========================================================================== + +Some documentation files are included under the general package licence and +are marked merely: + + Copyright (c) Dominique COLNET and Suzanne COLLIN - SmartEiffel@loria.fr + +=========================================================================== + +The eif-indent.el file is marked: + + Copyright (C) 1989, 1990 Bob Weiner, Motorola Inc. + Available for use and distribution under the same terms as GNU Emacs. + +The eif-mult-fmt.el file is marked: + + Copyright (C) 1985 Free Software Foundation, Inc. + Copyright (C) 1990 Bob Weiner, Motorola Inc. + Available for use and distribution under the same terms as GNU Emacs. + +=========================================================================== + +Certain classes in the source code for test_suite are marked: + + Copyright (c) 1998 by Ulrich Windl + Copyright (c) 1998 by Klinikum der Universitt Regensburg, + D-93042 Regensburg + + 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 + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + 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. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + +=========================================================================== + +On Debian GNU/Linux systems, the text of the GPL can be found in +/usr/share/common-licenses/GPL. + + --- smarteiffel2-2.3.orig/debian/smarteiffel2-vision.postinst +++ smarteiffel2-2.3/debian/smarteiffel2-vision.postinst @@ -0,0 +1,53 @@ +#! /bin/sh + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package +# +# quoting from the policy: +# Any necessary prompting should almost always be confined to the +# post-installation script, and should be protected with a conditional +# so that unnecessary prompting doesn't happen if a package's +# installation fails and the `postinst' is called with `abort-upgrade', +# `abort-remove' or `abort-deconfigure'. + + +case "$1" in + configure) + + export sedir=/usr/lib/smarteiffel2 + export SmartEiffel=${sedir}/sys/system.se + grep -q '^vision/' /usr/lib/smarteiffel2/lib/loadpath.se || + echo vision/loadpath.se >>/usr/lib/smarteiffel2/lib/loadpath.se + + # Build the class HTML pages + cd /usr/share/doc/smarteiffel2/html/base + se doc /usr/lib/smarteiffel2/lib/loadpath.se || exit 1 + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + --- smarteiffel2-2.3.orig/debian/dhelp +++ smarteiffel2-2.3/debian/dhelp @@ -0,0 +1,14 @@ + +Apps/Programming +SmartEiffel2 +html/index.html + + Eiffel is a pure object-oriented language, that is intended to facilitate + reuse of routines. It does this through the concept of "Design by Contract"; + each class and each feature of a class publicises the conditions that it + guarantees to maintain, given that the published input conditions are met. +

+ Eiffel code should be comprehensible by non-computer people, with only a + little assistance. + + --- smarteiffel2-2.3.orig/debian/next.jpeg.uu +++ smarteiffel2-2.3/debian/next.jpeg.uu @@ -0,0 +1,24 @@ +begin 664 next.jpeg +M_]C_X``02D9)1@`!`0```0`!``#__@!90U)%051/4CH@6%8@5F5R'EZ@X2%AH>(B8J2DY25EI>8F9JBHZ2EIJ>H +MJ:JRL[2UMK>XN;K"P\3%QL?(R;GZ.GJ\?+S]/7V +M]_CY^O_:``@!`0``/P"CI?C#4=.F^R1017=I%)Y,<0;YSDMM"G9ZQ97=I>2F[CVMYK1L^2=[J`6;GGG<&SWW<5U%A +MJOB;0K&%_LCWFF%`\3.F2L0YZJ3MX/\`%G&..E7+?XEPM,HN-,>.+NR2AB/P +M('\ZW/\`A-O#W_00_P#(+_\`Q-7UUW26ABE.HVJI*N]-\H4D=.AYZ@CZ@TO] +MNZ1_T%++_O\`K_C3X-6TVYF6*WU"UED;HB3*Q/X`U2SRQHK/*S@@?,`0`%)[@!1CCN?6NML +M_P#A)M4@CTV")H=/CC\AY&"HLT6,`@D-R0#RI8?J,2$@[PD9 +M;!SQC)&>,^F/>M;_`(5QI'_/Q>_]]K_\35Z/P/X?2-5:R9RH`+-*^6]S@XIW +M_"$^'O\`H'_^1G_^*J:U\):%:2&2+3HBQ&/WA,@_)B15K^P])_Z!EG_WX7_" +MO-=+\/WNIW^ZST^);6.;/GL<*RAFX&2X.>G`8<#KR3W>G^$M,MI))[FVBNKF +H4DNT@++SZ!BWIG)).2><<5NQQI%&L<:*B(`JJHP`!T`%.HHHHHK_V0`` +` +end --- smarteiffel2-2.3.orig/debian/prev.jpeg.uu +++ smarteiffel2-2.3/debian/prev.jpeg.uu @@ -0,0 +1,25 @@ +begin 664 prev.jpeg +M_]C_X``02D9)1@`!`0```0`!``#__@!90U)%051/4CH@6%8@5F5R'EZ@X2%AH>(B8J2DY25EI>8F9JBHZ2EIJ>H +MJ:JRL[2UMK>XN;K"P\3%QL?(R;GZ.GJ\?+S]/7V +M]_CY^O_:``@!`0``/P#T"BBBBBJUW?V=EM^UW4%OOSM\V0+NQUQFN4UGQLAL +MKE]&=&\K:OFNASEO0$`>N.2?E/RXRPY>SU&.:ZN)M5U"&YD?&UY5W`#F?VYI/_04LO^_Z_P"-9_\`PFWA[_H(?^07_P#B:/\`A-O#W_00 +M_P#(+_\`Q-5[OQ]H=OM\IY[G=G/E1D;?KNQ^E4;KXDV*Q@VEC<2OGD2%4&/J +M,_RJC!XXUC5IEL].M($N9(L+QN+..2020%&,D`YY&.E)K>'9L12"KN5#8;_`'.Q![S^PM(_P"@79?]^%_PJ[)%'+&TC<@9).%/)R.XYK0\(>)FTMY'U"1WM)=D1 +M*(3Y+*`JD]L%0>F2=GY]5>>.]%MEB,))5&>'4$<@@]?8D?0FN8UKP/:W<,ATR3[%(V2R`?NY,\X/<#(7CD +D#'`KGK33;W0;JX%_)'"T^'4QR^6C89AQB6,>AP,X##[O2O_9 +` +end --- smarteiffel2-2.3.orig/debian/deb_hooks.sh +++ smarteiffel2-2.3/debian/deb_hooks.sh @@ -0,0 +1,758 @@ +#! /bin/sh +# +# Edit and run this file to change hooks of this directory. +# + +chmod a+w * + +# test if echo command interprets -n option +xxx=`echo -n` + +if [ -z "$xxx" ] + then + eopt=-n + eend= + else + eopt= + eend="""\c""" +fi + +# --------------------------------------------------------------------------- +# "hook000" - If this hook file exists, the contents of this file is +# printed very first. +cat >hook000 < + + + +Eiffel class _THISCLASS + + +Up Top       +Prev _PREVCLASS      +Next _NEXTCLASS +

+


+
+
+END
+
+# "hook002" - If this hook file exists, the contents of this file is
+# printed after an extra class name.
+#cat >hook002 <
+#
+#
+#
+#END
+
+# "hook010" - If this hook file exists, and if the processed class is
+# an expanded one, the contents of this file is printed before the
+# class name to replace the default string "expanded class interface
+# ".
+echo $eopt 'expanded class interface '$eend > hook010
+
+# "hook011" - If this hook file exists, and if the processed class is
+# an deferred one, the contents of this file is printed before the
+# class name to replace the default string "deferred class interface
+# ".
+echo $eopt 'deferred class interface '$eend > hook011
+
+# "hook012" - If this hook file exists, and if the processed class is
+# an ordinary one (not deferred nor expanded) the contents of this
+# file is printed before the class name to replace the default string
+# "class interface ".
+echo $eopt 'class interface '$eend > hook012
+
+# "hook013" _ If this hook file exists, the contents of this file is
+# printed before the class name whatever the kind of class (expanded,
+# deferred or ordinary) to replace the default empty string "".
+rm -f hook013
+
+# "hook014" - If this hook exists, the contents of the file is printed
+# after the class name to replace the default string "%N".
+rm -f hook014
+
+# "hook015" - If this hook file exists, and if a class header comment
+# is present, this file is printed once before the heading class
+# comment.
+echo $eopt ''$eend > hook015
+
+# "hook016" - If this hook file exists, and if an heading comment is
+# present, the contents of this file is printed to replace the default
+# string " -- " at the beginning of each comment line.
+rm -f hook016
+
+# "hook017" - If this hook file exists, and if an heading comment is
+# present, the contents of this file is printed to replace the default
+# string "%N" at the end of each comment line.
+rm -f hook017
+
+# "hook018" - If this hook file exists, and if a class heading comment
+# is present, the contents of this file is printed once after the
+# heading comment.
+echo $eopt '
+'$eend > hook018
+
+# "hook019" - If this hook file exists, and if the processed class has
+# no heading comment, this file is printed once.
+echo $eopt '
+'$eend > hook019
+
+# ---------------------------------------------------------------------------
+# 2.2. Changing output of the creation list
+
+# "hook100" - If it exists, this file is printed before the creation
+# list to replace the default string "creation%N".
+echo $eopt 'creation
+'$eend > hook100
+
+# "hook101" - If it exists, this file is printed after the creation
+# list to replace the default empty string "".
+rm -f hook101
+
+# "hook102" - If it exists, this file is printed when class has no
+# creation list.
+rm -f hook102
+
+# ---------------------------------------------------------------------------
+# 2.3. Changing output of the feature list
+
+# "hook200" - If exists, printed before the feature list when option
+# -sort is selected to replace the default string "feature(s)%N".
+echo $eopt 'feature(s)
+'$eend > hook200
+
+# "hook201" - If exists, printed after the feature list when option
+# -sort is selected to replace the default empty string "".
+echo $eopt '
+'$eend > hook201
+
+# "hook202" - If exists, printed before each feature list with no
+# heading comment to replace the default string "feature(s) from ".
+echo $eopt 'feature(s) from '$eend > hook202
+
+# "hook203" - If exists, printed after the class name of "hook202" to
+# replace the default string "%N".
+#rm -f hook203
+echo $eopt ''$eend >hook203
+
+# "hook204" - If exists, printed before a feature list with a heading
+# comment to replace the default string "feature(s) from ".
+echo $eopt 'feature(s) from '$eend > hook204
+
+# "hook205" - If exists, printed after the class name introduced at
+# "hook204" to replace the default string "%N".
+echo $eopt '
+'$eend > hook205
+
+# "hook206" - If exists, printed before each line of the feature list
+# comment to replace the default string " -- ".
+rm -f hook206
+
+# "hook207" - If exists, printed after each line of the feature list
+# comment to replace the default string "%N".
+rm -f hook207
+
+# "hook208" - If exists, printed after a feature list comment to
+# replace the default empty string "".
+echo $eopt '
+'$eend > hook208
+
+# ---------------------------------------------------------------------------
+# 2.4. Changing output of a feature signature
+
+# "hook300" - If this hook exists, the contents of this file is
+# printed before each feature to replace the default string " ".
+rm -f hook300
+
+# "hook301" - If this hook exists, the contents of this file is
+# printed once when the feature has no arguments to replace the
+# default empty string "".
+rm -f hook301
+
+# "hook302" - If this hook exists, the contents of this file is
+# printed once when the feature has arguments to replace the default
+# string " (".
+rm -f hook302
+
+# "hook303" - If this hook exists, the contents of this file is
+# printed when the feature has arguments to replace the default string
+# " ;".
+rm -f hook303
+
+# "hook304" - If this hook exists, the contents of this file is
+# printed when the feature has arguments to replace the default string
+# ", ".
+rm -f hook304
+
+# "hook305" - If this hook exists, the contents of this file is
+# printed when the feature has arguments to replace the default string
+# ": ".
+rm -f hook305
+
+# "hook306" - If this hook exists, the contents of this file is
+# printed once when the feature has arguments to replace the default
+# string ")".
+rm -f hook306
+
+# "hook307" - If this hook exists, the contents of this file is
+# printed once when the feature has no result to replace the default
+# string "%N".
+rm -f hook307
+
+# "hook308" - If this hook exists, the contents of this file is
+# printed once before the result type of the feature to replace the
+# default string ": ".
+rm -f hook308
+
+# "hook309" - If this hook exists, the contents of this file is
+# printed once after the result type of the feature to replace the
+# default string "%N".
+rm -f hook309
+
+# ---------------------------------------------------------------------------
+# 2.5. Changing output of a feature comment
+
+# "hook310" - If this hook file exists, and if a feature has a heading
+# comment, this file is printed once before the comment.
+echo $eopt ''$eend > hook310
+
+# "hook311" - If this hook file exists, and if a feature has a heading
+# comment, the contents of this file is printed to replace the default
+# string " -- " at the beginning of each comment line.
+rm -f hook311
+
+# "hook312" - If this hook file exists, and if a feature has a heading
+# comment, the contents of this file is printed to replace the default
+# string "%N" at the end of each comment line.
+rm -f hook312
+
+# "hook313" - If this hook file exists, and if a feature has a heading
+# comment, the contents of this file is printed once after this
+# comment.
+echo $eopt '
+'$eend > hook313
+
+# "hook314" - If this hook file exists, and if a feature has no
+# heading comment, the contents of this file is printed.
+rm -f hook314
+
+# ---------------------------------------------------------------------------
+# 2.6. Changing output of require clauses
+# 2.6.1. For the header of a require clause
+
+# "hook400" - If this hook file exists, and if a feature has no
+# require assertion, the contents of this file is printed to replace
+# the default empty string "".
+rm -f hook400
+
+# "hook401" - If this hook file exists, and if a feature has one
+# require assertion, the contents of this file is printed before the
+# latest inherited assertion to replace the default string "require%N".
+echo $eopt '      require
+'$eend > hook401
+
+# "hook402" - If this hook file exists, and if a feature has more than
+# one require assertion, the contents of this file is printed before
+# the require assertion to replace the default string " require else%N".
+echo $eopt '      require else
+'$eend > hook402
+
+# "hook403" - If this hook file exists, and if a feature has at least
+# one require assertion, the contents of this file is printed to
+# finish the job (once after the last printed require assertion) to
+# replace the default empty string "".
+rm -f hook403
+
+# "hook412" - If exists, printed when a require clause has no heading
+# comment to replace the default empty string "".
+rm -f hook412
+
+# "hook413" - If exists, printed once before the require clause
+# heading comment to replace the default empty string "".
+echo $eopt ''$eend > hook413
+
+# "hook414" - If exists, printed before each line of the heading
+# comment to replace the default string " -- ".
+rm -f hook414
+
+# "hook415" - If exists, printed after each line of the heading
+# comment to replace the default string "%N".
+rm -f hook415
+
+# "hook416" - If exists, printed once after the require clause heading
+# comment.
+echo $eopt ''$eend > hook416
+
+# "hook417" - If exists, printed when a require clause has no
+# assertion to replace the default empty string "".
+rm -f hook417
+
+# "hook418" - If exists, printed once before the first assertion of a
+# require clause to replace the default empty string "".
+rm -f hook418
+
+# "hook433" - If exists, printed once after the last assertion of a
+# require clause to replace the default empty string "".
+rm -f hook433
+
+# "hook434" - If exists, printed to finish a require clause to replace
+# the default empty string "".
+rm -f hook434
+
+# 2.6.2. For each assertion in a require clause
+
+# "hook419" - If exists, printed before each assertion of a require
+# clause to replace the default string " ".
+rm -f hook419
+
+# "hook420" - If exists, printed when an assertion has no tag to
+# replace the default empty string "".
+rm -f hook420
+
+# "hook421" - If exists, printed before a tag to replace the default
+# empty string "".
+rm -f hook421
+
+# "hook422" - If exists, printed after a tag to replace the default
+# string ": ".
+rm -f hook422
+
+# "hook423" - If exists, printed when the assertion has no expression
+# to replace the default empty string "".
+rm -f hook423
+
+# "hook424" - If exists, printed before the expression to replace the
+# default empty string "".
+rm -f hook424
+
+# "hook425" - If exists, printed after the expression (except for the
+# last assertion) to replace the default string ";".
+rm -f hook425
+
+# "hook426" - If exists, printed when an assertion has no comment to
+# replace the default string "%N".
+rm -f hook426
+
+# "hook427" - If exists, printed once before the assertion comment to
+# replace the default empty string "".
+echo $eopt ''$eend > hook427
+
+# "hook428" - If exists, printed before each line oqf the expression
+# comment to replace the default string " -- ".
+rm -f hook428
+
+# "hook429" - If exists, printed after each line of the expression
+# comment to replace the default string "%N".
+rm -f hook429
+
+# "hook430" - If exists, printed once after the assertion's comment to
+# replace the default string "".
+echo $eopt ''$eend > hook430
+
+# "hook431" - If exists, printed after the assertion to replace the
+# default empty string "".
+rm -f hook431
+
+# 2.6.3. For the last assertion in a require clause Same hook file
+# list as described in section 2.6.2 except "hook425" which becomes :
+
+# "hook432" - If exists, printed after the last expresion to replace
+# the default empty string "".
+rm -f hook432
+
+# ---------------------------------------------------------------------------
+# 2.7. Changing output of ensure clauses
+# 2.7.1. For the header of the ensure clause
+
+# "hook500" - If this hook file exists, and a feature has no ensure
+# clause, the contents of this file is printed to replace the default
+# empty string "".
+rm -f hook500
+
+# "hook511" - If this hook file exists, the contents of this file is
+# printed before each ensure clause to replace the default string "ensure%N".
+echo $eopt '      ensure
+'$eend > hook511
+
+# "hook512" - If exists, printed when ensure clause has no heading
+# comment to replace default empty string "".
+rm -f hook512
+
+# "hook513" - If exists, printed once before the ensure clause heading
+# comment to replace the default empty string "".
+echo $eopt ''$eend > hook513
+
+# "hook514" - If exists, printed before each line of the heading
+# comment to replace the default string " -- ".
+rm -f hook514
+
+# "hook515" - If exists, printed after each line of the heading
+# comment to replace the default string "%N".
+rm -f hook515
+
+# "hook516" - If exists, printed once after the ensure clause heading
+# comment.
+echo $eopt ''$eend > hook516
+
+# "hook517" - If exists, printed when an ensure clause has no
+# assertion to replace the default empty string "".
+rm -f hook517
+
+# "hook518" - If exists, printed once before the first assertion of
+# the ensure clause to replace the default empty string "".
+rm -f hook518
+
+# "hook533" - If exists, printed once after the last assertion of the
+# ensure clause to replace the default empty string "".
+rm -f hook533
+
+# "hook534" - If exists, printed to finish the ensure clause to
+# replace the default empty string "".
+rm -f hook534
+
+# 2.7.2. For each assertion in the ensure assertion
+
+# "hook519" - If exists, printed before each assertion of the ensure
+# clause to replace the default string " ".
+rm -f hook519
+
+# "hook520" - If exists, printed when an assertion has no tag to
+# replace the default empty string "".
+rm -f hook520
+
+# "hook521" - If exists, printed before a tag to replace the default
+# empty string "".
+rm -f hook521
+
+# "hook522" - If exists, printed after a tag to replace the default
+# string ": ".
+rm -f hook522
+
+# "hook523" - If exists, printed when the assertion has no expression
+# to replace the default empty string "".
+rm -f hook523
+
+# "hook524" - If exists, printed before the expression to replace the
+# default empty string "".
+rm -f hook524
+
+# "hook525" - If exists, printed after the expresion (except for the
+# last assertion) to replace the default string ";".
+rm -f hook525
+
+# "hook526" - If exists, printed when an assertion has no comment to
+# replace the default string "%N".
+rm -f hook526
+
+# "hook527" - If exists, printed once before the assertion comment to
+# replace the default empty string "".
+echo $eopt ''$eend > hook527
+
+# "hook528" - If exists, printed before each line of the expression comment to replace the default string " -- ".
+rm -f hook528
+
+# "hook529" - If exists, printed after each line of the expression
+# comment to replace the default string "%N".
+rm -f hook529
+
+# "hook530" - If exists, printed once after the assertion's comment to
+# replace the default string "".
+echo $eopt ''$eend > hook530
+
+# "hook531" - If exists, printed after the assertion to replace the
+# default empty string "".
+rm -f hook531
+
+# 2.7.3. For the last assertion in the ensure clause Same hook files
+# list as described in section 2.7.2 except "hook525" which becomes:
+
+# "hook532" - If exists, printed after the last expresion to replace
+# the default empty string "".
+rm -f hook532
+
+# ---------------------------------------------------------------------------
+# 2.8. Changing output after each feature
+
+# "hook599" - If exists, printed after each feature to replace the
+# default empty string "".
+echo $eopt '
+'$eend > hook599
+
+# ---------------------------------------------------------------------------
+# 2.9. Changing output of the class invariant
+# 2.9.1. For the header of the class invariant
+
+# "hook800" - If this hook file exists, and when no class invariant
+# exists, the contents of this file is printed to replace the default
+# empty string "".
+rm -f hook800
+
+# "hook811" - If this hook file exists, the contents of this file is
+# printed before the class invariant to replace the default string
+# "invariant%N".
+echo $eopt 'invariant
+'$eend > hook811
+
+# "hook812" - If exists, printed when class invariant has no heading
+# comment to replace default empty string "".
+rm -f hook812
+
+# "hook813" - If exists, printed once before the invariant heading
+# comment to replace the default empty string "".
+echo $eopt ''$eend > hook813
+
+# "hook814" - If exists, printed before each line of the heading
+# comment to replace the default string " -- ".
+rm -f hook814
+
+# "hook855" - If exists, printed after each line of the heading
+# comment to replace the default string "%N".
+rm -f hook855
+
+# "hook816" - If exists, printed once after the invariant heading
+# comment.
+echo $eopt ''$eend > hook816
+
+# "hook817" - If exists, printed when class invariant has no assertion
+# to replace the default empty string "".
+rm -f hook817
+
+# "hook818" - If exists, printed once before the first assertion of
+# the class invariant to replace the default empty string "".
+rm -f hook818
+
+# "hook833" - If exists, printed once after the last assertion of the
+# class invariant to replace the default empty string "".
+rm -f hook833
+
+# "hook834" - If exists, printed to finish the class invariant to
+# replace the default empty string "".
+rm -f hook834
+
+# 2.9.2. For each assertion in the class invariant
+
+# "hook819" - If exists, printed before each assertion of the class
+# invariant to replace the default string " ".
+rm -f hook819
+
+# "hook820" - If exists, printed when an assertion has no tag to
+# replace the default empty string "".
+rm -f hook820
+
+# "hook821" - If exists, printed before a tag to replace the default
+# empty string "".
+rm -f hook821
+
+# "hook822" - If exists, printed after a tag to replace the default
+# string ": ".
+rm -f hook822
+
+# "hook823" - If exists, printed when the assertion has no expression
+# to replace the default empty string "".
+rm -f hook823
+
+# "hook824" - If exists, printed before the expression to replace the
+# default empty string "".
+rm -f hook824
+
+# "hook825" - If exists, printed after the expresion (except for the
+# last assertion) to replace the default string ";".
+rm -f hook825
+
+# "hook826" - If exists, printed when an assertion has no comment to
+# replace the default string "%N".
+rm -f hook826
+
+# "hook827" - If exists, printed once before the assertion comment to
+# replace the default empty string "".
+echo $eopt ''$eend > hook827
+
+# "hook828" - If exists, printed before each line of the expression
+# comment to replace the default string " -- ".
+rm -f hook828
+
+# "hook829" - If exists, printed after each line of the expression
+# comment to replace the default string "%N".
+rm -f hook829
+
+# "hook830" - If exists, printed once after the assertion's comment to
+# replace the default string "".
+echo $eopt ''$eend > hook830
+
+# "hook831" - If exists, printed after the assertion to replace the
+# default empty string "".
+rm -f hook831
+
+# 2.9.3. For the last assertion in the class invariant Same hook
+# files list as described in section 2.9.2 except "hook825" which
+# becomes :
+
+# "hook832" - If exists, printed after the last expresion to replace
+# the default string ";".
+rm -f hook832
+
+# ---------------------------------------------------------------------------
+# 2.10. Changing output of the class interface footer
+
+# "hook900" - When exists, printed once before class footer to replace
+# the default empty string "".
+echo $eopt '
+'$eend > hook900
+
+# "hook901" - When exists, printed once at the end of an expanded
+# class before the class name to replace the default "end of expanded".
+rm -f hook901
+
+# "hook902" - When exists, printed once at the end of a deferred class
+# before the class name to replace the default "end of deferred ".
+rm -f hook902
+
+# "hook903" - When exists, printed once at the end of an ordinary (not
+# expanded nor deferred) class, before the class name to replace the
+# default string "end of ".
+rm -f hook903
+
+# "hook904" - When exist, printed just before the class name to
+# replace the default empty string "".
+rm -f hook904
+
+# "hook905" - When exists, the contents of this file is printed after
+# the class name to replace the default string "%N".
+echo $eopt ''$eend > hook905
+
+# "hook999" - If this hook file exists, the contents of this file is
+# printed once to finish the job.
+cat >hook999 <
+



+All classes inherit from ANY, ANY inherits from +PLATFORM +and PLATFORM inherits from GENERAL. +



+Generated by short -html_deb on _DATE. + + +END + +# --------------------------------------------------------------------------- +# 2.11. Class name and formal generic arguments +# --------------------------------------------------------------------------- +# 2.11.1. Changing the output of class names + +# "Bcn" - When exists, printed Before each class name. +echo $eopt ''$eend > Bcn + +# "Mcn" - When exists, the corresponding class name is printed one more +# time (using lower case letters) just before the contents of this +# hook file. +#echo $eopt '.html">'$eend> Mcn + +# "Acn" - When exists, printed After each class name. +echo $eopt ''$eend > Acn + +# "Ucn" - To replace the Underscore character in a class name. +rm -f Ucn + +# --------------------------------------------------------------------------- +# 2.11.1. Changing the output of generic formal arguments + +# "Bfga" - When exists, printed Before each formal generic argument. +rm -f Bfga + +# "Mfga" - When exists, the corresponding formal generic argument is printed one more +# time (using lower case letters) just before the contents of this +# hook file. +rm -f Mfga + +# "Afga" - When exists, printed After each formal generic argument. +rm -f Afga + +# "Ufga" - To replace the Underscore character in a formal generic argument. +rm -f Ufga + +# --------------------------------------------------------------------------- +# 2.12. Changing the output of a type mark + +# "Btm" - When exists, printed Before each type mark. +# echo $eopt ''$eend > Btm +rm -f Btm + +# "Atm" - When exists, printed After each type mark. +# echo $eopt ''$eend > Atm +rm -f Atm + +# "open_sb" - To replace the opening square bracket (default "["). +rm -f open_sb + +# "close_sb" - To replace the closing square bracket (default "]"). +rm -f close_sb + +# "fgl_sep" - To replace the default comma "," in a formal generic argument list. +rm -f fgl_sep + +# "tm_blank" - To replace a blank character in a type mark. +rm -f tm_blank + +# "tm_sep" - To replace default string "," as a separator in a generic list. +rm -f tm_sep + +# "like" - To replace the default string "like ". +rm -f like + +# "expanded" - To replace the default string "expanded ". +rm -f expanded + +# --------------------------------------------------------------------------- +# 2.14. Changing the output of an argument name + +# "Ban" - When exists, printed Before each argument name. +# echo $eopt ''$eend > Ban +rm -f Ban + +# "Aan" - When exists, printed after each argument name. +# echo $eopt ''$eend > Aan +rm -f Aan + +# "Uan" - To replace the Underscore character in an argument name. +rm -f Uan + +# --------------------------------------------------------------------------- +# 2.15. Changing the output of tag name + +# "Btag" - When exists, printed Before each tag name. +rm -f Btag + +# "Atag" - When exists, printed after each tag name. +rm -f Atag + +# "Utag" - To replace the Underscore character in a tag name. +rm -f Utag + +# --------------------------------------------------------------------------- +# 2.19. Changing the output of comments line + +# "BECL" - Before Each Comment Line. This hook is applied to all +# comments whatever the kind of comment. If exists, printed before the +# contents of each line of each comment (usually after the default +# string "-- "). +rm -f BECL + +# "AECL" - After Each Comment Line. This hook is applied to all +# comments whatever the kind of comment. If exits, printed after the +# contents of each line of each comment (usually, printed before the +# default "%N"). +rm -f AECL + +# "Ucomment" - To replace the Underscore character in a comment. +rm -f Ucomment + +# "op_quote" - To replace the default opening quote mark "`". +echo $eopt ''$eend > op_quote + +# "cl_quote" - To close an "op_quote" to replace the closing quote mark "'". +echo $eopt ''$eend > cl_quote + +chmod a-w * +chmod a=rwx $0 --- smarteiffel2-2.3.orig/debian/prerm +++ smarteiffel2-2.3/debian/prerm @@ -0,0 +1,38 @@ +#! /bin/sh +# prerm script for smarteiffel2 +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `remove' +# * `upgrade' +# * `failed-upgrade' +# * `remove' `in-favour' +# * `deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + remove|upgrade|deconfigure|failed-upgrade) + rm -rf /usr/share/doc/smarteiffel2/html/base + rm -rf /usr/lib/smarteiffel2/short/html_deb + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + + --- smarteiffel2-2.3.orig/debian/up.jpeg.uu +++ smarteiffel2-2.3/debian/up.jpeg.uu @@ -0,0 +1,25 @@ +begin 664 up.jpeg +M_]C_X``02D9)1@`!`0```0`!``#__@!90U)%051/4CH@6%8@5F5R'EZ@X2%AH>(B8J2DY25EI>8F9JBHZ2EIJ>H +MJ:JRL[2UMK>XN;K"P\3%QL?(R;GZ.GJ\?+S]/7V +M]_CY^O_:``@!`0``/P#T"F2R)%$\DC*B*I9F8X``[DU2T#_D`:=_U[1_^@BM +M"BL_Q!_R+VI?]>LG_H)K/\"?\BC8_P#`_P#T-JZ"BL_Q!_R+VI?]>LG_`*": +MS_`G_(HV/_`__0VKH**R?%5X+'PY?3M"LP\O848D`[B%YQSW_P#U5F_#NZ^T +M>&$CV;?L\KQYSG=GYL^WWL?A7445R_Q#O8;?PU);N?WMRRK&H(SP0Q/TX_45 +M1^%]RC:7>6H#;XYA(3VPP`'_`*":[:BN!^([FXU+2[*V"O=,'`1E!^_A1UXZ +M@_3&>.*A\!02:3XANM/O5ACN7B^X3EU(VD`$<8(8G`)/R]L5Z)45Q,MO;RS, +M,K&A<\@<`9ZD@#\3BO)&\2^=XE&MW=OYK1N/+MB?E5<$#YCG!!P>G)R>*DN_ +M$L-WK\.KK;O:R1,KE(R&,I`PZQ':6,>FB39)>9#L&QY:>IQDX)QQ@Y`85S?A;PHVJ,E^DOE6B,R +M@RQ!VFP>H4@J!@XZM@@_A)XM\&S6-N+RR?S[>%0K)Y:JZ*!]XE0-W?)QGIUY +M(V/`FKVHC32$NO-VHSQ;DV'.22/R(XYY#\XVDXVJ6L^O:FE\US]G:9$0*@8[ +M5?R1CEO2?!Q@':>/F-=/\/[L7/AI(UA6(6TC1?*2=W1MW/3.[_\`5T&MX@_Y +K%[4O^O63_P!!->9Z9:3PPV.IP7.R2WB,B+AB"!Y[;3\W0^40<8^]]<__V0`` +` +end --- smarteiffel2-2.3.orig/debian/smarteiffel2.links +++ smarteiffel2-2.3/debian/smarteiffel2.links @@ -0,0 +1,2 @@ +/etc/serc2 /usr/lib/smarteiffel2/sys/system.se +/usr/lib/smarteiffel2/bin/se /usr/bin/se --- smarteiffel2-2.3.orig/debian/vanilla.se +++ smarteiffel2-2.3/debian/vanilla.se @@ -0,0 +1,187 @@ +-- This is the configuration file of SmartEiffel, generated by the +-- SmartEiffel installer. +-- If you have any problems or questions, please: +-- - either look at the SmartEiffel site (http://SmartEiffel.loria.fr) +-- - or contact the SmartEiffel team (SmartEiffel@loria.fr) +-- ======================================================================= -- +[General] + +-- This section contains some general-purpose keys. They describe how is the +-- SmartEiffel distribution arranged, and on which operating system it was +-- installed. + +-- The 'bin' key is the path to the directory that contains the SmartEiffel +-- directory. It is used by 'compile' to find 'compile_to_c'. + +-- The 'sys' directory is used to find the C and Java files used by the +-- compilers. + +-- The 'short' directory is used by the 'short' utility to format the output. + +-- The 'os' key tells on which system SmartEiffel is installed on. + +-- The 'flavor' key gives additional hints on the system SmartEiffel runs on. + +-- At last, 'tag' gives the version of install configuration (used only by the +-- installer) + +bin: %SmartEiffel%/bin/ +sys: %SmartEiffel%/sys/ +short: %SmartEiffel%/short/ +os: UNIX +flavor: generic +jobs: 4 +tag: 3 + +[Environment] + +-- This section contains keys that can be used environment variables. They may +-- be used by other sections (typically [Loadpath]) or Ace files. + +path_tutorial: /usr/share/doc/smarteiffel2/tutorial/ +path_tools: %SmartEiffel%/tools/ +path_lib: %SmartEiffel%/lib/ + +[Loadpath] + +-- This section contains the default loadpaths used by this SmartEiffel +-- installation. + +-- The key is used when naming clusters (SmartEiffel output when a +-- class is not found, or external tools like eiffeldoc) + +-- The value of the key is the path to a loadpath file. + +-- Note that the loadpath files are read in the order given below. + +lib: ${path_lib}loadpath.se +tools: ${path_tools}loadpath.se +tutorial: ${path_tutorial}loadpath.se + +[Tools] + +-- This section contains the tools used by the `se' command. + +-- The key is the name of the command used by `se' + +-- The value of the command to launch, which must be in ${bin} (bin +-- is a key defined above in the [General] section). + +c: compile +c2c: compile_to_c +clean: clean +java: compile_to_jvm +pretty: pretty +short: short +find: finder +ace_check: ace_check +class_check: class_check +javap: print_jvm_class +doc: eiffeldoc +test: eiffeltest +x_int: extract_internals + + +-- ======================================================================= -- + +-- Below are the "C mode" sections. Each C mode describes which C compiler must +-- be called, with which options, which linker, and so on. The keys are +-- described below. + +-- The first sections (boost, ..., debug_check) are by default used in +-- conjunction with the corresponding SmartEiffel check level. This behavior +-- may be changed by using the -c_mode flag. + +-- The recognized keys in each section are: + +-- 'compiler_type', which tells which is the compiler type to use + +-- 'compiler_path', which gives the path to the compiler executable + +-- 'compiler_options', which gives some options to the compiler + +-- 'linker_path', which gives the path to the linker executable (not used in +-- -no_split mode) + +-- 'linker_options', which gives some options for the linker (not used in +-- -no_split mode) + +-- 'smarteiffel_options', which gives some extra SmartEiffel options to take +-- into account + + +[boost] +c_compiler_type: gcc +c_compiler_options: -pipe -Os +cpp_compiler_type: g++ +cpp_compiler_options: -pipe -Os + +[no_check] +c_compiler_type: gcc +c_compiler_options: -pipe -O1 +cpp_compiler_type: g++ +cpp_compiler_options: -pipe -O1 + +[require_check] +c_compiler_type: gcc +c_compiler_options: -pipe +cpp_compiler_type: g++ +cpp_compiler_options: -pipe + +[ensure_check] +c_compiler_type: gcc +c_compiler_options: -pipe +cpp_compiler_type: g++ +cpp_compiler_options: -pipe + +[invariant_check] +c_compiler_type: gcc +c_compiler_options: -pipe +cpp_compiler_type: g++ +cpp_compiler_options: -pipe + +[loop_check] +c_compiler_type: gcc +c_compiler_options: -pipe +cpp_compiler_type: g++ +cpp_compiler_options: -pipe + +[all_check] +c_compiler_type: gcc +c_compiler_options: -pipe +cpp_compiler_type: g++ +cpp_compiler_options: -pipe + +[debug_check] +c_compiler_type: gcc +c_compiler_options: -pipe -g +cpp_compiler_type: g++ +cpp_compiler_options: -pipe -g +smarteiffel_options: -no_strip -sedb + +[release] +c_compiler_type: gcc +c_compiler_options: -pipe -O3 -fomit-frame-pointer +cpp_compiler_type: g++ +cpp_compiler_options: -pipe -O3 -fomit-frame-pointer +smarteiffel_options: -no_split + + +-- ======================================================================= -- + +-- Below is the "Java" section which describes which program must +-- be called by default, with which options, and so on. The keys are +-- described below. + +-- The recognized keys in this section are: + +-- 'jar', which tells which is the archiver to use to produce Java ARchives. + +-- 'jvm', which gives the name of the program providing the Java Virtual Machine. + +-- 'javac', which gives the extern compiler used to compile Java plugins. + +[Java] +jar: jar +jvm: java +java_compiler: javac --- smarteiffel2-2.3.orig/debian/smarteiffel2-vision.dirs +++ smarteiffel2-2.3/debian/smarteiffel2-vision.dirs @@ -0,0 +1,2 @@ +usr/lib/smarteiffel2/sys/plugins +usr/lib/smarteiffel2/lib --- smarteiffel2-2.3.orig/debian/smarteiffel2.manpages +++ smarteiffel2-2.3/debian/smarteiffel2.manpages @@ -0,0 +1 @@ +se.1 --- smarteiffel2-2.3.orig/debian/vanilla.se.pkg +++ smarteiffel2-2.3/debian/vanilla.se.pkg @@ -0,0 +1,185 @@ +-- This is the configuration file of SmartEiffel, generated by the +-- SmartEiffel installer. +-- If you have any problems or questions, please: +-- - either look at the SmartEiffel site (http://SmartEiffel.loria.fr) +-- - or contact the SmartEiffel team (SmartEiffel@loria.fr) +-- ======================================================================= -- +[General] + +-- This section contains some general-purpose keys. They describe how is the +-- SmartEiffel distribution arranged, and on which operating system it was +-- installed. + +-- The 'bin' key is the path to the directory that contains the SmartEiffel +-- directory. It is used by 'compile' to find 'compile_to_c'. + +-- The 'sys' directory is used to find the C and Java files used by the +-- compilers. + +-- The 'short' directory is used by the 'short' utility to format the output. + +-- The 'os' key tells on which system SmartEiffel is installed on. + +-- The 'flavor' key gives additional hints on the system SmartEiffel runs on. + +-- At last, 'tag' gives the version of install configuration (used only by the +-- installer) + +bin: /usr/lib/smarteiffel2/bin/ +sys: /usr/lib/smarteiffel2/sys/ +short: /usr/lib/smarteiffel2/short/ +os: UNIX +flavor: generic +jobs: 4 +tag: 3 + +[Environment] + +-- This section contains keys that can be used environment variables. They may +-- be used by other sections (typically [Loadpath]) or Ace files. + +path_tutorial: /usr/share/doc/smarteiffel2/tutorial/ +path_lib: /usr/lib/smarteiffel2/lib/ + +[Loadpath] + +-- This section contains the default loadpaths used by this SmartEiffel +-- installation. + +-- The key is used when naming clusters (SmartEiffel output when a +-- class is not found, or external tools like eiffeldoc) + +-- The value of the key is the path to a loadpath file. + +-- Note that the loadpath files are read in the order given below. + +lib: ${path_lib}loadpath.se +tutorial: ${path_tutorial}loadpath.se + +[Tools] + +-- This section contains the tools used by the `se' command. + +-- The key is the name of the command used by `se' + +-- The value of the command to launch, which must be in ${bin} (bin +-- is a key defined above in the [General] section). + +c: compile +c2c: compile_to_c +clean: clean +java: compile_to_jvm +pretty: pretty +short: short +find: finder +ace_check: ace_check +class_check: class_check +javap: print_jvm_class +doc: eiffeldoc +test: eiffeltest +x_int: extract_internals + + +-- ======================================================================= -- + +-- Below are the "C mode" sections. Each C mode describes which C compiler must +-- be called, with which options, which linker, and so on. The keys are +-- described below. + +-- The first sections (boost, ..., debug_check) are by default used in +-- conjunction with the corresponding SmartEiffel check level. This behavior +-- may be changed by using the -c_mode flag. + +-- The recognized keys in each section are: + +-- 'compiler_type', which tells which is the compiler type to use + +-- 'compiler_path', which gives the path to the compiler executable + +-- 'compiler_options', which gives some options to the compiler + +-- 'linker_path', which gives the path to the linker executable (not used in +-- -no_split mode) + +-- 'linker_options', which gives some options for the linker (not used in +-- -no_split mode) + +-- 'smarteiffel_options', which gives some extra SmartEiffel options to take +-- into account + + +[boost] +c_compiler_type: gcc +c_compiler_options: -pipe -Os +cpp_compiler_type: g++ +cpp_compiler_options: -pipe -Os + +[no_check] +c_compiler_type: gcc +c_compiler_options: -pipe -O1 +cpp_compiler_type: g++ +cpp_compiler_options: -pipe -O1 + +[require_check] +c_compiler_type: gcc +c_compiler_options: -pipe +cpp_compiler_type: g++ +cpp_compiler_options: -pipe + +[ensure_check] +c_compiler_type: gcc +c_compiler_options: -pipe +cpp_compiler_type: g++ +cpp_compiler_options: -pipe + +[invariant_check] +c_compiler_type: gcc +c_compiler_options: -pipe +cpp_compiler_type: g++ +cpp_compiler_options: -pipe + +[loop_check] +c_compiler_type: gcc +c_compiler_options: -pipe +cpp_compiler_type: g++ +cpp_compiler_options: -pipe + +[all_check] +c_compiler_type: gcc +c_compiler_options: -pipe +cpp_compiler_type: g++ +cpp_compiler_options: -pipe + +[debug_check] +c_compiler_type: gcc +c_compiler_options: -pipe -g +cpp_compiler_type: g++ +cpp_compiler_options: -pipe -g +smarteiffel_options: -no_strip -sedb + +[release] +c_compiler_type: gcc +c_compiler_options: -pipe -O3 -fomit-frame-pointer +cpp_compiler_type: g++ +cpp_compiler_options: -pipe -O3 -fomit-frame-pointer +smarteiffel_options: -no_split + + +-- ======================================================================= -- + +-- Below is the "Java" section which describes which program must +-- be called by default, with which options, and so on. The keys are +-- described below. + +-- The recognized keys in this section are: + +-- 'jar', which tells which is the archiver to use to produce Java ARchives. + +-- 'jvm', which gives the name of the program providing the Java Virtual Machine. + +-- 'javac', which gives the extern compiler used to compile Java plugins. + +[Java] +jar: jar +jvm: java +java_compiler: javac --- smarteiffel2-2.3.orig/debian/smarteiffel2-test.dirs +++ smarteiffel2-2.3/debian/smarteiffel2-test.dirs @@ -0,0 +1 @@ +usr/lib/smarteiffel2/bin --- smarteiffel2-2.3.orig/debian/smarteiffel2-vision.prerm +++ smarteiffel2-2.3/debian/smarteiffel2-vision.prerm @@ -0,0 +1,38 @@ +#! /bin/sh +# prerm script for smarteiffel2-vision +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `remove' +# * `upgrade' +# * `failed-upgrade' +# * `remove' `in-favour' +# * `deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + remove|upgrade|deconfigure|failed-upgrade) + sed -e '/^vision\//d' /usr/lib/smarteiffel2/lib/loadpath.se >$$ && + mv $$ /usr/lib/smarteiffel2/lib/loadpath.se + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + + --- smarteiffel2-2.3.orig/se.1 +++ smarteiffel2-2.3/se.1 @@ -0,0 +1,82 @@ +.TH SMARTEIFFEL2 1 +.SH NAME +smarteiffel2 \- a set of tools to compile and manage programs written in Eiffel +.SH SYNOPSIS +.B se compile [-c_code] [options] root_class [root_procedure] +.br +.B se compile [options] ace_file +.br +.B se compile_to_c [options] root_class [root_procedure] [*.c] [*.o] [-l*] +.br +.B se compile_to_c [options] ace_file +.br +.B se clean [-verbose] root_class ... +.br +.B se ace_check ace_file +.br +.B se class_check [ace_file] class +.br +.B se eiffeldoc [options] +.br +.B se eiffeltest [options] +.br +.B se extract_internals [options] +.br +.B se finder [ace_file] class +.br +.B se pretty [options] [ace_file] class_name ... +.br +.B se short [options] [ace_file] class_name +.SH "DESCRIPTION" +This manual page documents briefly the SmartEiffel 2 +.B se +command. +This manual page was written for the Debian GNU/Linux distribution +(but may be used by others), because the original program does not +have a manual page. +Instead, it has documentation in HTML format, which may be +browsed through dwww; see below. +.PP +.B smarteiffel2 +is a set of programs that compile and manage programs written in the +Eiffel language. +When using them, the environment variable +.B Smarteiffel +must be set to /usr/lib/smarteiffel2. +A summary of options are included below. +For a complete description, see the HTML documentation. +.TP +.B se compile [-c_code] [options] root_class [root_procedure] +compile a set of Eiffel classes into an executable program. +.TP +.B se compile_to_c [options] root_class [root_procedure] [*.c] [*.o] [-l*] +compile a set of Eiffel classes into C code. +.TP +.B se compile_to_jvm [options] root_class [root_procedure] +compile a set of Eiffel classes into Java code. +.TP +.B se clean [-verbose] root_class ... +Removes all intermediate files produced by a previous compilation. +.TP +.B se finder class +Find an Eiffel class using the current search path. +.TP +.B se pretty [options] class_name ... +Formats Eiffel source code files. +.TP +.B se print_jvm_class path[.class] +Prints on standard output a human-readable form of a class file +produced by compile_to_jvm. +.TP +.B se short [options] class_name +Prints the public interface of a class. +.SH "SEE ALSO" +The programs are documented fully in the directory +.IR /usr/share/doc/smarteiffel2/html , +available via the dwww system. +.SH AUTHOR +Smarteiffel2 was developed by Dominique Colnet and +the SmartEiffel development team: see http://smarteiffel.loria.fr. + +This manual page was written by Oliver Elphick , +for the Debian GNU/Linux system.