summaryrefslogtreecommitdiffstats
path: root/BeOS/ar-1.1/mwlib.h
diff options
context:
space:
mode:
Diffstat (limited to 'BeOS/ar-1.1/mwlib.h')
-rw-r--r--BeOS/ar-1.1/mwlib.h118
1 files changed, 0 insertions, 118 deletions
diff --git a/BeOS/ar-1.1/mwlib.h b/BeOS/ar-1.1/mwlib.h
deleted file mode 100644
index 67af325..0000000
--- a/BeOS/ar-1.1/mwlib.h
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
-** mwlib.h - POSIX 1003.2 "ar" command
-**
-** $Id$
-**
-** This isn't a pure POSIX 1003.2 ar; it only manipulates Metrowerks
-** Library files, not general-purpose POSIX 1003.2 format archives.
-**
-** Dec. 14, 1997 Chris Herborth (chrish@qnx.com)
-**
-** This code is donated to the PUBLIC DOMAIN. You can use, abuse, modify,
-** redistribute, steal, or otherwise manipulate this code. No restrictions
-** at all. If you laugh at this code, you can't use it.
-**
-** This "ar" was implemented using IEEE Std 1003.2-1992 as the basis for
-** the interface, and Metrowerk's published docs detailing their library
-** format. Look inside for clues about how reality differs from MW's
-** documentation on BeOS...
-*/
-
-#include <support/SupportDefs.h>
-#include <time.h>
-
-/* ----------------------------------------------------------------------
-** Constants
-**
-*/
-#define MWLIB_MAGIC_WORD 'MWOB'
-#define MWLIB_MAGIC_PROC 'PPC '
-
-/* ----------------------------------------------------------------------
-** Structures
-**
-** This is based on the "Metrowerks CodeWarrior Library Reference
-** Specification", which isn't 100% accurate for BeOS.
-*/
-
-typedef struct MWLibHeader {
- uint32 magicword;
- uint32 magicproc;
- uint32 magicflags;
- uint32 version;
-
- uint32 code_size;
- uint32 data_size;
-
- uint32 num_objects;
-} MWLibHeader;
-
-typedef struct MWLibFile {
- time_t m_time;
-
- uint32 off_filename;
- uint32 off_fullpath;
- uint32 off_object;
- uint32 object_size;
-} MWLibFile;
-
-typedef struct MWLib {
- MWLibHeader header;
-
- MWLibFile *files;
-
- char **names;
-
- char **data;
-} MWLib;
-
-/* This bears no resemblance to what's in the Metrowerks docs.
-**
-** Note that this is incomplete; this is all the info I needed for
-** ar though.
-*/
-typedef struct MWObject {
- uint32 magic_word; /* 'MWOB' */
- uint32 arch; /* 'PPC '; this isn't in the docs */
- uint32 version;
- uint32 flags;
-
- uint32 code_size;
- uint32 data_size;
-} MWObject;
-
-/* ----------------------------------------------------------------------
-** Function prototypes
-**
-** load_MW_lib() - load a Metrowerks library
-**
-** Returns:
-** B_OK - all is well
-** B_FILE_NOT_FOUND - can't open the given file
-** B_IO_ERROR - can't read from the given file
-** B_BAD_VALUE - invalid magic word in the file
-** B_MISMATCHED_VALUES - invalid processor value (ie, not a PowerPC lib),
-** or the magicflags member is not 0, or the file
-** version number isn't 1.
-** B_NO_MEMORY - unable to allocate memory while loading the lib
-**
-** write_MW_lib() - write a Metrowerks library
-**
-** Returns:
-** B_OK - all is well
-**
-** write_MW_lib() - write a Metrowerks library file
-**
-** Returns:
-** B_OK - all is well; doesn't necessarily mean the file was written
-** properly, just that you didn't lose any data
-** B_NO_MEMORY - unable to allocate offset buffers
-** B_ERROR - problem with backup file (can't rename existing file)
-**
-** Note:
-** If you use this in a long-lived program, it leaks memory; the MWLib
-** contents are never free()'d.
-*/
-status_t load_MW_lib( MWLib *lib, const char *filename );
-status_t write_MW_lib( MWLib *lib, const char *filename );
-void setfiletype( const char *filename, const char *type );