home *** CD-ROM | disk | FTP | other *** search
- Notes on compiling DeskLib
- ==========================
-
- Some of the sub-libraries need to include main DeskLib .h files. They expect
- the System Variable DeskLib$Path to be set up with the full pathname of the
- main desklib directory, as in:
-
- Set DeskLib$Path ADFS::4.$.C_Work.DeskLib.
-
- (The fullstop at the end is vital)
- This is correctly set up if the filer has 'seen' the "!DeskLib" application
-
- This should be used in your programs as in:
- #include "DeskLib:Icon.h"
-
- When linking, you can use "DeskLib:o.DeskLib"
- However, !DeskLib also adds itself onto the end of C$Path, so C:o.DeskLib
- will suffice.
-
- ---
-
- In every subdirectory of desklib that can be "made", there is a makefile
-
- This can be modified slightly to make just that section of the library as a
- seperate library file, if you don't need all of the desklib functions. This
- is done using 'libfile'. WimpSWIs already uses this to produce a secondary
- library file (so to use WIMP swis you either include DeskLib OR WimpLib)
-
- To make any portion of DeskLib, use amu on the MakeFile as normal.
- Note that these makefiles probably don't work with !Make, but does anybody
- really like !Make enough to use it anyway? Use !Edit... it's easier and
- quicker (oh, and amu takes much!! less memory than !Make).
-
- ---
-
- If you do not have the Acorn assembler, then be very careful not to delete
- any of the precompiled .o files, as you will not be able to re-make them
- without the assembler. If someone can be bothered, a TLA-compatible version
- of assembler libraries may be made available in the future.
-
- All C portions of the library may be supplied as source only.
- The final DeskLib library is also provided so you can start using it without
- having to spend 20 minutes (or 37 seconds for A5000 owners ;-) compiling first!
- And as well as this, the WIMP SWI interface is supplied as a stand-alone
- library (in !DeskLib.o.WimpLib - use the name C:o.WimpLib)
-
- Note that DeskLib relies on the directory structure as supplied: If you
- move (for example) either the !TestApp or WimpSWIs directories, then they
- (and other things) may fail to compile, as the source/libraries referenced
- by these things will not be available to the rest of the library.
- However, these dependencies are only caused by the layout of the makefiles,
- so if you wish to move stuff around, alter the MakeFiles to suit.
-
- ---
-
- The directory structure of DeskLib is as follows:
-
- DeskLib
- |
- |________ !DeskLib DeskLib compile-time resources
- | This contains the header (.h) files, as well as the
- | complete DeskLib library file. This is all that you NEED
- | to have in an easy to reach place for compiling using
- | DeskLib. (See its !Help for more details)
- |
- |________ Docs Documentation files
- | |
- | |________ ModuleNote Extra notes (where necessary) on various
- | | DeskLib code modules
- | |
- | |________ QuickRefs Quick reference files/charts to make
- | | using DeskLib code easier.
- | |
- | |________ Blanks Blank makefiles, headers, etc.
- |
- |________ Examples
- | |
- | |________ !TestApp Test/Example application for DeskLib.
- | | Full sources are included within.
- | |
- | |________ ? Other examples of DeskLib usage
- |
- |________ OtherSrc Repository for any general source files that are not
- | included in the DeskLib library file. These are for
- | you to cut and paste into your own code in most cases
- | (or in the case of Error.c for you to compile in
- | yourself as you will most likely want more control of
- | how errors are reported)
- |
- |________ Libraries
- |________ !MakeDLib An obey file that MAKEs each part of
- | DeskLib, and then compiles the DeskLib
- | Library
- |
- |________ !Objects This is a 'via' file of all the library
- | objects for LibFile to include into DeskLib
- | (so don't delete it!)
- |
- |________ Clean An obey file that wipes all of the .o
- | files (except those that were assembled,
- | as some users may not have the assembler
- | as well as the C compiler.
- |
- |________ ? Each subdirectory in here contains the
- source and makefile for a subset of the
- DeskLib library.
-
- To completely make DeskLib, simply open the 'Libraries' directory and
- double click on the obey file !MakeDLib.
-
- To make the Test Application, change directory into the application directory
- and type 'amu'.
-