]>
git.saurik.com Git - apple/icu.git/blob - icuSources/tools/pkgdata/makefile.h
1 /**************************************************************************
3 * Copyright (C) 2000-2005, International Business Machines
4 * Corporation and others. All Rights Reserved.
6 ***************************************************************************
7 * file name: makefile.h
8 * encoding: ANSI X3.4 (1968)
9 * tab size: 8 (not used)
12 * created on: 2000may17
13 * created by: Steven \u24C7 Loomis
15 * definition for code to create a makefile.
16 * implementation is OS dependent (i.e. gmake.c, nmake.c, .. )
23 #include "unicode/utypes.h"
27 /* Write any setup/initialization stuff */
29 pkg_mak_writeHeader(FileStream
*f
, const UPKGOptions
*o
);
31 /* Write a stanza in the makefile, with specified "target: parents... \n\n\tcommands" [etc] */
33 pkg_mak_writeStanza(FileStream
*f
, const UPKGOptions
*o
,
38 /* write any cleanup/post stuff */
40 pkg_mak_writeFooter(FileStream
*f
, const UPKGOptions
*o
);
44 #ifdef U_MAKE_IS_NMAKE
45 extern void pkg_mode_windows(UPKGOptions
*o
, FileStream
*makefile
, UErrorCode
*status
);
46 #else /*#ifdef U_MAKE_IS_NMAKE*/
48 * Write stanzas for generating .o (and .c) files for each data file in 'o->filePaths'.
49 * @param o Package options struct
50 * @param makefile Current makefile being written
51 * @param objects On output, list of object files
52 * @param objSuffix Suffix of object files including dot, typically OBJ_SUFFIX or ".o" or ".obj"
55 pkg_mak_writeObjRules(UPKGOptions
*o
, FileStream
*makefile
, CharList
**objects
, const char* objSuffix
);
56 #ifdef UDATA_SO_SUFFIX
57 extern void pkg_mode_dll(UPKGOptions
* o
, FileStream
*stream
, UErrorCode
*status
);
58 extern void pkg_mode_static(UPKGOptions
* o
, FileStream
*stream
, UErrorCode
*status
);
59 #endif /*#ifdef UDATA_SO_SUFFIX*/
60 extern void pkg_mode_common(UPKGOptions
* o
, FileStream
*stream
, UErrorCode
*status
);
61 #endif /*#ifdef U_MAKE_IS_NMAKE*/
63 extern void pkg_mode_files(UPKGOptions
* o
, FileStream
*stream
, UErrorCode
*status
);
67 pkg_mak_writeAssemblyHeader(FileStream
*f
, const UPKGOptions
*o
);
69 pkg_mak_writeAssemblyFooter(FileStream
*f
, const UPKGOptions
*o
);