Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37488642
en ru br
Репозитории ALT
S:4.10.2.2614-alt3_29
5.1: 4.0.3.2202-alt1.M51.1
4.0: 3.10.5-alt0.5.M40.2
www.altlinux.org/Changes

Группа :: Разработка/Прочее
Пакет: squeak-vm

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

%define major 3.10
%define minor   5
%define vmver   %major-%minor
%define source  Squeak-%vmver

Name: squeak-vm
Version: %major.%minor
Release: alt0.5.M40.2
Summary: The Squeak virtual machine

Group: Development/Other
License: MIT
Url: http://squeakvm.org/unix

Packager: Anton A. Vinogradov <arc at altlinux.org>

Source: http://ftp.squeak.org/%major/unix-linux/%source.src.tar.gz
Source2: squeak-desktop-files.tar.gz
Patch: squeak-vm-rpath.patch
Patch1: squeak-vm-install-inisqueak.patch
Patch2: squeak-vm-imgdir.patch
Patch3: squeak-vm-tail-options.patch
Patch4: squeak-vm-dprintf.patch
Patch5: squeak-vm-Mpeg3Plugin.patch

#

# define nonXOplugins to be non-zero if you would like the plugins that
# are unnecessary on the XO to be moved into a separate sub-package
# to save space on the XO.  The list of plugins that are split out is
# listed below in the nonXOplugins files section
#
%define nonXOplugins 1

BuildRequires: gcc-c++ gstreamer-devel imake libmesa-devel libXext-devel libXt-devel libalsa-devel libdbus-devel libpango-devel libspeex-devel libuuid-devel libvorbis-devel squeak-sources xorg-cf-files

%description
Squeak is a full-featured implementation of the Smalltalk programming
language and environment based on (and largely compatible with) the original
Smalltalk-80 system.

This package contains just the Squeak virtual machine.

%if 0%?nonXOplugins
%package nonXOplugins
Summary: Non-XO Plugins for the Squeak virtual machine
Group: Development/Other
Requires: squeak-vm = %version-%release
%description nonXOplugins
Plugins for the Squeak virtual machine.
These plugins are unnecessary on the XO, and so are moved into a separate
sub-package to save space.
%endif

%prep
%setup -q -n %source -a 2

# The source files chmod'd here have the execute bit set in the upstream tarball

# which bothers rpmlint, need submit a request upstream to have this changed

find platforms -name '*.[ch]' -exec chmod ug=rw,o=r {} \;

%patch0 -p1 -b .rpath
%patch1 -p1 -b .install-inisqueak
%patch2 -p1 -b .imgdir
%patch3 -p1 -b .tail-options
%patch4 -p1 -b .dprintf
%patch5 -p1
%build
mkdir -p bld
cd bld

CPPFLAGS=-DSUGAR ../platforms/unix/config/configure --prefix=%prefix --mandir=%_mandir --datadir=%_datadir --libdir=%_libdir

%make_build
# due to .text in *-sysv-asm.S
%set_verify_elf_method textrel=relaxed
%install
make -C bld install ROOT=%buildroot

# these files will be put in std RPM doc location

rm -rf %buildroot%prefix/doc/squeak

# install the desktop stuff

install -D --mode=u=rwx,go=rx mysqueak %buildroot%_bindir/mysqueak
install -D --mode=u=rw,go=r mysqueak.1 %buildroot%_man1dir/mysqueak.1
install -D --mode=u=rw,go=r squeak.xml %buildroot%_datadir/mime/packages/squeak.xml
install -D --mode=u=rw,go=r squeak.desktop %buildroot%_desktopdir/squeak.desktop
install -D --mode=u=rw,go=r squeak.png %buildroot%_pixmapsdir/squeak.png

%define icons_dir %buildroot%_iconsdir/gnome
for size in 16 24 32 48 64 72 96
do
 mkdir -p %icons_dir/${size}x${size}/mimetypes
 install -m0644 squeak${size}.png %icons_dir/${size}x${size}/mimetypes/application-x-squeak-image.png
 install -m0644 squeaksource${size}.png %icons_dir/${size}x${size}/mimetypes/application-x-squeak-source.png
done

# If an image cant find the .sources in the current directory it will look

# in %_libdir/squeak/%vmver
cd %buildroot%_libdir/squeak/%vmver
DOTDOTS=$(echo %_libdir/squeak/%vmver | sed -e 's:/[^/]\+:../:g')
ln -s ${DOTDOTS}%_datadir/squeak/SqueakV39.sources .
ln -s ${DOTDOTS}%_datadir/squeak/SqueakV3.sources .
ln -s ${DOTDOTS}%_datadir/squeak/SqueakV2.sources .
%files
%doc platforms/unix/ChangeLog platforms/unix/doc/{README*,LICENSE,*RELEASE_NOTES}
%_bindir/*
%dir %_libdir/squeak
%dir %_libdir/squeak/%vmver
%if 0 == 0%?nonXOplugins
%_libdir/squeak/%vmver/FileCopyPlugin
%_libdir/squeak/%vmver/B3DAcceleratorPlugin
%_libdir/squeak/%vmver/PseudoTTYPlugin
%_libdir/squeak/%vmver/UnixOSProcessPlugin
%_libdir/squeak/%vmver/XDisplayControlPlugin
%ifarch i686
%_libdir/squeak/%vmver/SqueakFFIPrims
%endif
%else
%_libdir/squeak/%vmver/AioPlugin
%_libdir/squeak/%vmver/ClipboardExtendedPlugin
%_libdir/squeak/%vmver/DBusPlugin
%_libdir/squeak/%vmver/GStreamerPlugin
%_libdir/squeak/%vmver/ImmX11Plugin
%_libdir/squeak/%vmver/KedamaPlugin
%_libdir/squeak/%vmver/KedamaPlugin2
%_libdir/squeak/%vmver/MIDIPlugin
%_libdir/squeak/%vmver/Mpeg3Plugin
%_libdir/squeak/%vmver/OggPlugin
%_libdir/squeak/%vmver/Squeak3D
%_libdir/squeak/%vmver/UUIDPlugin
%_libdir/squeak/%vmver/VideoForLinuxPlugin
%_libdir/squeak/%vmver/HostWindowPlugin
%_libdir/squeak/%vmver/SqueakV2.sources
%_libdir/squeak/%vmver/SqueakV3.sources
%_libdir/squeak/%vmver/SqueakV39.sources
%_libdir/squeak/%vmver/npsqueak.so
%_libdir/squeak/%vmver/squeak
%_libdir/squeak/%vmver/vm-display-X11
%_libdir/squeak/%vmver/vm-display-fbdev
%_libdir/squeak/%vmver/vm-display-null
%_libdir/squeak/%vmver/vm-sound-ALSA
%_libdir/squeak/%vmver/vm-sound-OSS
%_libdir/squeak/%vmver/vm-sound-null
%endif
%_mandir/man*/*
%dir %_datadir/squeak
%_datadir/squeak/*
%_desktopdir/*
%_pixmapsdir/*
%_datadir/mime/packages/*
%_iconsdir/gnome/*/mimetypes/*.png

%if 0%?nonXOplugins
%files nonXOplugins
%_libdir/squeak/%vmver/FileCopyPlugin
%_libdir/squeak/%vmver/B3DAcceleratorPlugin
%_libdir/squeak/%vmver/PseudoTTYPlugin
%_libdir/squeak/%vmver/UnixOSProcessPlugin
%_libdir/squeak/%vmver/XDisplayControlPlugin
%ifarch %ix86 ppc
%_libdir/squeak/%vmver/SqueakFFIPrims
%endif
%endif


%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin