Annotation of embedaddon/expat/amiga/launch.c, revision 1.1.1.2

1.1       misho       1: /*
1.1.1.2 ! misho       2: ** Copyright (c) 2001-2009 Expat maintainers.
1.1       misho       3: **
                      4: ** Permission is hereby granted, free of charge, to any person obtaining
                      5: ** a copy of this software and associated documentation files (the
                      6: ** "Software"), to deal in the Software without restriction, including
                      7: ** without limitation the rights to use, copy, modify, merge, publish,
                      8: ** distribute, sublicense, and/or sell copies of the Software, and to
                      9: ** permit persons to whom the Software is furnished to do so, subject to
                     10: ** the following conditions:
1.1.1.2 ! misho      11: **
1.1       misho      12: ** The above copyright notice and this permission notice shall be included
                     13: ** in all copies or substantial portions of the Software.
1.1.1.2 ! misho      14: **
1.1       misho      15: ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
                     16: ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
                     17: ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
                     18: ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
                     19: ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
                     20: ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
                     21: ** SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
                     22: */
                     23: 
1.1.1.2 ! misho      24: #ifdef __USE_INLINE__
        !            25: #undef __USE_INLINE__
        !            26: #endif
        !            27: 
1.1       misho      28: #include <stdlib.h>
                     29: #include <proto/exec.h>
                     30: 
                     31: struct Library* ExpatBase = 0;
                     32: struct ExpatIFace* IExpat = 0;
                     33: 
                     34: 
                     35: void setup() __attribute__((constructor));
                     36: void cleanup() __attribute__((destructor));
                     37: 
                     38: 
                     39: void setup()
                     40: {
1.1.1.2 ! misho      41:        ExpatBase = IExec->OpenLibrary("expat.library", 53);
        !            42:        IExpat = (struct ExpatIFace*)IExec->GetInterface(ExpatBase, "main", 1, NULL);
        !            43: 
1.1       misho      44:        if ( IExpat == 0 )  {
1.1.1.2 ! misho      45:                IExec->DebugPrintF("Can't open expat.library\n");
1.1       misho      46:        }
                     47: }
                     48: 
                     49: 
                     50: void cleanup()
                     51: {
1.1.1.2 ! misho      52:        IExec->DropInterface((struct Interface*)IExpat);
        !            53:        IExpat = 0;
1.1       misho      54: 
1.1.1.2 ! misho      55:        IExec->CloseLibrary(ExpatBase);
        !            56:        ExpatBase = 0;
1.1       misho      57: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>