/[packages]/updates/2/racket/current/SPECS/racket.spec
ViewVC logotype

Contents of /updates/2/racket/current/SPECS/racket.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 388875 - (show annotations) (download)
Wed Jan 16 21:53:55 2013 UTC (11 years, 10 months ago) by mitya
File size: 4854 byte(s)
Fixed provides/requires

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

  ViewVC Help
Powered by ViewVC 1.1.30