208 lines
4.5 KiB
C
208 lines
4.5 KiB
C
|
/* tailor.h -- target dependent definitions
|
||
|
* Copyright (C) 1992-1993 Jean-loup Gailly.
|
||
|
* This is free software; you can redistribute it and/or modify it under the
|
||
|
* terms of the GNU General Public License, see the file COPYING.
|
||
|
*/
|
||
|
|
||
|
/* The target dependent definitions should be defined here only.
|
||
|
* The target dependent functions should be defined in tailor.c.
|
||
|
*/
|
||
|
|
||
|
/* $Id: tailor.h,v 1.1 1993/04/10 15:56:14 cgd Exp $ */
|
||
|
|
||
|
#if defined(__MSDOS__) && !defined(MSDOS)
|
||
|
# define MSDOS
|
||
|
#endif
|
||
|
|
||
|
#ifdef MSDOS
|
||
|
# ifdef __GNUC__
|
||
|
/* DJGPP version 1.09+ on MS-DOS.
|
||
|
* The DJGPP 1.09 stat() function must be upgraded before gzip will
|
||
|
* fully work.
|
||
|
* No need for DIRENT, since <unistd.h> defines POSIX_SOURCE which
|
||
|
* implies DIRENT.
|
||
|
*/
|
||
|
# define near
|
||
|
# else
|
||
|
# define MAXSEG_64K
|
||
|
# ifdef __TURBOC__
|
||
|
# define NO_UTIME
|
||
|
# else /* MSC */
|
||
|
# define HAVE_SYS_UTIME_H
|
||
|
# define NO_UTIME_H
|
||
|
# endif
|
||
|
# endif
|
||
|
# define PATH_SEP2 '\\'
|
||
|
# define PATH_SEP3 ':'
|
||
|
# define MAX_PATH_LEN 128
|
||
|
# define NO_MULTIPLE_DOTS
|
||
|
# define MAX_EXT_CHARS 3
|
||
|
# define Z_SUFFIX "z"
|
||
|
# define NO_CHOWN
|
||
|
# define PROTO
|
||
|
# define STDC_HEADERS
|
||
|
# define NO_SIZE_CHECK
|
||
|
# define casemap(c) tolow(c) /* Force file names to lower case */
|
||
|
# include <io.h>
|
||
|
# define OS_CODE 0x00
|
||
|
# define SET_BINARY_MODE(fd) setmode(fd, O_BINARY)
|
||
|
# if !defined(NO_ASM) && !defined(ASMV)
|
||
|
# define ASMV
|
||
|
# endif
|
||
|
#else
|
||
|
# define near
|
||
|
#endif
|
||
|
|
||
|
#ifdef OS2
|
||
|
# define PATH_SEP2 '\\'
|
||
|
# define PATH_SEP3 ':'
|
||
|
# define MAX_PATH_LEN 260
|
||
|
# ifdef OS2FAT
|
||
|
# define NO_MULTIPLE_DOTS
|
||
|
# define MAX_EXT_CHARS 3
|
||
|
# define Z_SUFFIX "z"
|
||
|
# endif
|
||
|
# define NO_CHOWN
|
||
|
# define PROTO
|
||
|
# define STDC_HEADERS
|
||
|
# define HAVE_SYS_UTIME_H
|
||
|
# define NO_UTIME_H
|
||
|
# define DIRENT
|
||
|
# define casemap(c) tolow(c)
|
||
|
# include <io.h>
|
||
|
# define OS_CODE 0x06
|
||
|
# define SET_BINARY_MODE(fd) setmode(fd, O_BINARY)
|
||
|
#endif
|
||
|
|
||
|
#ifdef __EMX__
|
||
|
# define EXPAND(argc,argv) {_response(&argc, &argv); _wildcard(&argc, &argv);}
|
||
|
#endif
|
||
|
|
||
|
#ifndef MAXSEG_64K
|
||
|
# define fcalloc(items,size) malloc((unsigned)(items)*(unsigned)(size))
|
||
|
# define fcfree(ptr) free(ptr)
|
||
|
#else
|
||
|
# ifdef __TURBOC__
|
||
|
# include <alloc.h>
|
||
|
# define DYN_ALLOC
|
||
|
/* Turbo C 2.0 does not accept static allocations of large arrays */
|
||
|
void * fcalloc (unsigned items, unsigned size);
|
||
|
void fcfree (void *ptr);
|
||
|
# else /* MSC */
|
||
|
# include <malloc.h>
|
||
|
# define fcalloc(nitems,itemsize) halloc((long)(nitems),(itemsize))
|
||
|
# define fcfree(ptr) hfree(ptr)
|
||
|
# endif
|
||
|
#endif
|
||
|
|
||
|
#if defined(VAXC) || defined(VMS)
|
||
|
# define PATH_SEP ']'
|
||
|
# define PATH_SEP2 ':'
|
||
|
# define SUFFIX_SEP ';'
|
||
|
# define NO_MULTIPLE_DOTS
|
||
|
# define Z_SUFFIX "-z"
|
||
|
# define RECORD_IO 1
|
||
|
# define casemap(c) tolow(c)
|
||
|
# define OS_CODE 0x02
|
||
|
# define OPTIONS_VAR "GZIP_OPT"
|
||
|
# define STDC_HEADERS
|
||
|
# define NO_UTIME
|
||
|
# include <file.h>
|
||
|
# ifdef VAXC
|
||
|
# define NO_FCNTL_H
|
||
|
# define unlink delete
|
||
|
# include <unixio.h>
|
||
|
# endif
|
||
|
#endif
|
||
|
|
||
|
#ifdef AMIGA
|
||
|
# define PATH_SEP2 ':'
|
||
|
# define STDC_HEADERS
|
||
|
# define casemap(c) tolow(c) /* Force file names to lower case */
|
||
|
# define OS_CODE 0x01
|
||
|
# define ASMV
|
||
|
# ifdef __GNUC__
|
||
|
# define DIRENT
|
||
|
# define HAVE_UNISTD_H
|
||
|
# define RETSIGTYPE int
|
||
|
# else /* SASC */
|
||
|
# define NO_STDIN_FSTAT
|
||
|
# define SYSDIR
|
||
|
# define NO_SYMLINK
|
||
|
# define NO_CHOWN
|
||
|
# define NO_FCNTL_H
|
||
|
# include <fcntl.h> /* for read() and write() */
|
||
|
# define direct dirent
|
||
|
extern void _expand_args(int *argc, char ***argv);
|
||
|
# define EXPAND(argc,argv) _expand_args(&argc,&argv);
|
||
|
# endif
|
||
|
#endif
|
||
|
|
||
|
#if defined(ATARI) || defined(atarist)
|
||
|
# ifndef STDC_HEADERS
|
||
|
# define STDC_HEADERS
|
||
|
# define HAVE_UNISTD_H
|
||
|
# define DIRENT
|
||
|
# endif
|
||
|
# define ASMV
|
||
|
# define OS_CODE 0x05
|
||
|
# ifdef TOSFS
|
||
|
# define NO_SYMLINK
|
||
|
# define NO_MULTIPLE_DOTS
|
||
|
# define MAX_EXT_CHARS 3
|
||
|
# define Z_SUFFIX "z"
|
||
|
# define NO_CHOWN
|
||
|
# endif
|
||
|
#endif
|
||
|
|
||
|
#ifdef MACOS
|
||
|
# define OS_CODE 0x07
|
||
|
#endif
|
||
|
|
||
|
#ifdef WIN32
|
||
|
# define OS_CODE 0x0b
|
||
|
#endif
|
||
|
|
||
|
#ifdef TOPS20
|
||
|
# define OS_CODE 0x0a
|
||
|
#endif
|
||
|
|
||
|
#ifndef unix
|
||
|
# define NO_PTY /* no pseudo ttys */
|
||
|
#endif
|
||
|
|
||
|
/* Common defaults */
|
||
|
|
||
|
#ifndef OS_CODE
|
||
|
# define OS_CODE 0x03 /* assume Unix */
|
||
|
#endif
|
||
|
|
||
|
#ifndef PATH_SEP
|
||
|
# define PATH_SEP '/'
|
||
|
#endif
|
||
|
|
||
|
#ifndef casemap
|
||
|
# define casemap(c) (c)
|
||
|
#endif
|
||
|
|
||
|
#ifndef OPTIONS_VAR
|
||
|
# define OPTIONS_VAR "GZIP"
|
||
|
#endif
|
||
|
|
||
|
#ifndef Z_SUFFIX
|
||
|
# define Z_SUFFIX ".z"
|
||
|
#endif
|
||
|
#define Z_LEN strlen(Z_SUFFIX)
|
||
|
|
||
|
#ifndef EXPAND
|
||
|
# define EXPAND(argc,argv)
|
||
|
#endif
|
||
|
|
||
|
#ifndef RECORD_IO
|
||
|
# define RECORD_IO 0
|
||
|
#endif
|
||
|
|
||
|
#ifndef SET_BINARY_MODE
|
||
|
# define SET_BINARY_MODE(fd)
|
||
|
#endif
|