Apply patch 4. Fix the stub generator to insert proper license text in autogenerated output.
I left out the result of running this script due to a comment earlier to say there was a problem with the def files in my original patch.
// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).// All rights reserved.// This component and the accompanying materials are made available// under the terms of "Eclipse Public License v1.0"// which accompanies this distribution, and is available// at the URL "http://www.eclipse.org/legal/epl-v10.html".//// Initial Contributors:// Nokia Corporation - initial contribution.//// Contributors://// Description:///** @file @test*/#ifndef EGLTEST_SYNCOBJECT_H#define EGLTEST_SYNCOBJECT_H#include "eglteststep.h"#include <test/egltestcommonsession.h>_LIT(KSyncObject_Positive_Base, "SyncObject_Base");NONSHARABLE_CLASS(CEglTest_SyncObject_Base) : public CEglTestStep {public: CEglTest_SyncObject_Base(); ~CEglTest_SyncObject_Base(); TBool GetProcAddress(); void CreateEglSessionL(); void CheckSyncAttrib(EGLint attribute, EGLint expectedValue); void CleanAll(); /** @param aEndTime End time obtained from the user nano kernel tick counter @param aStartTime Start time obtained from the user nano kernel tick counter @return elapsed time in microsecond */ inline TInt ElapsedTime(TUint32 aEndTime, TUint32 aStartTime) const { return ((aEndTime - aStartTime) * iTickPeriodMicroSeconds); } // from CTestStep TVerdict doTestStepPreambleL();protected: CTestEglSession* iEglSess; EGLSyncKHR iSyncObject; EGLSyncKHR iSyncObject1; EGLSyncKHR iSyncObject2; TBool iIsSyncObjectExtensionSupported; //sync object API, defined in EGL Khronos API spec with the name KHR_reusable_sync TBool iIsSyncObjectPrivateExtensionSupported; //internal NOKIA extension which is not the part of the Khronos API spec TInt iThreshold; //level of tolerance TInt iDelaySignalling; //delay before the signal occurs TInt iWaitSyncTimeout; //timeout client waits on sync object, must be greater than iDelaySignalling TInt iLongDelaySignalling; //long delay before signalling occurs, must be greater than iWaitSyncTimeout TInt iNumStressIterations; //number of iterations before stress test exits TInt iTimeOverhead; TFPtrEglCreateSyncKhr iPfnEglCreateSyncKHR; TFPtrEglDestroySyncKhr iPfnEglDestroySyncKHR; TFPtrEglClientWaitSyncKhr iPfnEglClientWaitSyncKHR; TFPtrEglSignalSyncKhr iPfnEglSignalSyncKHR; TFPtrEglGetSyncAttribKhr iPfnEglGetSyncAttribKHR; TFPtrEglPrivateSignalSyncNok iPfnEglPrivateSignalSyncNOK; TInt iTickPeriodMicroSeconds; //nanokernel ticks, in microseconds };_LIT(KSyncObject_Positive_GetProcAddress, "SyncObject_Positive_GetProcAddress");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_GetProcAddress) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL(); };_LIT(KSyncObject_Positive_CreateDestroy, "SyncObject_Positive_CreateDestroy");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_CreateDestroy) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL(); };_LIT(KSyncObject_Positive_WaitSignal, "SyncObject_Positive_WaitSignal");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_WaitSignal) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };_LIT(KSyncObject_Positive_WaitSignal2, "SyncObject_Positive_WaitSignal2");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_WaitSignal2) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };_LIT(KSyncObject_Positive_WaitDelete, "SyncObject_Positive_WaitDelete");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_WaitDelete) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };_LIT(KSyncObject_Positive_WaitWithTimeoutExpired, "SyncObject_Positive_WaitWithTimeoutExpired");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_WaitWithTimeoutExpired) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL(); };_LIT(KSyncObject_Positive_SignalBeforeTimeoutExpired, "SyncObject_Positive_SignalBeforeTimeoutExpired");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_SignalBeforeTimeoutExpired) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };_LIT(KSyncObject_Positive_DeleteBeforeTimeoutExpired, "SyncObject_Positive_DeleteBeforeTimeoutExpired");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_DeleteBeforeTimeoutExpired) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };_LIT(KSyncObject_Positive_Multithread_SignalBeforeTimeout, "SyncObject_Positive_Multithread_SignalBeforeTimeout");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_Multithread_SignalBeforeTimeout) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };_LIT(KSyncObject_Positive_Multithread_SignalAfterTimeout, "SyncObject_Positive_Multithread_SignalAfterTimeout");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_Multithread_SignalAfterTimeout) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };_LIT(KSyncObject_Positive_Multithread_WaitOnTwoSyncObject, "SyncObject_Positive_Multithread_WaitOnTwoSyncObject");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_Multithread_WaitOnTwoSyncObject) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };_LIT(KSyncObject_Positive_Wait_TestMode, "SyncObject_Positive_Wait_TestMode");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_Wait_TestMode) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL(); };_LIT(KSyncObject_Positive_Multithread_Deletion, "SyncObject_Positive_Multithread_Deletion");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_Multithread_Deletion) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };_LIT(KSyncObject_Positive_Stress, "SyncObject_Positive_Stress");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_Stress) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx);private: TBool iStopTest; //to ensure that we are not going to signal on deleted sync objects TInt iLastThreadToSignal; //varies from 0..2, where 2 is the main client thread };_LIT(KSyncObject_Positive_WaitFlush, "SyncObject_Positive_WaitFlush");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_WaitFlush) : public CEglTest_SyncObject_Base{public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx);};_LIT(KSyncObject_Positive_Terminate, "SyncObject_Positive_Terminate");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_Terminate) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL(); };_LIT(KSyncObject_Positive_TerminateBeforeTimeoutExpired, "SyncObject_Positive_TerminateBeforeTimeoutExpired");NONSHARABLE_CLASS(CEglTest_SyncObject_Positive_TerminateBeforeTimeoutExpired) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };_LIT(KSyncObject_Negative_WrongParameters, "SyncObject_Negative_WrongParameters");NONSHARABLE_CLASS(CEglTest_SyncObject_Negative_WrongParameters) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL(); };_LIT(KSyncObject_Negative_SignalImpl, "SyncObject_Negative_SignalImpl");NONSHARABLE_CLASS(CEglTest_SyncObject_Negative_SignalImpl) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL(); };_LIT(KSyncObject_Negative_OOM, "SyncObject_Negative_OOM");NONSHARABLE_CLASS(CEglTest_SyncObject_Negative_OOM) : public CEglTest_SyncObject_Base {public: TVerdict doTestStepL();protected: // from CEglTestStep void doThreadFunctionL(TInt aIdx); };#endif // EGLTEST_SYNCOBJECT_H