=head1 NAME Urlader - installer-less single-file independent executables =head1 SYNOPSIS use Urlader; =head1 DESCRIPTION =over 4 =cut package Urlader; use common::sense; BEGIN { our $VERSION = '0.2'; use XSLoader; XSLoader::load __PACKAGE__, $VERSION; } our $URLADER_VERSION; # only ste when running under urlader our $DATADIR; our $EXE_ID; our $EXE_VER; our $EXE_DIR; # %AppData%/urlader/EXE_ID our $EXECDIR; # %AppData%/urlader/EXE_ID/i-EXE_VER sub _get_env { $URLADER_VERSION = getenv "URLADER_VERSION"; $DATADIR = getenv "URLADER_DATADIR"; $EXE_ID = getenv "URLADER_EXE_ID"; $EXE_VER = getenv "URLADER_EXE_VER"; $EXE_DIR = getenv "URLADER_EXE_DIR"; # %AppData%/urlader/EXE_ID $EXECDIR = getenv "URLADER_EXECDIR"; # %AppData%/urlader/EXE_ID/i-EXE_VER } _get_env; sub set_exe_info($$) { _set_datadir unless defined getenv "URLADER_DATADIR"; &_set_exe_info; _get_env; } 1; =back =head1 AUTHOR Marc Lehmann http://home.schmorp.de/ =cut