/[packages]/cauldron/racket/current/SPECS/racket.spec
ViewVC logotype

Contents of /cauldron/racket/current/SPECS/racket.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 234778 - (show annotations) (download)
Sat May 5 21:04:36 2012 UTC (11 years, 11 months ago) by mitya
File size: 4842 byte(s)
Update to 5.2.1

1 %define _disable_ld_as_needed 1
2 %define _disable_ld_no_undefined 1
3
4 # To fix paths, Racket performs direct ELF surgery during install. D'oh!
5 # (see collects/setup/unixstyle-install.rkt)
6 # That's why we end up with slightly different executables that share the same
7 # build ID, and this breaks debuginfo extraction.
8 %define debug_package %{nil}
9
10 Name: racket
11 Version: 5.2.1
12 Release: %mkrel 1
13 Summary: Racket is a Scheme implementation
14 License: LGPLv2+
15 Group: Development/Other
16 Url: http://www.racket-lang.org
17 Source0: http://download.racket-lang.org/installers/%{version}/racket/%{name}-%{version}-src-unix.tgz
18 Patch0: racket-5.2.1-fix-libpng-linkage.patch
19 Source1: racket.png
20 BuildRequires: spec-helper >= 0.12
21 BuildRequires: imagemagick
22 BuildRequires: %{_lib}jpeg62
23
24 %define major %{version}
25 %define libname %mklibname %{name} %{major}
26 %define develname %mklibname %{name} -d
27
28 Requires: %{libname} = %{version}
29
30 %description
31 Racket is a Scheme implementation. It implements
32 the language as described in the Revised^5 Report on the
33 Algorithmic Language Scheme and adds numerous extensions.
34
35 %package -n %{libname}
36 Summary: Main library for %{name}
37 Group: System/Libraries
38 Provides: %{name} = %{version}-%{release}
39
40 %description -n %{libname}
41 This package contains the library needed to run programs dynamically
42 linked with %{name}.
43
44 %package -n %{develname}
45 Summary: Headers for developing programs that will use %{name}
46 Group: Development/Other
47 Requires: %{libname} = %{version}-%{release}
48 Provides: %{name}-devel = %{version}-%{release}
49
50 %description -n %{develname}
51 This package contains the headers that programmers will need to develop
52 applications which will use %{name}.
53
54 %package -n g%{name}
55 Summary: Racket graphical Scheme implementation
56 Group: Development/Other
57 Requires: %{name} = %{version}
58
59 %description -n g%{name}
60 GRacket is the Racket's graphical Scheme implementation. It embeds and
61 extends Racket with a graphical user interface (GUI) toolbox.
62
63 %package -n dr%{name}
64 Summary: Racket graphical development environment
65 Group: Development/Other
66 Requires: g%{name} = %{version}
67
68 %description -n dr%{name}
69 DrRacket is the graphical development environment for creating
70 Racket and GRacket applications.
71
72 %prep
73 %setup -q
74 %patch0 -p0
75
76 %build
77 cd src
78 %configure2_5x \
79 --enable-shared
80 %make
81
82 %install
83 rm -rf %{buildroot}
84 mkdir %{buildroot}
85 cd src
86 export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
87 export PLT_SETUP_OPTIONS="-j 1"
88 %makeinstall_std
89
90 # correct installation
91 install -d -m 755 %{buildroot}%{_datadir}
92 install -d -m 755 %{buildroot}%{_libdir}/%{name}
93
94 # correct perms
95 find %{buildroot}%{_libdir}/%{name}/collects -type d -exec chmod 755 {} \;
96 find %{buildroot}%{_datadir}/%{name}/doc -type d -exec chmod 755 {} \;
97
98 %multiarch_includes %{buildroot}%{_includedir}/racket/mzconfig.h
99
100 mkdir -p $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}
101 mv README $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}
102
103 mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
104 cat > $RPM_BUILD_ROOT%{_datadir}/applications/drracket.desktop << EOF
105 [Desktop Entry]
106 Name=DrRacket
107 Comment=Scheme IDE
108 Exec=drracket
109 Icon=drracket
110 Terminal=false
111 Type=Application
112 StartupNotify=true
113 Categories=Development;IDE;
114 EOF
115
116 mkdir -p %{buildroot}%{_datadir}/pixmaps
117 mkdir -p %{buildroot}%{_iconsdir}/hicolor/{16x16,32x32,48x48,64x64}/apps
118 convert -scale "48x48" %{SOURCE1} %{buildroot}%{_datadir}/pixmaps/drracket.png
119 convert -scale "16x16" %{SOURCE1} %{buildroot}%{_iconsdir}/hicolor/16x16/apps/drracket.png
120 convert -scale "32x32" %{SOURCE1} %{buildroot}%{_iconsdir}/hicolor/32x32/apps/drracket.png
121 convert -scale "48x48" %{SOURCE1} %{buildroot}%{_iconsdir}/hicolor/48x48/apps/drracket.png
122 convert -scale "64x64" %{SOURCE1} %{buildroot}%{_iconsdir}/hicolor/64x64/apps/drracket.png
123
124 %files
125 %defattr(-,root,root)
126 %doc README
127 %{_libdir}/%{name}
128 %{_bindir}/*
129 %{_mandir}/man1/*
130 %{_datadir}/%{name}
131 %exclude %{_bindir}/gracket
132 %exclude %{_bindir}/drracket
133 %exclude %{_mandir}/man1/gracket.1*
134 %exclude %{_mandir}/man1/drracket.1*
135 %exclude %{_libdir}/%{name}/collects/mred
136 %exclude %{_libdir}/%{name}/collects/drracket
137 %exclude %{_datadir}/%{name}/doc/drracket
138
139 %files -n %{libname}
140 %defattr(-,root,root)
141 %{_libdir}/libracket3m-%{version}.so
142
143 %files -n %{develname}
144 %defattr(-,root,root)
145 %{_libdir}/libracket3m.so
146 %{_libdir}/*.la
147 %{_includedir}/*
148
149 %files -n gracket
150 %defattr(-,root,root)
151 %{_libdir}/%{name}/collects/mred
152 %{_bindir}/gracket
153 %{_mandir}/man1/gracket.1*
154
155 %files -n drracket
156 %defattr(-,root,root)
157 %{_libdir}/%{name}/collects/drracket
158 %{_bindir}/drracket
159 %{_mandir}/man1/drracket.1*
160 %{_datadir}/%{name}/doc/drracket
161 %{_datadir}/pixmaps/drracket.png
162 %{_iconsdir}/hicolor/16x16/apps/drracket.png
163 %{_iconsdir}/hicolor/32x32/apps/drracket.png
164 %{_iconsdir}/hicolor/48x48/apps/drracket.png
165 %{_iconsdir}/hicolor/64x64/apps/drracket.png
166 %{_datadir}/applications/drracket.desktop

  ViewVC Help
Powered by ViewVC 1.1.30