util-linux: update to 2.25.2
[openwrt.git] / package / utils / util-linux / Makefile
1 #
2 # Copyright (C) 2007-2014 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=util-linux
11 PKG_VERSION:=2.25.2
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
15 PKG_SOURCE_URL:=@KERNEL/linux/utils/$(PKG_NAME)/v2.25
16 PKG_MD5SUM:=cab3d7be354000f629bc601238b629b3
17
18 PKG_LICENSE:=GPL-2.0
19 PKG_LICENSE_FILES:=COPYING getopt/COPYING libblkid/COPYING libmount/COPYING Documentation/licenses/COPYING.GPLv2 Documentation/licenses/COPYING.LGPLv2.1 libuuid/COPYING Documentation/licenses/COPYING.BSD-3
20
21 PKG_BUILD_PARALLEL:=1
22 PKG_BUILD_DEPENDS:=libncurses
23 PKG_FIXUP:=autoreconf
24
25 include $(INCLUDE_DIR)/package.mk
26
27 define Package/util-linux/Default
28   SECTION:=utils
29   CATEGORY:=Utilities
30   URL:=http://www.kernel.org/pub/linux/utils/util-linux/
31 endef
32
33 CONFIGURE_ARGS += \
34         --enable-new-mount      \
35         --with-ncurses          \
36         --disable-tls           \
37         --disable-sulogin       \
38         --without-python        \
39         --without-udev
40
41 TARGET_CFLAGS += $(FPIC) -std=gnu99
42
43 define Build/InstallDev
44         $(MAKE) -C $(PKG_BUILD_DIR) \
45                 BUILDCC="$(HOSTCC)" \
46                 DESTDIR="$(1)" \
47                 installdirs install-data
48
49         $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
50         $(CP) $(PKG_BUILD_DIR)/libblkid/blkid.pc $(1)/usr/lib/pkgconfig
51         $(CP) $(PKG_BUILD_DIR)/libmount/mount.pc $(1)/usr/lib/pkgconfig
52         $(CP) $(PKG_BUILD_DIR)/libuuid/uuid.pc $(1)/usr/lib/pkgconfig
53
54         $(INSTALL_DIR) $(1)/usr/include/blkid
55         $(CP) $(PKG_BUILD_DIR)/libblkid/src/blkid.h $(1)/usr/include/blkid
56         $(INSTALL_DIR) $(1)/usr/include/libmount
57         $(CP) $(PKG_BUILD_DIR)/libmount/src/libmount.h $(1)/usr/include/libmount
58         $(INSTALL_DIR) $(1)/usr/include/uuid
59         $(CP) $(PKG_BUILD_DIR)/libuuid/src/uuid.h $(1)/usr/include/uuid
60
61         $(INSTALL_DIR) $(1)/usr/lib
62         $(CP) $(PKG_BUILD_DIR)/.libs/libblkid.{a,so*} $(1)/usr/lib
63         $(CP) $(PKG_BUILD_DIR)/.libs/libmount.{a,so*} $(1)/usr/lib
64         $(CP) $(PKG_BUILD_DIR)/.libs/libuuid.{a,so*} $(1)/usr/lib
65 endef
66
67 define Package/libblkid
68 $(call Package/util-linux/Default)
69   DEPENDS:=+libuuid
70   TITLE:=block device id library
71   SECTION:=libs
72   CATEGORY:=Libraries
73 endef
74
75 define Package/libblkid/description
76  The libblkid library is used to identify block devices (disks) as to their
77  content (e.g. filesystem type, partitions) as well as extracting additional
78  information such as filesystem labels/volume names, partitions, unique
79  identifiers/serial numbers...
80 endef
81
82 define Package/libmount
83 $(call Package/util-linux/Default)
84   DEPENDS:=+libblkid
85   TITLE:=mount library
86   SECTION:=libs
87   CATEGORY:=Libraries
88 endef
89
90 define Package/libmount/description
91  The libmount library is used to parse /etc/fstab, /etc/mtab and
92  /proc/self/mountinfo files, manage the mtab file, evaluate mount options...
93 endef
94
95 define Package/libuuid
96 $(call Package/util-linux/Default)
97   TITLE:=DCE compatible Universally Unique Identifier library
98   SECTION:=libs
99   CATEGORY:=Libraries
100 endef
101
102 define Package/libuuid/description
103  The UUID library is used to generate unique identifiers for objects
104  that may be accessible beyond the local system. This library
105  generates UUIDs compatible with those created by the Open Software
106  Foundation (OSF) Distributed Computing Environment (DCE) utility.
107 endef
108
109 define Package/agetty
110 $(call Package/util-linux/Default)
111   TITLE:=alternative Linux getty
112   SUBMENU=Terminal
113 endef
114
115 define Package/agetty/description
116  agetty opens a tty port, prompts for a login name and invokes the
117  /bin/login command
118 endef
119
120 define Package/blkid
121 $(call Package/util-linux/Default)
122   TITLE:=locate/print block device attributes
123   DEPENDS:= +libblkid
124   SUBMENU=disc
125 endef
126
127 define Package/blkid/description
128  The blkid program is the command-line interface to working with the libblkid
129  library.
130 endef
131
132 define Package/cal
133 $(call Package/util-linux/Default)
134   TITLE:=display a calendar
135   DEPENDS:= +libncurses
136 endef
137
138 define Package/cal/description
139  cal displays a simple calendar
140 endef
141
142 define Package/cfdisk
143 $(call Package/util-linux/Default)
144   TITLE:=display or manipulate disk partition table
145   DEPENDS:= +libblkid +libncurses
146   SUBMENU:=disc
147 endef
148
149 define Package/cfdisk/description
150  cfdisk is a curses-based program for partitioning any hard disk drive
151 endef
152
153 define Package/dmesg
154 $(call Package/util-linux/Default)
155   TITLE:=print or control the kernel ring buffer
156   DEPENDS:= +librt
157 endef
158
159 define Package/dmesg/description
160  dmesg  is used to examine or control the kernel ring buffer
161 endef
162
163 define Package/fdisk
164 $(call Package/util-linux/Default)
165   TITLE:=manipulate disk partition table
166   DEPENDS:= +libblkid
167   SUBMENU=disc
168 endef
169
170 define Package/fdisk/description
171  a menu-driven program for creation and manipulation of partition tables
172 endef
173
174 define Package/findfs
175 $(call Package/util-linux/Default)
176   TITLE:=find a filesystem by label or UUID
177   DEPENDS:= +libblkid
178   SUBMENU=disc
179 endef
180
181 define Package/findfs/description
182  findfs will search the disks in the system looking for a filesystem which has
183  a label matching label or a UUID equal to uuid
184 endef
185
186 define Package/flock
187 $(call Package/util-linux/Default)
188   TITLE:=manage locks from shell scripts
189 endef
190
191 define Package/flock/description
192   manages flock locks from within shell scripts or the command line
193 endef
194
195 define Package/getopt
196 $(call Package/util-linux/Default)
197   TITLE:=parse command options (enhanced)
198 endef
199
200 define Package/getopt/description
201  getopt is used to break up (parse) options in command lines for easy parsing
202  by shell procedures, and to check for legal options
203 endef
204
205 define Package/hwclock
206 $(call Package/util-linux/Default)
207   TITLE:=query or set the hardware clock
208 endef
209
210 define Package/hwclock/description
211  hwclock is a tool for accessing the Hardware Clock
212 endef
213
214 define Package/logger
215 $(call Package/util-linux/Default)
216   TITLE:=a shell command interface to the syslog system log module
217 endef
218
219 define Package/logger/description
220  logger makes entries in the system log, it provides a shell command interface
221  to the syslog system log module
222 endef
223
224 define Package/look
225 $(call Package/util-linux/Default)
226   TITLE:=display lines beginning with a given string
227 endef
228
229 define Package/look/description
230  look utility displays any lines in file which contain string
231 endef
232
233 define Package/losetup
234 $(call Package/util-linux/Default)
235   TITLE:=set up and control loop devices
236 endef
237
238 define Package/losetup/description
239  losetup is used to associate loop devices with regular files or block devices,
240  to detach loop devices and to query the status of a loop device
241 endef
242
243 define Package/lsblk
244 $(call Package/util-linux/Default)
245   TITLE:=list block devices
246   DEPENDS:= +libblkid +libmount
247   SUBMENU=disc
248 endef
249
250 define Package/lsblk/description
251  lsblk lists information about all or the specified block devices
252 endef
253
254 define Package/mcookie
255 $(call Package/util-linux/Default)
256   TITLE:=generate magic cookies for xauth
257 endef
258
259 define Package/mcookie/description
260  mcookie generates a 128-bit random hexadecimal number for use with the X
261  authority system
262 endef
263
264 define Package/mount-utils
265 $(call Package/util-linux/Default)
266   TITLE:=related (u)mount utilities
267   DEPENDS+= +libmount
268 endef
269
270 define Package/mount-utils/description
271  contains: mount, umount, findmnt
272 endef
273
274 define Package/namei
275 $(call Package/util-linux/Default)
276   TITLE:=follow a pathname until a terminal point is found
277 endef
278
279 define Package/namei/description
280  namei uses its arguments as pathnames to any type of Unix file (symlinks,
281  files, directories, and so forth)
282 endef
283
284 define Package/rename
285 $(call Package/util-linux/Default)
286   TITLE:=rename files
287 endef
288
289 define Package/rename/description
290  rename will rename the specified files by replacing the first occurrence of
291  expression in their name by replacement
292 endef
293
294 define Package/partx-utils
295 $(call Package/util-linux/Default)
296   TITLE:=inform kernel about the presence and numbering of on-disk partitions
297   DEPENDS:= +libblkid
298   SUBMENU=disc
299 endef
300
301 define Package/partx-utils/description
302  contains partx, addpart, delpart
303 endef
304
305 define Package/script-utils
306 $(call Package/util-linux/Default)
307   TITLE:=make and replay typescript of terminal session
308   SUBMENU=Terminal
309 endef
310
311 define Package/script-utils/description
312  contains: script, scriptreplay
313 endef
314
315 define Package/setterm
316 $(call Package/util-linux/Default)
317   TITLE:=set terminal attributes
318   DEPENDS:= +libncurses
319   SUBMENU:=Terminal
320 endef
321
322 define Package/setterm/description
323  setterm writes to standard output a character string that will invoke the
324  specified terminal capabilities
325 endef
326
327 define Package/sfdisk
328 $(call Package/util-linux/Default)
329   TITLE:=partition table manipulator for Linux
330   SUBMENU=disc
331 endef
332
333 define Package/sfdisk/description
334  list the size of a partition, list the partitions on a device, check the
335  partitions on a device and repartition a device
336 endef
337
338 define Package/swap-utils
339 $(call Package/util-linux/Default)
340   TITLE:=swap space management utilities
341   DEPENDS+= +libblkid
342   SUBMENU:=disc
343 endef
344
345 define Package/swap-utils/description
346  contains: mkswap, swaplabel
347 endef
348
349 define Package/uuidd
350 $(call Package/util-linux/Default)
351   TITLE:=UUID generation daemon
352   DEPENDS:= +libuuid
353 endef
354
355 define Package/uuidd/description
356  The uuidd daemon is used by the UUID library to generate universally unique
357  identifiers (UUIDs), especially time-based UUIDs, in a secure and
358  guaranteed-unique fashion, even in the face of large numbers of threads
359  running on different CPUs trying to grab UUIDs.
360 endef
361
362 define Package/uuidgen
363 $(call Package/util-linux/Default)
364   TITLE:=create a new UUID value
365   DEPENDS:= +libuuid
366 endef
367
368 define Package/uuidgen/description
369  The uuidgen program creates (and prints) a new universally unique identifier
370  (UUID) using the libuuid library. The new UUID can reasonably be considered
371  unique among all UUIDs created on the local system, and among UUIDs created on
372  other systems in the past and in the future.
373 endef
374
375 define Package/wall
376 $(call Package/util-linux/Default)
377   TITLE:=send a message to everybody's terminal
378   SUBMENU=Terminal
379 endef
380
381 define Package/wall/description
382  wall sends a message to everybody logged in with their mesg permission
383  set to yes
384 endef
385
386 define Package/whereis
387 $(call Package/util-linux/Default)
388   TITLE:=locate the binary, source, and manual page files for a command
389 endef
390
391 define Package/whereis/description
392  whereis locates source/binary and manuals sections for specified files
393 endef
394
395 define Package/wipefs
396 $(call Package/util-linux/Default)
397   TITLE:=wipe a signature from a device
398   DEPENDS:= +libblkid
399   SUBMENU:=disc
400 endef
401
402 define Package/wipefs/description
403  wipefs can erase filesystem, raid or partition table signatures (magic
404  strings) from the specified device to make the signature invisible for
405  libblkid.
406 endef
407
408 define Package/libblkid/install
409         $(INSTALL_DIR) $(1)/usr/lib
410         $(CP) $(PKG_BUILD_DIR)/.libs/libblkid.so.* $(1)/usr/lib/
411 endef
412
413 define Package/libmount/install
414         $(INSTALL_DIR) $(1)/usr/lib
415         $(CP) $(PKG_BUILD_DIR)/.libs/libmount.so.* $(1)/usr/lib/
416 endef
417
418 define Package/libuuid/install
419         $(INSTALL_DIR) $(1)/usr/lib
420         $(CP) $(PKG_BUILD_DIR)/.libs/libuuid.so.* $(1)/usr/lib/
421 endef
422
423 define Package/agetty/install
424         $(INSTALL_DIR) $(1)/usr/sbin
425         $(INSTALL_BIN) $(PKG_BUILD_DIR)/agetty $(1)/usr/sbin/
426 endef
427
428 define Package/blkid/install
429         $(INSTALL_DIR) $(1)/usr/sbin
430         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/blkid $(1)/usr/sbin/
431 endef
432
433 define Package/cal/install
434         $(INSTALL_DIR) $(1)/usr/bin
435         $(INSTALL_BIN) $(PKG_BUILD_DIR)/cal $(1)/usr/bin/
436 endef
437
438 define Package/cfdisk/install
439         $(INSTALL_DIR) $(1)/usr/sbin
440         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/cfdisk $(1)/usr/sbin/
441 endef
442
443 define Package/dmesg/install
444         $(INSTALL_DIR) $(1)/usr/sbin
445         $(INSTALL_BIN) $(PKG_BUILD_DIR)/dmesg $(1)/usr/sbin/
446 endef
447
448 define Package/fdisk/install
449         $(INSTALL_DIR) $(1)/usr/sbin
450         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/fdisk $(1)/usr/sbin/
451 endef
452
453 define Package/findfs/install
454         $(INSTALL_DIR) $(1)/usr/sbin
455         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/findfs $(1)/usr/sbin/
456 endef
457
458 define Package/flock/install
459         $(INSTALL_DIR) $(1)/usr/bin
460         $(INSTALL_BIN) $(PKG_BUILD_DIR)/flock $(1)/usr/bin/
461 endef
462
463 define Package/getopt/install
464         $(INSTALL_DIR) $(1)/usr/bin
465         $(INSTALL_BIN) $(PKG_BUILD_DIR)/getopt $(1)/usr/bin/
466 endef
467
468 define Package/hwclock/install
469         $(INSTALL_DIR) $(1)/usr/sbin
470         $(INSTALL_BIN) $(PKG_BUILD_DIR)/hwclock $(1)/usr/sbin/
471 endef
472
473 define Package/logger/install
474         $(INSTALL_DIR) $(1)/usr/bin
475         $(INSTALL_BIN) $(PKG_BUILD_DIR)/logger $(1)/usr/bin/
476 endef
477
478 define Package/look/install
479         $(INSTALL_DIR) $(1)/usr/bin
480         $(INSTALL_BIN) $(PKG_BUILD_DIR)/look $(1)/usr/bin/
481 endef
482
483 define Package/losetup/install
484         $(INSTALL_DIR) $(1)/usr/sbin
485         $(INSTALL_BIN) $(PKG_BUILD_DIR)/losetup $(1)/usr/sbin/
486 endef
487
488 define Package/lsblk/install
489         $(INSTALL_DIR) $(1)/usr/bin
490         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/lsblk $(1)/usr/bin/
491 endef
492
493 define Package/mcookie/install
494         $(INSTALL_DIR) $(1)/usr/bin
495         $(INSTALL_BIN) $(PKG_BUILD_DIR)/mcookie $(1)/usr/bin/
496 endef
497
498 define Package/mount-utils/install
499         $(INSTALL_DIR) $(1)/usr/bin
500         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/{u,}mount $(1)/usr/bin/
501         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/mountpoint $(1)/usr/bin/
502         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/findmnt $(1)/usr/bin/
503 endef
504
505 define Package/namei/install
506         $(INSTALL_DIR) $(1)/usr/bin
507         $(INSTALL_BIN) $(PKG_BUILD_DIR)/namei $(1)/usr/bin/
508 endef
509
510 define Package/rename/install
511         $(INSTALL_DIR) $(1)/usr/bin
512         $(INSTALL_BIN) $(PKG_BUILD_DIR)/rename $(1)/usr/bin/
513 endef
514
515 define Package/partx-utils/install
516         $(INSTALL_DIR) $(1)/usr/sbin
517         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/partx $(1)/usr/sbin/
518         $(INSTALL_BIN) $(PKG_BUILD_DIR)/addpart $(1)/usr/sbin/
519         $(INSTALL_BIN) $(PKG_BUILD_DIR)/delpart $(1)/usr/sbin/
520 endef
521
522 define Package/script-utils/install
523         $(INSTALL_DIR) $(1)/usr/bin
524         $(INSTALL_BIN) $(PKG_BUILD_DIR)/script $(1)/usr/bin/
525         $(INSTALL_BIN) $(PKG_BUILD_DIR)/scriptreplay $(1)/usr/bin/
526 endef
527
528 define Package/setterm/install
529         $(INSTALL_DIR) $(1)/usr/bin
530         $(INSTALL_BIN) $(PKG_BUILD_DIR)/setterm $(1)/usr/bin/
531 endef
532
533 define Package/sfdisk/install
534         $(INSTALL_DIR) $(1)/usr/sbin
535         $(INSTALL_BIN) $(PKG_BUILD_DIR)/sfdisk $(1)/usr/sbin/
536 endef
537
538 define Package/swap-utils/install
539         $(INSTALL_DIR) $(1)/usr/sbin
540         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/mkswap $(1)/usr/sbin/
541         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/swaplabel $(1)/usr/sbin/
542 endef
543
544 define Package/uuidd/install
545         $(INSTALL_DIR) $(1)/usr/sbin
546         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/uuidd $(1)/usr/sbin/
547 endef
548
549 define Package/uuidgen/install
550         $(INSTALL_DIR) $(1)/usr/bin
551         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/uuidgen $(1)/usr/bin/
552 endef
553
554 define Package/wall/install
555         $(INSTALL_DIR) $(1)/usr/bin
556         $(INSTALL_BIN) $(PKG_BUILD_DIR)/wall $(1)/usr/bin/
557 endef
558
559 define Package/whereis/install
560         $(INSTALL_DIR) $(1)/usr/bin
561         $(INSTALL_BIN) $(PKG_BUILD_DIR)/whereis $(1)/usr/bin/
562 endef
563
564 define Package/wipefs/install
565         $(INSTALL_DIR) $(1)/usr/sbin
566         $(INSTALL_BIN) $(PKG_BUILD_DIR)/.libs/wipefs $(1)/usr/sbin/
567 endef
568
569 $(eval $(call BuildPackage,libblkid))
570 $(eval $(call BuildPackage,libmount))
571 $(eval $(call BuildPackage,libuuid))
572 $(eval $(call BuildPackage,agetty))
573 $(eval $(call BuildPackage,blkid))
574 $(eval $(call BuildPackage,cal))
575 $(eval $(call BuildPackage,cfdisk))
576 $(eval $(call BuildPackage,dmesg))
577 $(eval $(call BuildPackage,fdisk))
578 $(eval $(call BuildPackage,findfs))
579 $(eval $(call BuildPackage,flock))
580 $(eval $(call BuildPackage,getopt))
581 $(eval $(call BuildPackage,hwclock))
582 $(eval $(call BuildPackage,logger))
583 $(eval $(call BuildPackage,look))
584 $(eval $(call BuildPackage,losetup))
585 $(eval $(call BuildPackage,lsblk))
586 $(eval $(call BuildPackage,mcookie))
587 $(eval $(call BuildPackage,mount-utils))
588 $(eval $(call BuildPackage,namei))
589 $(eval $(call BuildPackage,rename))
590 $(eval $(call BuildPackage,partx-utils))
591 $(eval $(call BuildPackage,script-utils))
592 $(eval $(call BuildPackage,setterm))
593 $(eval $(call BuildPackage,sfdisk))
594 $(eval $(call BuildPackage,swap-utils))
595 $(eval $(call BuildPackage,uuidd))
596 $(eval $(call BuildPackage,uuidgen))
597 $(eval $(call BuildPackage,wall))
598 $(eval $(call BuildPackage,whereis))
599 $(eval $(call BuildPackage,wipefs))