]> git.pld-linux.org Git - packages/cook.git/blob - cook.spec
- massive attack: source-md5
[packages/cook.git] / cook.spec
1 Summary:        A file construction tool
2 Summary(pl):    Narzêdzie do konstrukcji plików
3 Name:           cook
4 Version:        2.21
5 Release:        3
6 License:        GPL
7 Group:          Development/Building
8 Source0:        http://www.canb.auug.org.au/~millerp/cook/%{name}-%{version}.tar.gz
9 # Source0-md5:  767b152dbfc6afb93fc94326cab67227
10 URL:            http://www.canb.auug.org.au/~millerp/cook/
11 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
12
13 %description
14 Cook is a tool for constructing files. It is given a set of files to
15 create, and recipes of how to create them. In any non-trivial program
16 there will be prerequisites to performing the actions necessary to
17 creating any file, such as include files. The cook program provides a
18 mechanism to define these.
19
20 When a program is being developed or maintained, the programmer will
21 typically change one file of several which comprise the program. Cook
22 examines the last-modified times of the files to see when the
23 prerequisites of a file have changed, implying that the file needs to
24 be recreated as it is logically out of date.
25
26 Cook also provides a facility for implicit recipes, allowing users to
27 specify how to form a file with a given suffix from a file with a
28 different suffix. For example, to create filename.o from filename.c
29
30 - Cook is a replacement for the traditional make(1) tool. However, it
31   is necessary to convert makefiles into cookbooks using the make2cook
32   utility included in the distribution.
33
34 - Cook has a simple but powerful string-based description language
35   with many built-in functions. This allows sophisticated filename
36   specification and manipulation without loss of readability or
37   performance.
38
39 - Cook is able to use fingerprints to supplement file modification
40   times. This allows build optimization without contorted rules.
41
42 - Cook is able to build your project with multiple parallel threads,
43   with support for rules which must be single threaded. It is possible
44   to distribute parallel builds over your LAN, allowing you to turn your
45   network into a virtual parallel build engine.
46
47 If you are putting together a source-code distribution and planning to
48 write a makefile, consider writing a cookbook instead. Although Cook
49 takes a day or two to learn, it is much more powerful and a bit more
50 intuitave than the traditional make(1) tool. And Cook doesn't
51 interpret tab differently to 8 space characters!
52
53 %description -l pl
54
55 Cook jest narzêdziem do tworzenia plików. Podaje mu siê listê plików do 
56 utworzenia oraz regu³y wyja¶niaj±ce jak je utworzyæ. Ka¿dy nietrywialny
57 program wymaga podjêcia pewnych dzia³añ koniecznych do utworzenia 
58 ró¿nych plików, jak np. plików nag³ówkowych. Cook udostêpnia mechanizmy
59 pozwalaj±cy je zdefiniowaæ.
60
61 Tworz±c i rozwijaj±c program zazwyczaj modyfikuje siê pliki, z których
62 siê sk³ada. Cook bada daty ostatniej modyfikacji sprawdzaj±c, czy
63 zmieni³y siê zale¿no¶ci; je¶li tak, pliki powinny zostaæ zaktualizowane.
64
65 Cook umo¿liwia równie¿ definiowanie niejawnych regu³, pozwalaj±c
66 u¿ytkownikom wyszczególniæ metody tworzenia plików o podanym
67 rozszerzeniu z pliku o innym rozszerzeniu (np. jak utworzyæ
68 plik.o z plik.c).
69
70 - Cook jest zamiennikiem tradycyjnego narzêdzia make(1). Jednak przed
71 u¿yciem plików Makefile z cookiem, nale¿y wcze¶niej przekszta³ciæ
72 je do formatu rozumianego przez cooka przy u¿yciu narzêdzia make2cook
73 dostarczanego wraz z dystrybucj±.
74
75 - Cook posiada prosty lecz potê¿ny jêzyk opisowy, z wieloma wbudowanymi
76   funkcjami, dziêki czemu mo¿na podawaæ i manipulowaæ skomplikowanymi
77   specyfikacjami nazw plików bez utraty czytelno¶ci i wydajno¶ci.
78
79 - Oprócz daty ostatniej modyfikacji, cook pozwala korzystaæ z fingerprintów.
80   Dziêki temu mo¿na zoptymalizowaæ proces budowania nie uciekaj±c siê
81   do nienaturalnych regu³.
82
83 - Cook potrafi przeprowadziæ proces budowania w wielu równoleg³ych
84   w±tkach, obs³uguj±c prawid³owo regu³y jednow±tkowe. Mo¿na
85   przeprowadziæ rozproszone budowanie w sieci LAN, przekszta³caj±c
86   lokaln± sieæ w wirtualn± maszynê do budowania równoleg³ego.
87
88 Je¶li tworzysz program od zera i planujesz napisaæ Makefile,
89 przemy¶l mo¿liwo¶æ wykorzystania zamiast niego pliku cookbook.
90 Choæ na naukê Cooka trzeba po¶wiêciæ dzieñ lub dwa, jest to
91 narzêdzie o wiele potê¿niejsze i znacznie bardziej intuicyjne ni¿
92 tradycyjne make(1). Poza tym Cook nie traktuje inaczej TAB-a i
93 o¶miu spacji!
94
95 %package doc-ps
96 Summary:        Cook documentation, PostScript format
97 Summary(pl):    Dokumentacja do cooka w formacie PostScript
98 Group:          Development/Building
99
100 %description doc-ps
101 Cook documentation in PostScript format.
102
103 %description doc-ps -l pl
104 Dokumentacja do cooka w formacie PostScript.
105
106 %prep
107 %setup -q
108
109 %build
110 %configure2_13
111 %{__make}
112
113 %install
114 rm -rf $RPM_BUILD_ROOT
115 install -d $RPM_BUILD_ROOT
116 install -d $RPM_BUILD_ROOT%{_bindir}
117 install -d $RPM_BUILD_ROOT%{_libdir}
118 install -d $RPM_BUILD_ROOT%{_libdir}/cook
119 install -d $RPM_BUILD_ROOT%{_libdir}/cook/en/
120 install -d $RPM_BUILD_ROOT%{_libdir}/cook/en/LC_MESSAGES
121 install -d $RPM_BUILD_ROOT%{_datadir}
122 install -d $RPM_BUILD_ROOT%{_datadir}/cook
123 install -d $RPM_BUILD_ROOT%{_datadir}/cook/en
124 install -d $RPM_BUILD_ROOT%{_datadir}
125 ln -s $RPM_BUILD_ROOT%{_mandir}/man1 $RPM_BUILD_ROOT%{_datadir}/cook/en/man1
126 install -d $RPM_BUILD_ROOT%{_mandir}
127 install -d $RPM_BUILD_ROOT%{_mandir}/man1
128 install -d $RPM_BUILD_ROOT%{_pixmapsdir}
129
130 %{__make} RPM_BUILD_ROOT=$RPM_BUILD_ROOT install
131 #rm -rf $RPM_BUILD_ROOT%{_datadir}/cook/en
132 rm -rf $RPM_BUILD_ROOT%{_datadir}/cook/en/man1
133 install cook.gif $RPM_BUILD_ROOT%{_pixmapsdir}
134
135 %files
136 %defattr(644,root,root,755)
137 %doc README lib/en/*.{ps,txt} 
138 %attr(0755,root,root) %{_bindir}/*
139 %{_libdir}/cook
140 %{_datadir}/cook
141 %{_mandir}/man*/*
142 %{_pixmapsdir}/cook.gif
143
144 %files doc-ps
145 %defattr(644,root,root,755)
146 %doc %{_datadir}/doc/%{name}-%{version}/*.ps.gz
147
148 %clean
149 rm -rf $RPM_BUILD_ROOT
This page took 0.071556 seconds and 3 git commands to generate.