/hg/icedtea-web: Added support for MSI generation

jvanek at icedtea.classpath.org jvanek at icedtea.classpath.org
Fri May 12 15:10:39 UTC 2017


changeset 8d77c2e0618c in /hg/icedtea-web
details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=8d77c2e0618c
author: Jiri Vanek <jvanek at redhat.com>
date: Fri May 12 17:20:19 2017 +0200

	Added support for MSI generation

	* AUTHORS: added MIchal and Alex
	* Makefile.am: added win-installer target. For now missing clean
	* acinclude.m4: all search macros enhanced for cygpath on windows, java read from path (if available, windows only), added IT_CHECK_FOR_WIX macro
	* configure.ac:  added checks for wixgen.jar and WiX tools
	* win-installer/LICENSE.rtf: new file, license for  MSI to display. generated from COPYING
	* win-installer/greetings_banner.bmp: new file, main banner for MSI
	* win-installer/icon.ico: new file, icon for MSI
	* win-installer/top_banner.bmp: new file, banner for MSI
	* win-installer/installer.json.in: MSI descriptor, hart beat of whole MSI archive generator. Needs a lot of sedding


diffstat:

 AUTHORS                            |    2 +
 ChangeLog                          |   18 +
 Makefile.am                        |   16 +-
 acinclude.m4                       |   54 ++-
 configure.ac                       |   19 +
 win-installer/LICENSE.rtf          |  785 +++++++++++++++++++++++++++++++++++++
 win-installer/greetings_banner.bmp |  Bin 
 win-installer/icon.ico             |  Bin 
 win-installer/installer.json.in    |   60 ++
 win-installer/top_banner.bmp       |  Bin 
 10 files changed, 948 insertions(+), 6 deletions(-)

diffs (truncated from 1072 to 500 lines):

diff -r 3ef0ab04f480 -r 8d77c2e0618c AUTHORS
--- a/AUTHORS	Fri May 12 09:08:42 2017 +0200
+++ b/AUTHORS	Fri May 12 17:20:19 2017 +0200
@@ -16,6 +16,7 @@
 Peter Hatina <phatina at redhat.com>
 Andrew John Hughes <ahughes at redhat.com>
 Jie Kang <jkang at redhat.com>
+Alex Kashchenko <akashche at redhat.com>
 Matthias Klose <doko at ubuntu.com>
 Alexandr Kolouch <skolnag at gmail.com>
 Jan Kmetko <jan.kmetko.ml at gmail.com>
@@ -33,6 +34,7 @@
 Fridrich Strba <fridrich.strba at suse.com>
 Andrew Su <asu at redhat.com>
 Joshua Sumali <jsumali at redhat.com>
+Michal Vala <mvala at redhat.com>
 Jiri Vanek <jvanek at redhat.com>
 Mark Wielaard <mark at klomp.org>
 Jacob Wisor  <gitne at excite.co.jp>
diff -r 3ef0ab04f480 -r 8d77c2e0618c ChangeLog
--- a/ChangeLog	Fri May 12 09:08:42 2017 +0200
+++ b/ChangeLog	Fri May 12 17:20:19 2017 +0200
@@ -1,3 +1,21 @@
+2017-12-10  Alex Kashchenko <akashche at redhat.com>
+            Jiri Vanek <jvanek at redhat.com>
+            Michal Vala <mvala at redhat.com>
+
+	Added support for MSI generation
+	* AUTHORS: added MIchal and Alex
+	* Makefile.am: added win-installer target. For now missing clean
+	* acinclude.m4: all search macros enhanced for cygpath on windows, java read from path
+	(if available, windows only), added IT_CHECK_FOR_WIX macro
+	* configure.ac:  added checks for wixgen.jar and WiX tools
+	* win-installer/LICENSE.rtf: new file, license for  MSI to display. generated from COPYING
+	* win-installer/greetings_banner.bmp: new file, main banner for MSI
+	* win-installer/icon.ico: new file, icon for MSI
+	* win-installer/top_banner.bmp: new file, banner for MSI
+	* win-installer/installer.json.in: MSI descriptor, hart beat of whole MSI archive generator.
+	Needs a lot of sedding
+
+
 2017-12-10  Jiri Vanek <jvanek at redhat.com>
 
 	* Makefile.am: (install-exec-local) completion files installed last
