freebsd-nq/usr.sbin/sysinstall/dist.h

85 lines
2.4 KiB
C
Raw Normal View History

1999-08-28 01:35:59 +00:00
/* $FreeBSD$ */
1999-04-21 07:42:02 +00:00
#ifndef _DIST_H_INCLUDE
#define _DIST_H_INCLUDE
/* Bitfields for distributions - hope we never have more than 32! :-) */
#define DIST_BASE 0x00001
#define DIST_GAMES 0x00002
#define DIST_MANPAGES 0x00004
#define DIST_PROFLIBS 0x00008
#define DIST_DICT 0x00010
#define DIST_SRC 0x00020
#define DIST_DOC 0x00040
#define DIST_INFO 0x00080
#ifdef __i386__ /* only applicable on x86 */
#define DIST_COMPAT1X 0x00100
#define DIST_COMPAT20 0x00200
#define DIST_COMPAT21 0x00400
#define DIST_COMPAT22 0x00800
#define DIST_COMPAT3X 0x01000
#endif
#if defined(__i386__) || defined(__alpha__)
#define DIST_COMPAT4X 0x02000
#endif
#define DIST_XF86 0x04000
#define DIST_CATPAGES 0x10000
#define DIST_PORTS 0x20000
#define DIST_LOCAL 0x40000
#define DIST_PERL 0x80000
#define DIST_ALL 0xFFFFF
/* Subtypes for SRC distribution */
#define DIST_SRC_BASE 0x00001
#define DIST_SRC_CONTRIB 0x00002
#define DIST_SRC_GNU 0x00004
#define DIST_SRC_ETC 0x00008
#define DIST_SRC_GAMES 0x00010
#define DIST_SRC_INCLUDE 0x00020
#define DIST_SRC_LIB 0x00040
#define DIST_SRC_LIBEXEC 0x00080
#define DIST_SRC_TOOLS 0x00100
#define DIST_SRC_RELEASE 0x00200
#define DIST_SRC_SBIN 0x00400
#define DIST_SRC_SHARE 0x00800
#define DIST_SRC_SYS 0x01000
#define DIST_SRC_UBIN 0x02000
#define DIST_SRC_USBIN 0x04000
#define DIST_SRC_BIN 0x08000
#define DIST_SRC_SCRYPTO 0x10000
#define DIST_SRC_SSECURE 0x20000
#define DIST_SRC_SKERBEROS5 0x40000
#define DIST_SRC_ALL 0x7FFFF
- Rename installFixupBin to installFixupBase to finish up the 'bin' to 'base' dist rename. - Rework struct dist to allow for different types of dists. There are currently three types of dists: DT_TARBALL, the traditonal gzipped and split tar file; DT_PACKAGE, a package; and DT_SUBDIST, a meta-dist in the tree that has its own array of dists as its contents. For example, the 'base' dist is a DT_TARBALL dist, the 'perl' dist is a DT_PACKAGE dist, and the 'src' dist is a DT_SUBDIST dist with its own dist table that contains 'sbase', 'ssys', etc. - Add helper macros for defining array entries for the different types of dists to try and make the statically defined dist table in dist.c more readable. - Split the logic to deal with a DT_TARBALL dist out of distExtract() and into its own distExtractTarball() function. distExtract() now calls other functions to extract each dist. - Tweak the percentage complete calculation in distExtractTarball() to do the multiply prior to the divide so it doesn't have to use floating point. - Axe the installPackage() function along with the special handling for the perl and XFree86 dists in distExtractAll() since distExtract() handles package dists directly now. - Add back in subdists for the X packages based on the split up packages that XFree86-4 uses that as closely map to the X dists we used with X 3.3.x. - Lots of things like distSetX() and the X dist masks are no longer #ifndef X_AS_PKG since we use them in both cases now. - Make the entire installFixupXFree() function #ifndef X_AS_PKG, we only call it in that case anyways, and it's not suitable for the X_AS_PKG case. - Add in X dist menus for the X_AS_PKG case. Approved by: re
2003-01-17 19:05:32 +00:00
/* Subtypes for XFree86 packages */
#define DIST_XF86_CLIENTS 0x0001
#define DIST_XF86_DOC 0x0002
#define DIST_XF86_LIB 0x0004
#define DIST_XF86_MAN 0x0008
#define DIST_XF86_PROG 0x0010
#define DIST_XF86_MISC_ALL 0x001F
#define DIST_XF86_SERVER 0x0020
#define DIST_XF86_SERVER_FB 0x0001
#define DIST_XF86_SERVER_NEST 0x0002
#define DIST_XF86_SERVER_PRINT 0x0004
#define DIST_XF86_SERVER_VFB 0x0008
#define DIST_XF86_SERVER_ALL 0x000F
#define DIST_XF86_FONTS 0x0040
#define DIST_XF86_FONTS_75 0x0001
#define DIST_XF86_FONTS_100 0x0002
#define DIST_XF86_FONTS_CYR 0x0004
#define DIST_XF86_FONTS_SCALE 0x0008
#define DIST_XF86_FONTS_BITMAPS 0x0010
#define DIST_XF86_FONTS_SERVER 0x0020
#define DIST_XF86_FONTS_ALL 0x003F
#define DIST_XF86_ALL 0x007F
/* Canned distribution sets */
#define _DIST_USER \
( DIST_BASE | DIST_DOC | DIST_MANPAGES | DIST_DICT | DIST_PERL )
#define _DIST_DEVELOPER \
( _DIST_USER | DIST_PROFLIBS | DIST_INFO | DIST_SRC )
#endif /* _DIST_H_INCLUDE */