[Video-dev] RE: [Client-dev] CR : Source changes needed by Symbian build system
Milko Boic milko at real.comok - thanks for clarification Milko At 12:16 PM 7/18/2006, Darrin.Mann at nokia.com wrote: >When the ENTRYPOINT macro is used in a method, but not in the >declaration, this causes a compilation error. >We cannot use the ENTRYPOINT macro since it is used in the functions, >like this: > >STDAPI >HXEXPORT ENTRYPOINT(HXCREATEINSTANCE)(IUnknown** ppIUnknown) >{ > IHXTLogSystem* pLogSystem = NULL; > HX_RESULT retVal = ENTRYPOINT(RMACreateLogSystem) >(&pLogSystem); > if (SUCCEEDED(retVal)) > { > retVal = pLogSystem->QueryInterface(IID_IUnknown, >(void**)ppIUnknown); > } > HX_RELEASE(pLogSystem); > > return retVal; >} > >Also I used HXEXPORT to define EXPORT_C since EXPORT_C expands out to >__declspec(dllexport) for Symbian. >The expansion of HXEXPORT for _WIN32 is > >#define HXEXPORT __declspec(dllexport) __stdcall > >which is very close. I thought this would be the best place for >consistency. > > >Darrin > > > >-----Original Message----- > >From: ext Milko Boic [mailto:milko at real.com] > >Sent: Tuesday, July 18, 2006 11:25 AM > >To: Mann Darrin (Nokia-TP-MSW/Dallas); gwright at real.com > >Cc: clientapps-dev at helixcommunity.org; > >filesystem-dev at helixcommunity.org; > >datatype-dev at helixcommunity.org; > >client-dev at helixcommunity.org; common-dev at helixcommunity.org; > >protocol-dev at helixcommunity.org; audio-dev at helixcommunity.org; > >video-dev at helixcommunity.org > >Subject: Re: [Video-dev] RE: [Client-dev] CR : Source changes > >needed by Symbian build system > > > > > >Darrin, > > > >The methods you have added HXEXPORT to in declaration are > >entry points and are already warped into ENTRYPOINT() macro. > >The ENTRYPOINT is a higher level concept than a function > >export. It enables function to be a dll entrypoint and if > >that means that such function must carry EXPORT_C declaration > >to be an entry point on symbian than ENTRYPOINT macro should > >make it so for symbian. > > > >Is there a reason why you are not taking this approach which > >does not require massive changes and keeps the entry point > >declaration more concise? > > > >Milko > > > > > >At 08:42 AM 7/18/2006, Darrin.Mann at nokia.com wrote: > >>I ran the dumpbin against all the dlls that are created with > >the splay > >>target for win32-i386-vc6 system id. There are no new > >exports added to > >>any dlls with the additional HXEXPORT lines. > >> > >>I will verify the headers before checking in. > >> > >> > >>Thanks, > >> > >>Darrin > >> > >> > >> > >> >-----Original Message----- > >> >From: ext Greg Wright [mailto:gwright at real.com] > >> >Sent: Monday, July 17, 2006 2:44 PM > >> >To: Mann Darrin (Nokia-TP-MSW/Dallas) > >> >Cc: audio-dev at helixcommunity.org; > >> >clientapps-dev at helixcommunity.org; > >> >client-dev at helixcommunity.org; common-dev at helixcommunity.org; > >> >datatype-dev at helixcommunity.org; filesystem-dev at helixcommunity.org; > >> >protocol-dev at helixcommunity.org; video-dev at helixcommunity.org > >> >Subject: Re: [Client-dev] CR : Source changes needed by > >Symbian build > >> >system > >> > > >> >Please verify you have the correct headers on all the new > >files, you > >> >may already. > >> > > >> >I don't really see a problem, but, could you verify that the DLLs > >> >built under windows do no have any extra exported functions after > >> >your changes. It is just that HXEXPORT is defined under windows to > >> >automatically export any function that uses it, regardless if you > >> >export it via Umakefiles. So, if you could pick a few random DLLs > >> >(include clntcore.dll and a couple changed renderers) and do a: > >> > > >> > dumpbin /exports dllname.dll > >> > > >> >to make sure we still export the same number of functions > >both before > >> >and after your changes that would be great. > >> > > >> >The rest looks good. > >> > > >> >--greg. > >> > > >> > > >> > > >> >Darrin.Mann at nokia.com wrote: > >> >> "Nokia submits this code under the terms of a commercial > >> >contribution > >> >> agreement with Real Networks, and I am authorized to contribute > >> >> this code under said agreement." > >> >> > >> >> Modified by: > >> >> darrin.mann at nokia.com > >> >> > >> >> Reviewed by: > >> >> > >> >> > >> >> Date: > >> >> July-11-2006 > >> >> > >> >> Project: > >> >> Helix plug-in for Symbian > >> >> > >> >> Error ID: > >> >> RRAY-6RETAQ > >> >> > >> >> > >> >> Synopsis: > >> >> The build system is being updated to generate Symbian > >> >build system > >> >> files. I have > >> >> submitted a different CR for those changes, but the Helix > >> >> source needed a couple > >> >> of changes for the Symbian build system. > >> >> > >> >> For DLL creation in the Symbian build system, an > >> >exported function > >> >> must be > >> >> defined with the EXPORT_C definition. The HXEXPORT macro was > >> >> defined > >> >> as EXPORT_C for the a define that will be used with the build > >> >> system changes. > >> >> The HXEXPORT was added to the functions that were exported. > >> >> The armcc > >> >> compiler has a problem with pointer return values and > >> >EXPORT_C. A > >> >> typedef > >> >> has been created for void * to get around this bug. > >> >> > >> >> The automatic addition of system libraries (syslib, debuglib, > >> >> and > >> >> runtlib) > >> >> were removed. The Symbian MMP build crashes when a library > >> >> included in > >> >> the MMP is not found. The dependencies on these modules were > >> >> added to the > >> >> necessary modules. > >> >> > >> >> Files Modified: > >> >> audio/device/auddevlib_symbian.pcf > >> >> > >> >> client/core/hxdll.cpp > >> >> client/netwksvc/symbian.pcf > >> >> client/xres/clntxres.cpp > >> >> > >> >> clientapps/symbianMmf/MmfCtrlDll > >> >> clientapps/symbianMmf/MmfCtrlLib > >> >> clientapps/symbianMmf/MmfSis > >> >> clientapps/symbianMmf/hxmmfctrlimpl.h > >> >> clientapps/symbianMmf/hxmmfsitesupplier.h > >> >> clientapps/symbianMmf/installMMF.pcf > >> >> clientapps/symbiancommon/chxavstringutils.cpp > >> >> > >> >> common/include/hxtypes.h > >> >> common/lang/xml/xmlccf.cpp > >> >> common/log/logobserverfile/hxtlogobserver.cpp > >> >> common/log/logsystem/hxtlogsystem.cpp > >> >> common/system/pub/dllpath.h > >> >> common/system/pub/globals/hxglobals.h > >> >> common/util/symbian.pcf > >> >> common/util/tconverter/fxpoint/tconverter_fxp.cpp > >> >> > >> >> datatype/3gpptext/renderer/3gppttrenderer.cpp > >> >> datatype/aac/codec/fixpt/decoder/hxwrap/raacentrydrm.cpp > >> >> datatype/aac/codec/fixpt/decoder/hxwrap/umake_dll_symbian.pcf > >> >> datatype/aac/codec/fixpt/decoder/hxwrap/umake_lib_symbian.pcf > >> >> datatype/aac/codec/fixpt/decoder/pub/aacdec.h > >> >> datatype/aac/codec/fixpt/decoder/real/assembly.h > >> >> datatype/amr/codec/amr-nb/symbian.pcf > >> >> datatype/amr/codec/amr-wb/symbian.pcf > >> >> datatype/amr/fileformat/amrffdll.cpp > >> >> datatype/group/audio/audplin.cpp > >> >> datatype/group/video/vidplin.cpp > >> >> datatype/h263/renderer/plugin.cpp > >> >> datatype/mdf/audio/dsp/Umakefil > >> >> datatype/mdf/video/format/common/Umakefil > >> >> datatype/mdf/video/format/h264/Umakefil > >> >> datatype/mdf/video/format/mp4/Umakefil > >> >> datatype/mdf/video/format/rm/Umakefil > >> >> datatype/mdf/video/renderer/plugin.cpp > >> >> datatype/mdf/video/renderer/umakedll > >> >> datatype/mdf/video/renderer/umakelib > >> >> datatype/mp3/codec/fixpt/Umakefil > >> >> datatype/mp3/codec/fixpt/symbian.pcf > >> >> datatype/mp3/decoder/umakelib_symbian.pcf > >> >> datatype/mp3/fileformat/mp3ff.cpp > >> >> datatype/mp3/payload/symbian.pcf > >> >> datatype/mp3/renderer/plugin.cpp > >> >> datatype/mp4/audio/mdf/platform/symbian/swdecoder_entry.cpp > >> >> datatype/mp4/audio/renderer/audiids.cpp > >> >> datatype/mp4/fileformat/plugin.cpp > >> >> datatype/mp4/video/renderer/plugin.cpp > >> >> datatype/null/renderer/plugin.cpp > >> >> datatype/rm/audio/codec/ra8lbr/decwrapper.cpp > >> >> datatype/rm/audio/codec/ra8lbr/symbian.pcf > >> >> datatype/rm/audio/codec/sipro/fixpt/rasipr.cpp > >> >> datatype/rm/audio/renderer/plugin.cpp > >> >> datatype/rm/audio/renderer/symbian.pcf > >> >> datatype/rm/audio/renderer/nullevent/plugin_w_eventsink.cpp > >> >> datatype/rm/fileformat/plugin.cpp > >> >> datatype/rm/include/racodec.h > >> >> datatype/rm/video/codec/g2mp4combo/dmp4 > >> >> datatype/rm/video/codec/g2mp4combo/frontend/rv20api.cpp > >> >> datatype/rm/video/codec/rv89combo/drvc_symbian.pcf > >> >> datatype/rm/video/codec/rv89combo/frontend/rv30api.cpp > >> >> datatype/rm/video/codec/rvg2dec/drv2_symbian.pcf > >> >> datatype/rm/video/codec/rvg2dec/frontend/rv20api.cpp > >> >> datatype/rm/video/renderer/rvxdll.cpp > >> >> > >> >> filesystem/httplite/httpfilesys.cpp > >> >> filesystem/local/mini/minifilesys.cpp > >> >> > >> >> protocol/sdp/sdpplin.cpp > >> >> > >> >> video/colconverter/symumake > >> >> video/site/siteplug.cpp > >> >> video/sitelib/symbian.pcf > >> >> > >> >> Files Added: > >> >> datatype/amr/payload/symbian.pcf > >> >> datatype/mp3/decoder/umakedll_symbian.pcf > >> >> datatype/null/renderer/nullrenddll_symbian.pcf > >> >> datatype/rm/audio/codec/sipro/siprohelixdll_symbian.pcf > >> >> datatype/rm/video/codec/g2mp4combo/dmp4_symbian.pcf > >> >> datatype/rm/video/codec/g2mp4combo/mp4v_symbian.pcf > >> >> > >> >> Image Size and Heap Use impact: > >> >> none > >> >> > >> >> Platforms and Profiles Build Verified: > >> >> helix-client-s60-mmf-mdf-dsp > >> >> helix-client-s60-mmf-mdf-arm > >> >> > >> >> Platforms and Profiles Functionality verified: > >> >> winscw > >> >> armv5 > >> >> > >> >> Branch: > >> >> head and hxclient_2_1_0_cayennes > >> >> > >> >> > >> >> > >> > >>--------------------------------------------------------------------- > >> >- > >> >> -- > >> >> > >> >> _______________________________________________ > >> >> Client-dev mailing list > >> >> Client-dev at helixcommunity.org > >> >> http://lists.helixcommunity.org/mailman/listinfo/client-dev > >> > > >> > >>_______________________________________________ > >>Video-dev mailing list > >>Video-dev at helixcommunity.org > >>http://lists.helixcommunity.org/mailman/listinfo/video-dev > > > > > >