diff -r 3ef0ab04f480 -r 8d77c2e0618c Makefile.am
--- a/Makefile.am	Fri May 12 09:08:42 2017 +0200
+++ b/Makefile.am	Fri May 12 17:20:19 2017 +0200
@@ -304,7 +304,7 @@
 .PHONY: clean-IcedTeaPlugin clean-add-netx clean-add-netx-debug clean-add-plugin clean-add-plugin-debug \
  clean-bootstrap-directory clean-native-ecj clean-desktop-files clean-netx-docs clean-docs clean-plugin-docs clean-generated-docs clean-icedteaweb-completion\
  clean-tests check-local clean-launchers stamps/check-pac-functions.stamp stamps/run-netx-unit-tests.stamp clean-netx-tests \
- clean-junit-runner clean-netx-unit-tests clean-metadata 
+ clean-junit-runner clean-netx-unit-tests clean-metadata win-installer
 
 install-exec-local:
 	${mkinstalldirs} $(DESTDIR)$(bindir) $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/ $(DESTDIR)$(libdir) $(ICONS_DEST_DIR) $(BASH_CMPL_DEST_DIR)
@@ -354,7 +354,7 @@
 if WINDOWS
 	mkdir -p $(WIN_ALL_DEPS)
 	mkdir -p $(WIN_RUN_DEPS)
-	JARSVARS=` ( set -o posix ; set ) | sed "s/.*=//"  | grep \\.jar$$ ` ; \
+	JARSVARS=` ( set -o posix ; set ) | sed "s/.*=//"  | grep \\.jar$$ | grep \\.jar.exe$$ ` ; \
 	JARSMAKE=` cat $(TOP_BUILD_DIR)/printvarsfile | sed  "s/.*=//"  |  grep \\.jar$$ ` ; \
 	for JAR in $$JARSMAKE ; do \
 	  if [ -f $ $$JAR ] ; then \
@@ -363,7 +363,7 @@
 	done ;
 	rm -f $(WIN_ALL_DEPS)/jar ;
 	for JAR in `ls $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/*.jar` ; do \
-	  rm -v $(WIN_ALL_DEPS)/`basename $$JAR` ; \
+	  rm -fv $(WIN_ALL_DEPS)/`basename $$JAR` ; \
 	done;
 if WITH_RHINO
 	filteredName=`basename $(RHINO_JAR) | sed "s/[^a-zA-Z]//g" | sed "s/jar$$/.jar/"` ; \
@@ -390,6 +390,16 @@
 if ENABLE_PLUGINJAR
 	cp $(TOP_BUILD_DIR)/liveconnect/lib/src.zip $(DESTDIR)$(prefix)/plugin.src.zip
 endif
+
+
+installer.json:
+	sed -e s/[@]PACKAGE_VERSION[@]/$(PACKAGE_VERSION)/g win-installer/installer.json.in > $@
+
+win-installer: win-only-image installer.json
+	rm -vf installer.wxs
+	"$(JAVA)" -jar "$(WIXGEN_JAR)" "$(DESTDIR)$(prefix)" -c installer.json -o installer.wxs
+	"$(WIX_TOOLSET_DIR)"/candle.exe /nologo installer.wxs
+	"$(WIX_TOOLSET_DIR)"/light.exe /nologo -ext WixUIExtension installer.wixobj
 endif
 
 # note that this is called only from windows specific target (hidden otherwise)
diff -r 3ef0ab04f480 -r 8d77c2e0618c acinclude.m4
--- a/acinclude.m4	Fri May 12 09:08:42 2017 +0200
+++ b/acinclude.m4	Fri May 12 17:20:19 2017 +0200
@@ -65,11 +65,24 @@
        fi
     done
   fi
+  AM_COND_IF([WINDOWS], [
+    # does not work, use which instead
+    # AC_CHECK_PROGS([SYSTEM_JAVA_IN_PATH], [java.exe]) 
+    SYSTEM_JAVA_IN_PATH=$(which java 2>&AS_MESSAGE_LOG_FD)
+    if test x"${SYSTEM_JAVA_IN_PATH}" != x ; then
+      SYSTEM_JDK_DIR=$(dirname $(dirname ${SYSTEM_JAVA_IN_PATH}))
+    fi
+  ])
   if ! test -d "${SYSTEM_JDK_DIR}"; then
     AC_MSG_ERROR("A JDK home directory could not be found. ${SYSTEM_JDK_DIR}")
   else
-    READ=`readlink -f ${SYSTEM_JDK_DIR}`
-    AC_MSG_RESULT(${SYSTEM_JDK_DIR} (link to ${READ}))
+    AM_COND_IF([WINDOWS], [
+      SYSTEM_JDK_DIR=$(cygpath -m ${SYSTEM_JDK_DIR})
+      AC_MSG_RESULT(${SYSTEM_JDK_DIR})
+    ], [
+      READ=`readlink -f ${SYSTEM_JDK_DIR}`
+      AC_MSG_RESULT(${SYSTEM_JDK_DIR} (link to ${READ}))
+    ])
   fi
   AC_SUBST(SYSTEM_JDK_DIR)
 ])
