Sounds interesting .. could another step be to be able to make a .exe (or
.msi, etc.) from a OoRexx program and all the bits & classes that it needs?
 
 
Mike


  _____  

From: Rony G. Flatscher [mailto:[email protected]] 
Sent: 03 August 2022 12:39
To: [email protected]
Subject: Re: [Oorexx-devel] Ad "portable" versions of ooRexx



Commited with [r12497] ( <http://sourceforge.net/p/oorexx/code-0/12497>
<http://sourceforge.net/p/oorexx/code-0/12497>).

After creating ooRexx with CMake you can now issue "make portable" and get
two zip-archives as a result, one containing the runtime, one containing all
files including documentation and samples.

To use: just unzip any of the zip archives go into the directory and issue:
"setupoorexx.cmd" (Windows) "setupoorexx.sh" (Unix).  The resulting
readme.txt file documents  the generated scripts that allow one to use the
contained ooRexx. 


Use the generated script "rxenv.cmd" (Windows), "rxenv.sh" (Unix): this
script sets the local environment to point first to the portable ooRexx
interpreter and then runs the supplied program with the arguments, e.g.
(Windows):

rxenv.cmd rexx testoorexx.rex


Will run rexx.exe and supply it the contained Rexx program "testoorexx.rex":
testoorexx.rex will list the .rexxinfo data.

To set the session's environment to the portable ooRexx run the generated
"setenv2rxenv.cmd" (Unix: "export setenv2rxenv.sh") script. In that case you
merely need to:

rexx testoorexx.rex


---rony


On 01.08.2022 15:14, Rony G. Flatscher wrote:


As there were no objections I am planning on adding the "portable" target to
CMakeLists.txt and to add a new subdirectory named "support" that will
contain a "portable" directory containing the support programs for creating
portable ooRexx zip archives including setupoorexx.{rex|cmd} which create
the scripts to run ooRexx (programs) from that location; if the location
changes (e.g. if you have the unzipped files on an USB-stick and use it on a
different computer) one merely needs to rerun setupoorexx.{rex|cmd} to get
everything adjusted. This way such portable versions can become part of a
toolbox for programmers that they can carry along on an USB stick and have
ooRexx available wherever they go to. :)

The link (for a now older version of ooRexx in portable form) from the
earlier posting below is still available for those who wish to test such
portable versions on Windows (32- and 64-bit, Linux (64-bit) and/or MacOS
(64-bit).


---rony





On 01.02.2022 14:49, Rony G. Flatscher wrote:


Inspired by Java/OpenJDK zip archives I tried to create "portable" versions
of ooRexx. Once unzipped, there is a simple, uniform directory layout that
is the same for all operating systems (bin, doc, include, lib, samples). 


In addition the unzipped directory includes a utility named
"setupoorexx.{cmd|sh}" and if run, creates two shell scripts, a
"rxenv.{sh|cmd}" and "setenv2rxenv.{sh|cmd}" which point/refer to the local,
unzipped ooRexx. 


This way one can easily have a number of different "potable" ooRexx
interpreters with different revisions, bitnesses, release and debug versions
that can be run/tested at the same time on the same machine (e.g. for
development or testing or demonstration purposes). 


It would be possible to carry those portable ooRexx interpreters on an USB
stick (and run them from there on any operating system after running the
setupoorexx shell script) or to place them on a local network or even to
attach them to a mail.


The cmake driven operation will create two versions, a full version and a
runtime version (the runtime version does not include the doc and samples
directories).

The scripts generated with "setupoorexx.{sh|cmd}" make it easy to run Rexx
programs without having ooRexx installed on a target system. 


---


To see or test for yourself you may use this temporary Dropbox link:
<https://www.dropbox.com/sh/n65twckpkixl9gm/AADrnjgHAqiWQQU17GjGrtpna?dl=0>
<https://www.dropbox.com/sh/n65twckpkixl9gm/AADrnjgHAqiWQQU17GjGrtpna?dl=0>
which used the latest version of ooRexx 5.0 from trunk for Apple, Linux and
Windows.

Its content is:

 Directory of e:\Dropbox\portable\release



01.02.2022  14:17    <DIR>          .

01.02.2022  14:17    <DIR>          ..

30.01.2022  18:59         1 833 594
ooRexx-5.0.0-darwin64-r12352-universal-portable-release-runtime.zip

30.01.2022  18:59        11 446 653
ooRexx-5.0.0-darwin64-r12352-universal-portable-release.zip

01.02.2022  14:06         1 420 066
ooRexx-5.0.0-linux64-r12352-x86_64-portable-release-runtime.zip

01.02.2022  14:06        11 022 636
ooRexx-5.0.0-linux64-r12352-x86_64-portable-release.zip

30.01.2022  13:24         1 439 030
ooRexx-5.0.0-win32-r12352-x86_32-portable-release-runtime.zip

30.01.2022  13:24        21 009 536
ooRexx-5.0.0-win32-r12352-x86_32-portable-release.zip

30.01.2022  14:10         1 636 074
ooRexx-5.0.0-win64-r12352-x86_64-portable-release-runtime.zip

30.01.2022  14:10        21 210 870
ooRexx-5.0.0-win64-r12352-x86_64-portable-release.zip

               8 File(s)     71 018 459 bytes



 Directory of e:\Dropbox\portable\release\debug



01.02.2022  14:17    <DIR>          .

01.02.2022  14:17    <DIR>          ..

30.01.2022  18:59         2 638 395
ooRexx-5.0.0-darwin64-r12352-universal-portable-debug-runtime.zip

30.01.2022  18:59        12 263 053
ooRexx-5.0.0-darwin64-r12352-universal-portable-debug.zip

01.02.2022  14:09         5 899 821
ooRexx-5.0.0-linux64-r12352-x86_64-portable-debug-runtime.zip

01.02.2022  14:09        15 625 873
ooRexx-5.0.0-linux64-r12352-x86_64-portable-debug.zip

30.01.2022  13:50         7 662 456
ooRexx-5.0.0-win32-r12352-x86_32-portable-debug-runtime.zip

30.01.2022  13:50        27 299 302
ooRexx-5.0.0-win32-r12352-x86_32-portable-debug.zip

30.01.2022  14:22         8 036 177
ooRexx-5.0.0-win64-r12352-x86_64-portable-debug-runtime.zip

30.01.2022  14:22        27 692 923
ooRexx-5.0.0-win64-r12352-x86_64-portable-debug.zip

               8 File(s)    107 118 000 bytes

You will notice the differences in size depending whether it is the debug or
the release version and depending whether it is the full or the runtime
version.

---


If you can see utility in this, then I am more than happy to commit the
necessary changes to the project such that one simply needs to issue "make
portable".

You can download any of the above portable zip archives for your operating
system, unzip them, run the setupoorexx shell scripts and study the
readme.txt output.


---rony


_______________________________________________
Oorexx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to