Changeset 21891 for branches/gcc-kmk/src


Ignore:
Timestamp:
Dec 15, 2011, 12:50:15 PM (14 years ago)
Author:
dmik
Message:

Port MSCMS to GCC/kBuild.

Location:
branches/gcc-kmk/src
Files:
1 added
3 edited
1 moved

Legend:

Unmodified
Added
Removed
  • branches/gcc-kmk/src/Makefile.kmk

    r21890 r21891  
    5151include $(PATH_SUB_CURRENT)/imagehlp/Makefile.kmk
    5252include $(PATH_SUB_CURRENT)/msacm32/Makefile.kmk
     53include $(PATH_SUB_CURRENT)/mscms/Makefile.kmk
    5354
    5455include $(FILE_KBUILD_SUB_FOOTER)
  • branches/gcc-kmk/src/mscms/initterm.cpp

    r21842 r21891  
    1 /* $Id: initgdi32.cpp,v 1.16 2004/01/11 11:42:17 sandervl Exp $
     1/* $Id: initterm.cpp,v 1.17 2001/09/05 10:26:30 bird Exp $
    22 *
    3  * DLL entry point
     3 * MSCMS DLL entry point
    44 *
    55 * Copyright 1998 Sander van Leeuwen
    66 * Copyright 1998 Peter Fitzsimmons
    77 *
    8  *
    98 * Project Odin Software License can be found in LICENSE.TXT
    10  *
    119 */
    1210
    13 /*-------------------------------------------------------------*/
    14 /* INITERM.C -- Source for a custom dynamic link library       */
    15 /*              initialization and termination (_DLL_InitTerm) */
    16 /*              function.                                      */
    17 /*                                                             */
    18 /* When called to perform initialization, this sample function */
    19 /* gets storage for an array of integers, and initializes its  */
    20 /* elements with random integers.  At termination time, it     */
    21 /* frees the array.  Substitute your own special processing.   */
    22 /*-------------------------------------------------------------*/
    23 
    24 
    25 /* Include files */
    2611#define  INCL_DOSMODULEMGR
    2712#define  INCL_DOSPROCESS
     
    3823#include <initdll.h>
    3924
    40 extern "C" {
    41  //Win32 resource table (produced by wrc)
    42     //extern DWORD mscms_PEResTab;
    43     BOOL WINAPI mscmsDllMain(HINSTANCE hInst, DWORD fdwReason, PVOID pvReserved);
    44 }
     25//#define DBG_LOCALLOG    DBG_initterm
     26//#include "dbglocal.h"
     27
     28// Win32 resource table (produced by wrc)
     29//extern DWORD mscms_PEResTab;
    4530
    4631static HMODULE dllHandle = 0;
    4732
     33BOOL WINAPI mscmsDllMain(HINSTANCE hInst, DWORD fdwReason, PVOID pvReserved);
     34
    4835static BOOL WINAPI OdinLibMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID fImpLoad)
    4936{
    50    BOOL ret;
     37    BOOL ret;
    5138
    52    switch (fdwReason)
    53    {
    54    case DLL_PROCESS_ATTACH:
    55        return mscmsDllMain(hinstDLL, fdwReason, fImpLoad);
     39    switch (fdwReason)
     40    {
     41    case DLL_PROCESS_ATTACH:
     42        return mscmsDllMain(hinstDLL, fdwReason, fImpLoad);
    5643
    57    case DLL_THREAD_ATTACH:
    58    case DLL_THREAD_DETACH:
    59        return mscmsDllMain(hinstDLL, fdwReason, fImpLoad);
     44    case DLL_THREAD_ATTACH:
     45    case DLL_THREAD_DETACH:
     46        return mscmsDllMain(hinstDLL, fdwReason, fImpLoad);
    6047
    61    case DLL_PROCESS_DETACH:
    62        ret = mscmsDllMain(hinstDLL, fdwReason, fImpLoad);
    63        return ret;
    64    }
    65    return FALSE;
     48    case DLL_PROCESS_DETACH:
     49        ret = mscmsDllMain(hinstDLL, fdwReason, fImpLoad);
     50        return ret;
     51    }
     52    return FALSE;
    6653}
    6754
    68 /****************************************************************************/
    69 /* _DLL_InitTerm is the function that gets called by the operating system   */
    70 /* loader when it loads and frees this DLL for each process that accesses   */
    71 /* this DLL.  However, it only gets called the first time the DLL is loaded */
    72 /* and the last time it is freed for a particular process.  The system      */
    73 /* linkage convention MUST be used because the operating system loader is   */
    74 /* calling this function.                                                   */
    75 /****************************************************************************/
    76 ULONG APIENTRY inittermmscms(ULONG hModule, ULONG ulFlag)
     55ULONG SYSTEM DLL_InitMSCms(ULONG hModule)
    7756{
    78    size_t i;
    79    APIRET rc;
     57    if (!InitializeKernel32())
     58        return 0;
    8059
    81    /*-------------------------------------------------------------------------*/
    82    /* If ulFlag is zero then the DLL is being loaded so initialization should */
    83    /* be performed.  If ulFlag is 1 then the DLL is being freed so            */
    84    /* termination should be performed.                                        */
    85    /*-------------------------------------------------------------------------*/
     60    //CheckVersionFromHMOD(PE2LX_VERSION, hModule); /*PLF Wed  98-03-18 05:28:48*/
    8661
    87    switch (ulFlag) {
    88       case 0 :
     62    dllHandle = RegisterLxDll(hModule, OdinLibMain, NULL);
     63    if(dllHandle == 0)
     64        return -1;
    8965
    90          if (!InitializeKernel32())
    91              return 0;
     66    dprintf(("mscms init %s %s (%x)", __DATE__, __TIME__, DLL_InitMSCms));
    9267
    93          //CheckVersionFromHMOD(PE2LX_VERSION, hModule); /*PLF Wed  98-03-18 05:28:48*/
    94          dllHandle = RegisterLxDll(hModule, OdinLibMain, NULL);
    95          if(dllHandle == 0)
    96              return 0UL;
     68    return 0;
     69}
    9770
    98          dprintf(("mscms init %s %s (%x)", __DATE__, __TIME__, inittermmscms));
     71void SYSTEM DLL_TermMSCms(ULONG hModule)
     72{
     73    if (dllHandle)
     74       UnregisterLxDll(dllHandle);
     75}
    9976
    100          break;
    101       case 1 :
    102          if(dllHandle) {
    103              UnregisterLxDll(dllHandle);
    104          }
    105          break;
    106       default  :
    107          return 0UL;
    108    }
     77ULONG SYSTEM DLL_Init(ULONG hModule)
     78{
     79    if (DLL_InitDefault(hModule) == -1)
     80        return -1;
     81    return DLL_InitMSCms(hModule);
     82}
    10983
    110    /***********************************************************/
    111    /* A non-zero value must be returned to indicate success.  */
    112    /***********************************************************/
    113    return 1UL;
     84void SYSTEM DLL_Term(ULONG hModule)
     85{
     86    DLL_TermMSCms(hModule);
     87    DLL_TermDefault(hModule);
    11488}
    115 //******************************************************************************
    116 //******************************************************************************
  • branches/gcc-kmk/src/mscms/mscms.def

    r21311 r21891  
    55EXPORTS
    66
    7 AssociateColorProfileWithDeviceA = _AssociateColorProfileWithDeviceA@12 @1
    8 AssociateColorProfileWithDeviceW = _AssociateColorProfileWithDeviceW@12 @2
    9 CheckBitmapBits = _CheckBitmapBits@36 @3
    10 CheckColors = _CheckColors@20 @4
    11 CloseColorProfile = _CloseColorProfile@4 @5
    12 ConvertColorNameToIndex = _ConvertColorNameToIndex@16 @6
    13 ConvertIndexToColorName = _ConvertIndexToColorName@16 @7
    14 CreateColorTransformA = _CreateColorTransformA@16 @8
    15 CreateColorTransformW = _CreateColorTransformW@16 @9
    16 CreateDeviceLinkProfile = _CreateDeviceLinkProfile@28 @10
    17 CreateMultiProfileTransform = _CreateMultiProfileTransform@24 @11
    18 CreateProfileFromLogColorSpaceA = _CreateProfileFromLogColorSpaceA@8 @12
    19 CreateProfileFromLogColorSpaceW = _CreateProfileFromLogColorSpaceW@8 @13
    20 DeleteColorTransform = _DeleteColorTransform@4 @14
    21 DisassociateColorProfileFromDeviceA = _DisassociateColorProfileFromDeviceA@12 @15
    22 DisassociateColorProfileFromDeviceW = _DisassociateColorProfileFromDeviceW@12 @16
    23 EnumColorProfilesA = _EnumColorProfilesA@20 @17
    24 EnumColorProfilesW = _EnumColorProfilesW@20 @18
    25 GenerateCopyFilePaths = _GenerateCopyFilePaths@36 @19
    26 GetCMMInfo = _GetCMMInfo@8 @20
    27 GetColorDirectoryA = _GetColorDirectoryA@12 @21
    28 GetColorDirectoryW = _GetColorDirectoryW@12 @22
    29 GetColorProfileElement = _GetColorProfileElement@24 @23
    30 GetColorProfileElementTag = _GetColorProfileElementTag@12 @24
    31 GetColorProfileFromHandle = _GetColorProfileFromHandle@12 @25
    32 GetColorProfileHeader = _GetColorProfileHeader@8 @26
    33 GetCountColorProfileElements = _GetCountColorProfileElements@8 @27
    34 GetNamedProfileInfo = _GetNamedProfileInfo@8 @28
    35 GetPS2ColorRenderingDictionary = _GetPS2ColorRenderingDictionary@20 @29
    36 GetPS2ColorRenderingIntent = _GetPS2ColorRenderingIntent@16 @30
    37 GetPS2ColorSpaceArray = _GetPS2ColorSpaceArray@24 @31
    38 GetStandardColorSpaceProfileA = _GetStandardColorSpaceProfileA@16 @32
    39 GetStandardColorSpaceProfileW = _GetStandardColorSpaceProfileW@16 @33
    40 InstallColorProfileA = _InstallColorProfileA@8 @34
    41 InstallColorProfileW = _InstallColorProfileW@8 @35
     7AssociateColorProfileWithDeviceA = "_AssociateColorProfileWithDeviceA@12" @1
     8AssociateColorProfileWithDeviceW = "_AssociateColorProfileWithDeviceW@12" @2
     9CheckBitmapBits = "_CheckBitmapBits@36" @3
     10CheckColors = "_CheckColors@20" @4
     11CloseColorProfile = "_CloseColorProfile@4" @5
     12ConvertColorNameToIndex = "_ConvertColorNameToIndex@16" @6
     13ConvertIndexToColorName = "_ConvertIndexToColorName@16" @7
     14CreateColorTransformA = "_CreateColorTransformA@16" @8
     15CreateColorTransformW = "_CreateColorTransformW@16" @9
     16CreateDeviceLinkProfile = "_CreateDeviceLinkProfile@28" @10
     17CreateMultiProfileTransform = "_CreateMultiProfileTransform@24" @11
     18CreateProfileFromLogColorSpaceA = "_CreateProfileFromLogColorSpaceA@8" @12
     19CreateProfileFromLogColorSpaceW = "_CreateProfileFromLogColorSpaceW@8" @13
     20DeleteColorTransform = "_DeleteColorTransform@4" @14
     21DisassociateColorProfileFromDeviceA = "_DisassociateColorProfileFromDeviceA@12" @15
     22DisassociateColorProfileFromDeviceW = "_DisassociateColorProfileFromDeviceW@12" @16
     23EnumColorProfilesA = "_EnumColorProfilesA@20" @17
     24EnumColorProfilesW = "_EnumColorProfilesW@20" @18
     25GenerateCopyFilePaths = "_GenerateCopyFilePaths@36" @19
     26GetCMMInfo = "_GetCMMInfo@8" @20
     27GetColorDirectoryA = "_GetColorDirectoryA@12" @21
     28GetColorDirectoryW = "_GetColorDirectoryW@12" @22
     29GetColorProfileElement = "_GetColorProfileElement@24" @23
     30GetColorProfileElementTag = "_GetColorProfileElementTag@12" @24
     31GetColorProfileFromHandle = "_GetColorProfileFromHandle@12" @25
     32GetColorProfileHeader = "_GetColorProfileHeader@8" @26
     33GetCountColorProfileElements = "_GetCountColorProfileElements@8" @27
     34GetNamedProfileInfo = "_GetNamedProfileInfo@8" @28
     35GetPS2ColorRenderingDictionary = "_GetPS2ColorRenderingDictionary@20" @29
     36GetPS2ColorRenderingIntent = "_GetPS2ColorRenderingIntent@16" @30
     37GetPS2ColorSpaceArray = "_GetPS2ColorSpaceArray@24" @31
     38GetStandardColorSpaceProfileA = "_GetStandardColorSpaceProfileA@16" @32
     39GetStandardColorSpaceProfileW = "_GetStandardColorSpaceProfileW@16" @33
     40InstallColorProfileA = "_InstallColorProfileA@8" @34
     41InstallColorProfileW = "_InstallColorProfileW@8" @35
    4242;InternalGetDeviceConfig = _InternalGetDeviceConfig @36
    4343;InternalGetPS2CSAFromLCS = _InternalGetPS2CSAFromLCS @37
     
    4646;InternalGetPS2PreviewCRD = _InternalGetPS2PreviewCRD @40
    4747;InternalSetDeviceConfig = _InternalSetDeviceConfig @41
    48 IsColorProfileTagPresent = _IsColorProfileTagPresent@12 @42
    49 IsColorProfileValid = _IsColorProfileValid@8 @43
    50 OpenColorProfileA = _OpenColorProfileA@16 @44
    51 OpenColorProfileW = _OpenColorProfileW@16 @45
    52 RegisterCMMA = _RegisterCMMA@12 @46
    53 RegisterCMMW = _RegisterCMMW@12 @47
    54 SelectCMM = _SelectCMM@4 @48
    55 SetColorProfileElement = _SetColorProfileElement@20 @49
    56 SetColorProfileElementReference = _SetColorProfileElementReference@12 @50
    57 SetColorProfileElementSize = _SetColorProfileElementSize@12 @51
    58 SetColorProfileHeader = _SetColorProfileHeader@8 @52
    59 SetStandardColorSpaceProfileA = _SetStandardColorSpaceProfileA@12 @53
    60 SetStandardColorSpaceProfileW = _SetStandardColorSpaceProfileW@12 @54
    61 SpoolerCopyFileEvent = _SpoolerCopyFileEvent@12 @55
    62 TranslateBitmapBits = _TranslateBitmapBits@44 @56
    63 TranslateColors = _TranslateColors@24 @57
    64 UninstallColorProfileA = _UninstallColorProfileA@12 @58
    65 UninstallColorProfileW = _UninstallColorProfileW@12 @59
    66 UnregisterCMMA = _UnregisterCMMA@8 @60
    67 UnregisterCMMW = _UnregisterCMMW@8 @61
     48IsColorProfileTagPresent = "_IsColorProfileTagPresent@12" @42
     49IsColorProfileValid = "_IsColorProfileValid@8" @43
     50OpenColorProfileA = "_OpenColorProfileA@16" @44
     51OpenColorProfileW = "_OpenColorProfileW@16" @45
     52RegisterCMMA = "_RegisterCMMA@12" @46
     53RegisterCMMW = "_RegisterCMMW@12" @47
     54SelectCMM = "_SelectCMM@4" @48
     55SetColorProfileElement = "_SetColorProfileElement@20" @49
     56SetColorProfileElementReference = "_SetColorProfileElementReference@12" @50
     57SetColorProfileElementSize = "_SetColorProfileElementSize@12" @51
     58SetColorProfileHeader = "_SetColorProfileHeader@8" @52
     59SetStandardColorSpaceProfileA = "_SetStandardColorSpaceProfileA@12" @53
     60SetStandardColorSpaceProfileW = "_SetStandardColorSpaceProfileW@12" @54
     61SpoolerCopyFileEvent = "_SpoolerCopyFileEvent@12" @55
     62TranslateBitmapBits = "_TranslateBitmapBits@44" @56
     63TranslateColors = "_TranslateColors@24" @57
     64UninstallColorProfileA = "_UninstallColorProfileA@12" @58
     65UninstallColorProfileW = "_UninstallColorProfileW@12" @59
     66UnregisterCMMA = "_UnregisterCMMA@8" @60
     67UnregisterCMMW = "_UnregisterCMMW@8" @61
  • branches/gcc-kmk/src/mscms/profile.c

    r21311 r21891  
    1919 */
    2020
     21#include <stdarg.h>
     22#include <string.h>
     23#include <memory.h>
     24
    2125#include "config.h"
    2226#include "wine/debug.h"
    2327#include "wine/unicode.h"
    24 
    25 #include <stdarg.h>
    2628
    2729#include "windef.h"
     
    5860}
    5961
    60 const char *MSCMS_dbgstr_tag( DWORD tag )
    61 {
    62     return sprintf( "'%c%c%c%c'",
     62static const char *MSCMS_dbgstr_tag( DWORD tag )
     63{
     64    static char buf[5];
     65    sprintf( buf, "'%c%c%c%c'",
    6366        (char)(tag >> 24), (char)(tag >> 16), (char)(tag >> 8), (char)(tag) );
     67    return buf;
    6468}
    6569
Note: See TracChangeset for help on using the changeset viewer.