@@ -356,6 +369,11 @@
   if test x"${$2_JAR}" = "xyes"; then
     $2_JAR=no
   fi
+  AM_COND_IF([WINDOWS], [
+    if test x"${$2_JAR}" != "xno"; then
+      $2_JAR=$(cygpath -m ${$2_JAR})
+    fi
+  ])
   AC_MSG_RESULT(${$2_JAR})
   AM_CONDITIONAL(WITH_$2, test x"${$2_JAR}" != "xno")
   # Clear $2_JAR if it doesn't contain a valid filename
@@ -377,7 +395,9 @@
 AC_ARG_ENABLE([native_plugin],
               [AS_HELP_STRING([--disable-native-plugin],
                               [Disable compilation of browser plugin])],
-              [enable_native_plugin="${enableval}"], [enable_native_plugin="yes"])
+              [enable_native_plugin="${enableval}"], [
+                  AM_COND_IF([WINDOWS], [enable_native_plugin="no"], [enable_native_plugin="yes"])
+              ])
 AC_MSG_RESULT(${enable_native_plugin})
 ])
 
@@ -456,6 +476,9 @@
       fi
     done
   fi
+  AM_COND_IF([WINDOWS], [
+    TAGSOUP_JAR=$(cygpath -m ${TAGSOUP_JAR})
+  ])
   AC_MSG_RESULT(${TAGSOUP_JAR})
   if test -z "${TAGSOUP_JAR}"; then
     AC_MSG_RESULT(***********************************************)
@@ -1071,3 +1094,28 @@
   AC_MSG_RESULT(${BROWSER_SWITCH})
   AC_SUBST(BROWSER_TESTS_MODIFICATION)
 ])
+
+AC_DEFUN_ONCE([IT_CHECK_FOR_WIX],
+[
+  AC_MSG_CHECKING([for a WiX Toolset directory])
+  AC_ARG_WITH([wix],
+             [AS_HELP_STRING([--with-wix],
+                             [WiX Toolset directory (candle.exe, light.exe)])],
+             [
+                 WIX_TOOLSET_DIR=${withval}
+             ])
+  if test x"${WIX_TOOLSET_DIR}" = x; then
+    SYSTEM_CANDLE_IN_PATH="$(which candle.exe 2>&AS_MESSAGE_LOG_FD)"
+    if test -f "${SYSTEM_CANDLE_IN_PATH}" ; then
+        WIX_TOOLSET_DIR="$(dirname "$(dirname "$(cygpath -m "${SYSTEM_CANDLE_IN_PATH}")")")"
+    fi
+  fi
+  if ! test -d "${WIX_TOOLSET_DIR}"; then
+    AC_MSG_WARN("A WiX Toolset directory could not be found. ${WIX_TOOLSET_DIR}")
+    AC_MSG_WARN(["You can build itw, but can not generate MSI"])
+    AC_MSG_WARN(["you can get WiX tools at http://wixtoolset.org/"])
+  else
+    AC_MSG_RESULT(${WIX_TOOLSET_DIR})
+    AC_SUBST(WIX_TOOLSET_DIR)
+  fi
+])
diff -r 3ef0ab04f480 -r 8d77c2e0618c configure.ac
--- a/configure.ac	Fri May 12 09:08:42 2017 +0200
+++ b/configure.ac	Fri May 12 17:20:19 2017 +0200
@@ -154,6 +154,25 @@
     [/usr/share/java/jacoco/org.jacoco.core.jar])
 IT_FIND_OPTIONAL_JAR([asm], ASM,
     [/usr/share/java/objectweb-asm4/asm-all.jar /usr/share/java/objectweb-asm4/asm-all-4.0.jar /usr/share/java/objectweb-asm/asm-all.jar])
