home *** CD-ROM | disk | FTP | other *** search
/ ftp.qualcomm.com / 2014.06.ftp.qualcomm.com.tar / ftp.qualcomm.com / eudora / developers / emsapi / readme_carbon_emsapi.txt < prev    next >
Text File  |  2002-03-27  |  2KB  |  65 lines

  1. How to carbonize an EMSAPI plug-in
  2. ==================================
  3.  
  4. Update to latest SDK. Need latest version of emsapi-component.c and emsapi-mac.h
  5.  
  6. Create a carbon target cloned from the ppc target
  7. Switch to carbon target
  8. Remove InterfaceLib and any other OS stub libraries using project inspector
  9. Add CarbonLib stub library to carbon target
  10. Add the "MSL RuntimePPC.Lib" library to the carbon target if not already there.
  11.  
  12. Open carbon target settings
  13.     PPC Target
  14.         Change project type from Code Resource to Shared Library
  15.         Probably want to give it a different file name (xxx Carbon)
  16.         Set creator to your signature and type to thng
  17.     C/C++ Language
  18.         Prefix File: MacHeadersCarbon
  19.             If you are not using MacHeaders define the following:
  20.                 #define TARGET_API_MAC_CARBON 1
  21.     PPC Linker
  22.         If your entry point is a routine descriptor such as MainRD, change it
  23.         to the main function.
  24.             Main: main
  25. Save and close carbon target settings
  26.  
  27. Replace the 'thng' resource. An easy way to do this is to create a thngCarbon.r file
  28.     and add it in the project linking AFTER a resource file that may contain the 'thng'
  29.     resource for the 68K and PPC versions. It should contain the following:
  30.     
  31.     #define UseExtendedThingResource 1
  32.     #define thng_RezTemplateVersion 1
  33.     #include "Components.r"
  34.  
  35.     #define platformPowerPCNativeEntryPoint 5
  36.  
  37.     resource 'thng' (128)
  38.     {
  39.         'ecTL',    //    Note special 'ecTL' type for Carbon plugins
  40.         'UPlo',    //    Put in your signature here
  41.         'CSOm',
  42.         0,
  43.         0,
  44.         0,
  45.         0,
  46.         //    Make sure the following are correct
  47.         'STR ',128,
  48.         'STR ',129,
  49.         'ICON',128,
  50.         0x00030000,    //    Version goes here
  51.         componentHasMultiplePlatforms + componentDoAutoVersion,
  52.         128,
  53.         {
  54.             0,'cfrg',0,platformPowerPCNativeEntryPoint
  55.         }
  56.     };
  57.  
  58. Try to build and fix all carbon-related problems.
  59.  
  60.  
  61. Note:
  62. =====
  63. This will create a plug-in that works on OS X only. For OS 8/9, just use your current plug-ins.
  64. OS 8/9 carbon does not support components, but the 8/9 versions will work with Carbon Eudora.
  65.