File List
Not logged in

Files of check-in [b7d5683527] in directory undroid   [history]

undroidwish - AndroWish sans the borg, a project just for pun.

This directory contains various build scripts (UN*X shell) for generating
single-file Tcl/Tk binaries using bits and pieces of the AndroWish source tree:

	script				result	undroidwish.exe for win64	undroidwish.exe for win32	undroidwish for 64bit linux (x86_64)	undroidwish for 32bit linux (i586)	undroidwish for generic linux (e.g. arm)	undroidwish for linux incl. Wayland
				video driver (*very experimental*)	undroidwish for Haiku (*very experimental*)	undroidwish for FreeBSD	undroidwish for OpenIndiana Hipster	undroidwish for MacOSX (*experimental*)	undroidwish for OpenBSD	undroidwish for linux with KMSDRM
				video driver only (*very experimental*)		vanilla{tclsh,wish}.exe for win64		vanilla{tclsh,wish}.exe for win32	vanilla{tclsh,wish} for 64bit linux (x86_64)	vanilla{tclsh,wish} for 32bit linux (i586)	vanilla{tclsh,wish} for generic linux (e.g. arm)	vanilla{tclsh,wish} for FreeBSD	vanilla{tclsh,wish} for OpenIndiana Hipster	vanilla{tclsh,wish} for OpenBSD		vanilla{tclsh,wish} for MacOSX (Cocoa)

The undroidwish variant uses the SDL2 backend, the vanilla variant
the native one (i.e. X11 on POSIX, Win32/GDI on Windows, Cocoa on MacOS).

The generic undroidwish variant tries to detect a Raspberry Pi build
environment and can produce a binary which runs in the console using
the RPI SDL video driver, i.e. does not require an X server (tested
on Raspbian/Debian 9).

The builds for Windows are designed for cross compilation on a Linux
(or other POSIX) development system using a MinGW cross toolchain
targeting Win32 or Win64. During this build a working Wine emulation
is required (thus the best suited development platform is a recent
Linux, e.g. Debian, CentOS, or Fedora).

The experimental Wayland variant gets built with both an X11 and a Wayland
video driver plus the KMSDRM video driver, if possible. The former driver
is the default. In order to run with the Wayland driver, the environment
must have the variable WAYLAND_DISPLAY defined or alternatively
SDL_VIDEODRIVER set to "wayland". The build is currently verified on
Fedora 28/29, Debian 9, and CentOS 7.5. The undroidwish root window on
Wayland has no decorations and can be moved and/or resized (-sdlresizable
required) with the hot keys Alt-F7 and Alt-F8.

The experimental KMSDRM variant gets built with the KMSDRM video
driver only which gives a similar configuration as with the RPI
video driver. It requires working Linux kernel mode setting support
and modern graphics hardware. It allows to run an undroidwish from
the console in frame buffer mode. On most modern Linuxen this requires
the user to be in the video and input groups. An emergency exit is
provided with the Control-Alt-Backspace hot key. Since 2018-03-26
it includes OpenGL support for the Canvas3D and Tkzinc widgets
which still may have problems depending on the GPU hardware.

Refer to the individual script for build requirements. The general pattern
for invocation is

  <full-name-of-script-within-AndroWish-source-tree> ?<action>?

where <action> (default is "build") carries out the following:

"init"		initialize current directory from AndroWishs source tree
"sync"		sync with AndroWish source tree
"clean"		run "make clean" in subdirectories
"distclean"	run "make distclean" in subdirectories
"build"		build everything

i.e. the "init" action should be carried out in a new empty directory
outside the AndroWish source tree, all others in that directory which got
populated by the "init" action. The disk space needed for a full build per
platform is 700 to 900 MByte on a Linux development system.

On Debian GNU/Linux and derivates, these packages should be present for
building (more may be required):


On MacOSX these homebrew packages are needed for building (more may be