+IT_FIND_OPTIONAL_JAR([wixgen], WIXGEN, [/usr/share/java/wixgen.jar])
+if test "x$build_windows" = xyes ; then
+  IT_CHECK_FOR_WIX
+fi
+echo -n "checking for MSI deps... "
+if test "x$WIX_TOOLSET_DIR" = "x" ; then
+  if test "x$WIXGEN_JAR" = "x" ; then
+    echo  "No WiX tools, nor wixgen jar, correct - build on linux or on windows witout MSI" 
+  else
+    echo  "No WiX tools, but wixgen jar - wixgen jar will do its job, but is useless. No MSI can be generated" 
+  fi
+else
+  if test "x$WIXGEN_JAR" = "x" ; then
+    echo  "WiX tools, but no wixgen jar, fatal. You need wixgen.jar from https://github.com/akashche/wixgen" 
+    exit 1
+  else
+    echo  "WiX tools and wixgen jar - build on windows with MSI generation support" 
+  fi
+fi
 
 IT_CHECK_FOR_TAGSOUP
 
diff -r 3ef0ab04f480 -r 8d77c2e0618c win-installer/LICENSE.rtf
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/win-installer/LICENSE.rtf	Fri May 12 17:20:19 2017 +0200
@@ -0,0 +1,785 @@
+{\rtf1\ansi\deff3\adeflang1025
+{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq2\fcharset0 Times New Roman;}{\f4\froman\fprq0\fcharset1 DejaVu Sans;}{\f5\fswiss\fprq2\fcharset1 DejaVu Sans;}{\f6\froman\fprq0\fcharset1 Times New Roman;}{\f7\fswiss\fprq0\fcharset1 Arial;}{\f8\fmodern\fprq0\fcharset1 DejaVu Sans Mono;}{\f9\fnil\fprq2\fcharset0 Droid Sans;}{\f10\fnil\fprq2\fcharset0 Arial;}{\f11\fmodern\fprq1\fcharset0 Droid Sans;}{\f12\fswiss\fprq0\fcharset1 FreeSans;}{\f13\fnil\fprq0\fcharset1 FreeSans;}{\f14\fmodern\fprq0\fcharset1 FreeSans;}}
+{\colortbl;\red0\green0\blue0;\red128\green128\blue128;}
+{\stylesheet{\s0\snext0\ql\nowidctlpar\ltrpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\kerning1\dbch\af10\langfe2052\dbch\af13\afs24\alang1081\cf0\loch\f6\fs24\lang1033 Normal;}
+{\s15\sbasedon0\snext16\ql\nowidctlpar\sb240\sa120\keepn\ltrpar\kerning1\dbch\af9\langfe2052\dbch\af13\afs28\alang1081\loch\f7\fs28\lang1033 Heading;}
+{\s16\sbasedon0\snext16\ql\nowidctlpar\sb0\sa120\ltrpar\kerning1\dbch\af10\langfe2052\dbch\af13\afs24\alang1081\loch\f6\fs24\lang1033 Text Body;}
+{\s17\sbasedon16\snext17\ql\nowidctlpar\sb0\sa120\ltrpar\kerning1\dbch\af10\langfe2052\dbch\af12\afs24\alang1081\loch\f6\fs24\lang1033 List;}
+{\s18\sbasedon0\snext18\ql\nowidctlpar\sb120\sa120\noline\ltrpar\i\kerning1\dbch\af10\langfe2052\dbch\af12\afs24\alang1081\ai\loch\f6\fs24\lang1033 Caption;}
+{\s19\sbasedon0\snext19\ql\nowidctlpar\noline\ltrpar\kerning1\dbch\af10\langfe2052\dbch\af12\afs24\alang1081\loch\f6\fs24\lang1033 Index;}
+{\s20\sbasedon0\snext20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033 Preformatted Text;}
+}{\info{\creatim\yr0\mo0\dy0\hr0\min0}{\revtim\yr0\mo0\dy0\hr0\min0}{\printim\yr0\mo0\dy0\hr0\min0}{\comment LibreOffice}{\vern67175426}}\deftab709
+\viewscale110
+{\*\pgdsctbl
+{\pgdsc0\pgdscuse451\pgwsxn12240\pghsxn15840\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt0 Default Style;}}
+\formshade{\*\pgdscno0}\paperh15840\paperw12240\margl1134\margr1134\margt1134\margb1134\sectd\sbknone\sectunlocked1\pgndec\pgwsxn12240\pghsxn15840\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc
+\pgndec\pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+\tab \tab     GNU GENERAL PUBLIC LICENSE}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+\tab \tab        Version 2, June 1991}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+ }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+     }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+ }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+Everyone is permitted to copy and distribute verbatim copies}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+ }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+of this license document, but changing it is not allowed.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+\tab \tab \tab     Preamble}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+The licenses for most software are designed to take away your}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+freedom to share and change it.  By contrast, the GNU General Public}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+License is intended to guarantee your freedom to share and change free}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+software--to make sure the software is free for all its users.  This}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+General Public License applies to most of the Free Software}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+Foundation's software and to any other program whose authors commit to}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+using it.  (Some other Free Software Foundation software is covered by}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+the GNU Library General Public License instead.)  You can apply it to}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+your programs, too.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+When we speak of free software, we are referring to freedom, not}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+price.  Our General Public Licenses are designed to make sure that you}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+have the freedom to distribute copies of free software (and charge for}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+this service if you wish), that you receive source code or can get it}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+if you want it, that you can change the software or use pieces of it}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+in new free programs; and that you know you can do these things.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+To protect your rights, we need to make restrictions that forbid}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+anyone to deny you these rights or to ask you to surrender the rights.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+These restrictions translate to certain responsibilities for you if you}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+distribute copies of the software, or if you modify it.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+For example, if you distribute copies of such a program, whether}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+gratis or for a fee, you must give the recipients all the rights that}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+you have.  You must make sure that they, too, receive or can get the}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+source code.  And you must show them these terms so they know their}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+rights.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+We protect your rights with two steps: (1) copyright the software, and}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+(2) offer you this license which gives you legal permission to copy,}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+distribute and/or modify the software.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+Also, for each author's protection and ours, we want to make certain}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+that everyone understands that there is no warranty for this free}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+software.  If the software is modified by someone else and passed on, we}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+want its recipients to know that what they have is not the original, so}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+that any problems introduced by others will not reflect on the original}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+authors' reputations.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+Finally, any free program is threatened constantly by software}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+patents.  We wish to avoid the danger that redistributors of a free}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+program will individually obtain patent licenses, in effect making the}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+program proprietary.  To prevent this, we have made it clear that any}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+patent must be licensed for everyone's free use or not licensed at all.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+The precise terms and conditions for copying, distribution and}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+modification follow.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+\tab \tab     GNU GENERAL PUBLIC LICENSE}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+   }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+0. This License applies to any program or other work which contains}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+a notice placed by the copyright holder saying it may be distributed}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+under the terms of this General Public License.  The "Program", below,}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+refers to any such program or work, and a "work based on the Program"}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+means either the Program or any derivative work under copyright law:}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+that is to say, a work containing the Program or a portion of it,}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+either verbatim or with modifications and/or translated into another}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+language.  (Hereinafter, translation is included without limitation in}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+the term "modification".)  Each licensee is addressed as "you".}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+Activities other than copying, distribution and modification are not}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+covered by this License; they are outside its scope.  The act of}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+running the Program is not restricted, and the output from the Program}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+is covered only if its contents constitute a work based on the}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+Program (independent of having been made by running the Program).}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+Whether that is true depends on what the Program does.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+1. You may copy and distribute verbatim copies of the Program's}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+source code as you receive it, in any medium, provided that you}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+conspicuously and appropriately publish on each copy an appropriate}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+copyright notice and disclaimer of warranty; keep intact all the}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+notices that refer to this License and to the absence of any warranty;}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+and give any other recipients of the Program a copy of this License}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+along with the Program.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+You may charge a fee for the physical act of transferring a copy, and}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+you may at your option offer warranty protection in exchange for a fee.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+  }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+2. You may modify your copy or copies of the Program or any portion}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+of it, thus forming a work based on the Program, and copy and}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+distribute such modifications or work under the terms of Section 1}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+above, provided that you also meet all of these conditions:}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+a) You must cause the modified files to carry prominent notices}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+stating that you changed the files and the date of any change.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+b) You must cause any work that you distribute or publish, that in}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+whole or in part contains or is derived from the Program or any}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+part thereof, to be licensed as a whole at no charge to all third}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+parties under the terms of this License.}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+c) If the modified program normally reads commands interactively}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+when run, you must cause it, when started running for such}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+interactive use in the most ordinary way, to print or display an}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+announcement including an appropriate copyright notice and a}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+notice that there is no warranty (or else, saying that you provide}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+a warranty) and that users may redistribute the program under}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+these conditions, and telling the user how to view a copy of this}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+License.  (Exception: if the Program itself is interactive but}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+does not normally print such an announcement, your work based on}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\fs16\loch\f5
+    }{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+the Program is not required to print an announcement.)}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033\rtlch \ltrch\loch\loch\f5
+
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+These requirements apply to the modified work as a whole.  If}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+identifiable sections of that work are not derived from the Program,}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5
+and can be reasonably considered independent and separate works in}
+\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af14\afs20\alang1081\loch\f8\fs20\lang1033{\afs16\alang1025\rtlch \ltrch\loch\fs16\loch\f5


More information about the distro-pkg-dev mailing list