You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(16) |
Aug
(203) |
Sep
(142) |
Oct
(113) |
Nov
(73) |
Dec
(27) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
(7) |
Feb
(38) |
Mar
(6) |
Apr
(1) |
May
(9) |
Jun
(104) |
Jul
(6) |
Aug
(11) |
Sep
(13) |
Oct
(6) |
Nov
(15) |
Dec
(37) |
2008 |
Jan
(17) |
Feb
(4) |
Mar
(6) |
Apr
(4) |
May
(2) |
Jun
(5) |
Jul
(1) |
Aug
(3) |
Sep
(21) |
Oct
(7) |
Nov
|
Dec
(3) |
2009 |
Jan
(4) |
Feb
(15) |
Mar
|
Apr
(34) |
May
(44) |
Jun
(12) |
Jul
(6) |
Aug
(15) |
Sep
(20) |
Oct
(10) |
Nov
(1) |
Dec
(20) |
2010 |
Jan
(19) |
Feb
(5) |
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <ped...@us...> - 2007-02-03 22:44:35
|
Revision: 873 http://svn.sourceforge.net/cegcc/?rev=873&view=rev Author: pedroalves Date: 2007-02-03 14:42:55 -0800 (Sat, 03 Feb 2007) Log Message: ----------- * dllmain.c: Fix typo. Modified Paths: -------------- trunk/cegcc/src/mingw/ChangeLog.mingw32ce trunk/cegcc/src/mingw/dllmain.c Modified: trunk/cegcc/src/mingw/ChangeLog.mingw32ce =================================================================== --- trunk/cegcc/src/mingw/ChangeLog.mingw32ce 2007-02-01 20:46:29 UTC (rev 872) +++ trunk/cegcc/src/mingw/ChangeLog.mingw32ce 2007-02-03 22:42:55 UTC (rev 873) @@ -1,3 +1,7 @@ +2007-02-03 Pedro Alves <ped...@po...> + + * dllmain.c: Fix typo. + 2006-12-30 Danny Backx <dan...@us...> * profile : Create a profile/profile tree as a copy of the Modified: trunk/cegcc/src/mingw/dllmain.c =================================================================== --- trunk/cegcc/src/mingw/dllmain.c 2007-02-01 20:46:29 UTC (rev 872) +++ trunk/cegcc/src/mingw/dllmain.c 2007-02-03 22:42:55 UTC (rev 873) @@ -20,7 +20,7 @@ suppress calls to it on thread creation and destruction (DLL_THREAD_ATTACH and DLL_THREAD_DETACH notifications). Besides the speed optimization, this avoids paging - in DllMain, thus reducing it's working code set. */ + in DllMain, thus reducing its working code set. */ DisableThreadLibraryCalls (hDll); } return TRUE; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2007-02-01 20:46:31
|
Revision: 872 http://svn.sourceforge.net/cegcc/?rev=872&view=rev Author: dannybackx Date: 2007-02-01 12:46:29 -0800 (Thu, 01 Feb 2007) Log Message: ----------- Add help text to explain command line build options. Modified Paths: -------------- trunk/cegcc/src/ChangeLog trunk/cegcc/src/build-cegcc.sh trunk/cegcc/src/build-mingw32ce.sh Modified: trunk/cegcc/src/ChangeLog =================================================================== --- trunk/cegcc/src/ChangeLog 2007-02-01 19:42:30 UTC (rev 871) +++ trunk/cegcc/src/ChangeLog 2007-02-01 20:46:29 UTC (rev 872) @@ -1,3 +1,8 @@ +2007-02-01 Danny Backx <dan...@us...> + + * build-mingw32ce.sh, build-cegcc.sh : Add help text to explain + command line build options. + 2007-01-20 Danny Backx <dan...@us...> * build-mingw32ce.sh, build-cegcc.sh (build_docs) : Copy Modified: trunk/cegcc/src/build-cegcc.sh =================================================================== --- trunk/cegcc/src/build-cegcc.sh 2007-02-01 19:42:30 UTC (rev 871) +++ trunk/cegcc/src/build-cegcc.sh 2007-02-01 20:46:29 UTC (rev 872) @@ -343,6 +343,10 @@ --help) echo "usage:" echo "$0 [source dir] [build directory] [prefix dir] [build_opt]" + echo " " + echo "Valid build options : binutils importlibs w32api dummy_cegccdll" + echo " bootstrapgcc newlib gcc cegccdll cegccthrd libstdc++ gdb" + echo " gdbstub docs profile all" ;; binutils) build_binutils ;; importlibs) build_import_libs ;; Modified: trunk/cegcc/src/build-mingw32ce.sh =================================================================== --- trunk/cegcc/src/build-mingw32ce.sh 2007-02-01 19:42:30 UTC (rev 871) +++ trunk/cegcc/src/build-mingw32ce.sh 2007-02-01 20:46:29 UTC (rev 872) @@ -318,6 +318,9 @@ --help) echo "usage:" echo "$0 [source dir] [build directory] [prefix dir] [build_opt]" + echo " " + echo "Valid build options : binutils importlibs headers fakecrt bootstrapgcc" + echo " w32api crt gcc gdb gdbstub docs profile all" ;; binutils) build_binutils ;; importlibs) build_import_libs ;; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2007-02-01 19:42:41
|
Revision: 871 http://svn.sourceforge.net/cegcc/?rev=871&view=rev Author: dannybackx Date: 2007-02-01 11:42:30 -0800 (Thu, 01 Feb 2007) Log Message: ----------- The attached patch fills in the structures and constants needed for making Today Screen plug ins. Most constants and structures were obtained on the following links: http://msdn2.microsoft.com/en-us/library/aa454291.aspx http://blogs.msdn.com/mikehall/archive/2004/02/22/78141.aspx The MAX_ITEMNAME constant was obtained by dumping the data pointer passed by InitializeCustomItem() and looking at the offset of the szDLLPath member (see the DUMP_DATA define in the code). The dump.txt file contains the edited result of this dump. The TODAYM_DRAWWATERMARK constant was guessed because it was the one missing between the two other similar messages. The WM_TODAYCUSTOM_CLEARCACHE and WM_TODAYCUSTOM_QUERYREFRESHCACHE messages were found by dumping the unknown window messages received greater that WM_USER. Modified Paths: -------------- trunk/cegcc/src/w32api/ChangeLog.ce trunk/cegcc/src/w32api/include/todaycmn.h Modified: trunk/cegcc/src/w32api/ChangeLog.ce =================================================================== --- trunk/cegcc/src/w32api/ChangeLog.ce 2007-01-31 21:02:32 UTC (rev 870) +++ trunk/cegcc/src/w32api/ChangeLog.ce 2007-02-01 19:42:30 UTC (rev 871) @@ -1,3 +1,8 @@ +2007-02-01 Nuno Lucas <nt...@gm...> + + * include/todaycmn.h : Create this file based on MSDN documentation + http://msdn2.microsoft.com/en-us/library/aa454291.aspx + 2007-01-31 Nuno Lucas <nt...@gm...> * include/winuser.h : Define MsgWaitForMultipleObjects as a macro that Modified: trunk/cegcc/src/w32api/include/todaycmn.h =================================================================== --- trunk/cegcc/src/w32api/include/todaycmn.h 2007-01-31 21:02:32 UTC (rev 870) +++ trunk/cegcc/src/w32api/include/todaycmn.h 2007-02-01 19:42:30 UTC (rev 871) @@ -9,6 +9,61 @@ extern "C" { #endif + +/* wParam to TODAYM_GETCOLOR */ +#define TODAYCOLOR_TEXT 0x10000004 +#define TODAYCOLOR_HIGHLIGHT 0x10000022 +#define TODAYCOLOR_HIGHLIGHTEDTEXT 0x10000023 + +/* lParam (by reference) to TODAYM_DRAWWATERMARK */ +typedef struct { + HDC hdc; + RECT rc; + HWND hwnd; +} TODAYDRAWWATERMARKINFO; + +#define TODAYM_GETCOLOR (WM_USER+100) +#define TODAYM_DRAWWATERMARK (WM_USER+101) +#define TODAYM_TOOKSELECTION (WM_USER+102) + +#define WM_TODAYCUSTOM_CLEARCACHE (WM_USER+242) +#define WM_TODAYCUSTOM_QUERYREFRESHCACHE (WM_USER+243) +#define WM_TODAYCUSTOM_RECEIVEDSELECTION (WM_USER+244) +#define WM_TODAYCUSTOM_LOSTSELECTION (WM_USER+245) +#define WM_TODAYCUSTOM_USERNAVIGATION (WM_USER+246) +#define WM_TODAYCUSTOM_ACTION (WM_USER+247) + +/* Types of items on the Today screen */ +typedef enum _TODAYLISTITEMTYPE{ + tlitOwnerInfo = 0, + tlitAppointments, + tlitMail, + tlitTasks, + tlitCustom, + tlitNil +} TODAYLISTITEMTYPE; + +/* Properties of a Today screen item */ + +#define MAX_ITEMNAME 32 + +typedef struct _TODAYLISTITEM { + TCHAR szName[MAX_ITEMNAME]; + TODAYLISTITEMTYPE tlit; + DWORD dwOrder; + DWORD cyp; + BOOL fEnabled; + BOOL fOptions; + DWORD grfFlags; + TCHAR szDLLPath[MAX_PATH]; + HINSTANCE hinstDLL; + HWND hwndCustom; + BOOL fSizeOnDraw; + BYTE * prgbCachedData; + DWORD cbCachedData; +} TODAYLISTITEM; + + #ifdef __cplusplus } #endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2007-01-31 21:02:57
|
Revision: 870 http://svn.sourceforge.net/cegcc/?rev=870&view=rev Author: dannybackx Date: 2007-01-31 13:02:32 -0800 (Wed, 31 Jan 2007) Log Message: ----------- Submitted by Nuno Lucas. The GetCharWidth32 hasn't two variations on WinCE as it has on Windows (even if they are the same). > This confuses me. Should we define MessageBoxW in the lib with the W, > but GetCharWidth32 without the W ? What do other Windows architectures > implement ? I believe this was actually an error by Microsoft on the Windows API, which they maintained for the sake of compatibility. But with Windows CE they didn't need to maintain that error and just had one GetCharWidth32() export. Modified Paths: -------------- trunk/cegcc/src/w32api/ChangeLog.ce trunk/cegcc/src/w32api/include/wingdi.h Modified: trunk/cegcc/src/w32api/ChangeLog.ce =================================================================== --- trunk/cegcc/src/w32api/ChangeLog.ce 2007-01-31 19:50:37 UTC (rev 869) +++ trunk/cegcc/src/w32api/ChangeLog.ce 2007-01-31 21:02:32 UTC (rev 870) @@ -2,8 +2,9 @@ * include/winuser.h : Define MsgWaitForMultipleObjects as a macro that calls MsgWaitForMultipleObjectsEx as described on MSDN. + * include/wingdi.h : Define only the right function GetCharWidth32 + for Windows CE, not its similarly named friends. - 2006-12-18 Pedro Alves <ped...@po...> * include/winnt.h (_M_ARM, ARM): Remove. Modified: trunk/cegcc/src/w32api/include/wingdi.h =================================================================== --- trunk/cegcc/src/w32api/include/wingdi.h 2007-01-31 19:50:37 UTC (rev 869) +++ trunk/cegcc/src/w32api/include/wingdi.h 2007-01-31 21:02:32 UTC (rev 870) @@ -2802,12 +2802,16 @@ WINGDIAPI BOOL WINAPI GetCharABCWidthsFloatW(HDC,UINT,UINT,LPABCFLOAT); WINGDIAPI DWORD WINAPI GetCharacterPlacementA(HDC,LPCSTR,int,int,LPGCP_RESULTSA,DWORD); WINGDIAPI DWORD WINAPI GetCharacterPlacementW(HDC,LPCWSTR,int,int,LPGCP_RESULTSW,DWORD); +#ifndef _WIN32_WCE WINGDIAPI BOOL WINAPI GetCharWidth32A(HDC,UINT,UINT,LPINT); WINGDIAPI BOOL WINAPI GetCharWidth32W(HDC,UINT,UINT,LPINT); WINGDIAPI BOOL WINAPI GetCharWidthA(HDC,UINT,UINT,LPINT); WINGDIAPI BOOL WINAPI GetCharWidthW(HDC,UINT,UINT,LPINT); WINGDIAPI BOOL WINAPI GetCharWidthFloatA(HDC,UINT,UINT,PFLOAT); WINGDIAPI BOOL WINAPI GetCharWidthFloatW(HDC,UINT,UINT,PFLOAT); +#else +WINGDIAPI BOOL WINAPI GetCharWidth32(HDC,UINT,UINT,LPINT); +#endif WINGDIAPI int WINAPI GetClipBox(HDC,LPRECT); WINGDIAPI int WINAPI GetClipRgn(HDC,HRGN); WINGDIAPI BOOL WINAPI GetColorAdjustment(HDC,LPCOLORADJUSTMENT); @@ -3092,7 +3096,9 @@ #define GetCharABCWidthsFloat GetCharABCWidthsFloatW #define GetCharABCWidths GetCharABCWidthsW #define GetCharacterPlacement GetCharacterPlacementW +#ifndef _WIN32_WCE #define GetCharWidth32 GetCharWidth32W +#endif #define GetCharWidthFloat GetCharWidthFloatW #define GetCharWidth GetCharWidthW #define GetEnhMetaFile GetEnhMetaFileW This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2007-01-31 19:50:39
|
Revision: 869 http://svn.sourceforge.net/cegcc/?rev=869&view=rev Author: dannybackx Date: 2007-01-31 11:50:37 -0800 (Wed, 31 Jan 2007) Log Message: ----------- Change submitted by Nuno Lucas (see http://msdn2.microsoft.com/en-us/library/ms961241.aspx). The current declaration for MsgWaitForMultipleObjects is the same as on standard windows, but on Windows CE it's a define wrapper for MsgWaitForMultiplesObjectsEx Modified Paths: -------------- trunk/cegcc/src/w32api/ChangeLog.ce trunk/cegcc/src/w32api/include/winuser.h Modified: trunk/cegcc/src/w32api/ChangeLog.ce =================================================================== --- trunk/cegcc/src/w32api/ChangeLog.ce 2007-01-20 16:45:06 UTC (rev 868) +++ trunk/cegcc/src/w32api/ChangeLog.ce 2007-01-31 19:50:37 UTC (rev 869) @@ -1,3 +1,9 @@ +2007-01-31 Nuno Lucas <nt...@gm...> + + * include/winuser.h : Define MsgWaitForMultipleObjects as a macro that + calls MsgWaitForMultipleObjectsEx as described on MSDN. + + 2006-12-18 Pedro Alves <ped...@po...> * include/winnt.h (_M_ARM, ARM): Remove. Modified: trunk/cegcc/src/w32api/include/winuser.h =================================================================== --- trunk/cegcc/src/w32api/include/winuser.h 2007-01-20 16:45:06 UTC (rev 868) +++ trunk/cegcc/src/w32api/include/winuser.h 2007-01-31 19:50:37 UTC (rev 869) @@ -3834,8 +3834,13 @@ #endif WINUSERAPI void WINAPI mouse_event(DWORD,DWORD,DWORD,DWORD,ULONG_PTR); WINUSERAPI BOOL WINAPI MoveWindow(HWND,int,int,int,int,BOOL); +WINUSERAPI DWORD WINAPI MsgWaitForMultipleObjectsEx(DWORD,CONST HANDLE*,DWORD,DWORD,DWORD); +#ifdef _WIN32_WCE +#define MsgWaitForMultipleObjects(c,h,wa,ms,m) \ + MsgWaitForMultipleObjectsEx(c,h,ms,m,0) +#else WINUSERAPI DWORD WINAPI MsgWaitForMultipleObjects(DWORD,CONST HANDLE*,BOOL,DWORD,DWORD); -WINUSERAPI DWORD WINAPI MsgWaitForMultipleObjectsEx(DWORD,CONST HANDLE*,DWORD,DWORD,DWORD); +#endif #if (WINVER >= 0x0500) WINUSERAPI void WINAPI NotifyWinEvent(DWORD,HWND,LONG,LONG); #endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2007-01-20 16:45:10
|
Revision: 868 http://svn.sourceforge.net/cegcc/?rev=868&view=rev Author: dannybackx Date: 2007-01-20 08:45:06 -0800 (Sat, 20 Jan 2007) Log Message: ----------- This is capable of producing RPM files. Modified Paths: -------------- trunk/cegcc/scripts/linux/rpm-create-source.sh trunk/cegcc/src/ChangeLog trunk/cegcc/src/build-cegcc.sh trunk/cegcc/src/build-mingw32ce.sh Added Paths: ----------- trunk/cegcc/scripts/linux/mingw32ce.spec Added: trunk/cegcc/scripts/linux/mingw32ce.spec =================================================================== --- trunk/cegcc/scripts/linux/mingw32ce.spec (rev 0) +++ trunk/cegcc/scripts/linux/mingw32ce.spec 2007-01-20 16:45:06 UTC (rev 868) @@ -0,0 +1,78 @@ +Summary: CeGCC offers cross-development to create Windows CE apps for ARM processors +Name: cegcc-mingw32ce +%define version 0.12 +Version: 0.12 +Release: 1 +License: open +Packager: Danny Backx <dan...@us...> +Group: Development/Tools +Prefix: /opt/mingw32ce +# Source: http://sourceforge.net/project/showfiles.php?group_id=173455 +Source: /tmp/cegcc-mingw32ce-src-%{version}.tar.gz +BuildRoot: %{_tmppath}/%{name}-buildroot + +%description +CeGCC + +%prep +%setup -q +# %setup -n cegcc-minge32ce-0.12 + +%build +rm -rf $RPM_BUILD_ROOT +export PREFIX=/opt/mingw32ce +cd src || exit 1 +# sh build-cegcc.sh . $RPM_BUILD_ROOT $PREFIX all || exit 1 +sh build-mingw32ce.sh all || exit 1 + +%install +cd / +rm -rf $RPM_BUILD_ROOT +mkdir $RPM_BUILD_ROOT +tar cf - opt/mingw32ce | (cd $RPM_BUILD_ROOT; tar xf -) + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +/opt/mingw32ce +#/opt/cegcc/arm-wince-cegcc +#%attr(755, root, root) /opt/cegcc/bin +#/opt/cegcc/include +#/opt/cegcc/lib +#/opt/cegcc/libexec +#/opt/cegcc/share +#/opt/cegcc/COPYING +#/opt/cegcc/COPYING.LIB +#/opt/cegcc/NEWS +#/opt/cegcc/README + +%changelog +* Sat Jan 20 2007 Danny Backx <dan...@us...> +- Copy cegcc.spec into mingw32ce.spec, change the stuff that's required. + +* Sat Dec 31 2006 Danny Backx <dan...@us...> +- Strip out mingw32ce. + +* Sat Dec 30 2006 Danny Backx <dan...@us...> +- Adapt to Pedro's build scripts and /opt/cegcc and /opt/mingw32ce . + +* Wed Nov 1 2006 Danny Backx <dan...@us...> +- Add COPYING.LIB +- Increase level to produce a 0.11 version next time. + +* Wed Oct 11 2006 Danny Backx <dan...@us...> +- Add a couple of text files. + +* Sat Oct 7 2006 Danny Backx <dan...@us...> +- Change to implement arm-wince-cegcc and arm-wince-mingw32ce targets. + +* Sun Sep 17 2006 Danny Backx <dan...@us...> +- Add documentation files. + +* Thu Sep 14 2006 Danny Backx <dan...@us...> +- Fix the path in install so we don't need to have cegcc installed to be + able to run rpmbuild. + +* Sun Sep 3 2006 Danny Backx <dan...@us...> +- initial version of the spec file. Modified: trunk/cegcc/scripts/linux/rpm-create-source.sh =================================================================== --- trunk/cegcc/scripts/linux/rpm-create-source.sh 2007-01-18 17:32:56 UTC (rev 867) +++ trunk/cegcc/scripts/linux/rpm-create-source.sh 2007-01-20 16:45:06 UTC (rev 868) @@ -19,31 +19,57 @@ echo '/*.cvs*' >>/tmp/exclude-$$ echo '*/CVS' >>/tmp/exclude-$$ echo '*/CVS/*' >>/tmp/exclude-$$ -echo 'cegcc-'$CEGCC_RELEASE'/src/build-cegcc' >>/tmp/exclude-$$ -echo 'cegcc-'$CEGCC_RELEASE'/src/build-cegcc/*' >>/tmp/exclude-$$ -echo 'cegcc-'$CEGCC_RELEASE'/src/build-mingw32ce' >>/tmp/exclude-$$ -echo 'cegcc-'$CEGCC_RELEASE'/src/build-mingw32ce/*' >>/tmp/exclude-$$ +echo 'cegcc-cegcc-'$CEGCC_RELEASE'/src/build-cegcc' >>/tmp/exclude-$$ +echo 'cegcc-cegcc-'$CEGCC_RELEASE'/src/build-cegcc/*' >>/tmp/exclude-$$ +echo 'cegcc-cegcc-'$CEGCC_RELEASE'/src/build-mingw32ce' >>/tmp/exclude-$$ +echo 'cegcc-cegcc-'$CEGCC_RELEASE'/src/build-mingw32ce/*' >>/tmp/exclude-$$ +echo 'cegcc-mingw32ce-'$CEGCC_RELEASE'/src/build-cegcc' >>/tmp/exclude-$$ +echo 'cegcc-mingw32ce-'$CEGCC_RELEASE'/src/build-cegcc/*' >>/tmp/exclude-$$ +echo 'cegcc-mingw32ce-'$CEGCC_RELEASE'/src/build-mingw32ce' >>/tmp/exclude-$$ +echo 'cegcc-mingw32ce-'$CEGCC_RELEASE'/src/build-mingw32ce/*' >>/tmp/exclude-$$ echo '*~' >>/tmp/exclude-$$ # cd $TOP_SRCDIR -ln -s . cegcc-$CEGCC_RELEASE +ln -s . cegcc-cegcc-$CEGCC_RELEASE tar --exclude-from=/tmp/exclude-$$ \ - -cz -f /usr/src/rpm/SOURCES/cegcc-src-$CEGCC_RELEASE.tar.gz \ - cegcc-$CEGCC_RELEASE/NEWS cegcc-$CEGCC_RELEASE/README \ - cegcc-$CEGCC_RELEASE/scripts cegcc-$CEGCC_RELEASE/docs \ - cegcc-$CEGCC_RELEASE/website cegcc-$CEGCC_RELEASE/test cegcc-$CEGCC_RELEASE/src -rm cegcc-$CEGCC_RELEASE + -cz -f /usr/src/rpm/SOURCES/cegcc-cegcc-src-$CEGCC_RELEASE.tar.gz \ + cegcc-cegcc-$CEGCC_RELEASE/NEWS \ + cegcc-cegcc-$CEGCC_RELEASE/README \ + cegcc-cegcc-$CEGCC_RELEASE/scripts/linux/cegcc.spec \ + cegcc-cegcc-$CEGCC_RELEASE/docs \ + cegcc-cegcc-$CEGCC_RELEASE/website \ + cegcc-cegcc-$CEGCC_RELEASE/test \ + cegcc-cegcc-$CEGCC_RELEASE/src +rm cegcc-cegcc-$CEGCC_RELEASE # +echo "Ready to build with" +echo " " +echo " rm -rf /opt/cegcc/*" +echo " rpmbuild -tb /usr/src/rpm/SOURCES/cegcc-cegcc-src-"$CEGCC_RELEASE".tar.gz" +echo "Note : " `ls -l /usr/src/rpm/SOURCES/cegcc-cegcc-src-"$CEGCC_RELEASE".tar.gz` +# +ln -s . cegcc-mingw32ce-$CEGCC_RELEASE +tar --exclude-from=/tmp/exclude-$$ \ + -cz -f /usr/src/rpm/SOURCES/cegcc-mingw32ce-src-$CEGCC_RELEASE.tar.gz \ + cegcc-mingw32ce-$CEGCC_RELEASE/NEWS \ + cegcc-mingw32ce-$CEGCC_RELEASE/README \ + cegcc-mingw32ce-$CEGCC_RELEASE/scripts/linux/mingw32ce.spec \ + cegcc-mingw32ce-$CEGCC_RELEASE/docs \ + cegcc-mingw32ce-$CEGCC_RELEASE/website \ + cegcc-mingw32ce-$CEGCC_RELEASE/test \ + cegcc-mingw32ce-$CEGCC_RELEASE/src +rm cegcc-mingw32ce-$CEGCC_RELEASE +# # Remove temp file # rm -f /tmp/exclude-$$ # # Tell packager what to do. # -echo "Now be sure to build with" echo " " -echo " rm -rf /opt/cegcc/* /opt/mingw32ce/*" -echo " rpmbuild -tb /usr/src/rpm/SOURCES/cegcc-src-"$CEGCC_RELEASE".tar.gz" +echo " rm -rf /opt/mingw32ce/*" +echo " rpmbuild -tb /usr/src/rpm/SOURCES/cegcc-mingw32ce-src-"$CEGCC_RELEASE".tar.gz" +echo "Note : " `ls -l /usr/src/rpm/SOURCES/cegcc-mingw32ce-src-"$CEGCC_RELEASE".tar.gz` echo " " # # All done Modified: trunk/cegcc/src/ChangeLog =================================================================== --- trunk/cegcc/src/ChangeLog 2007-01-18 17:32:56 UTC (rev 867) +++ trunk/cegcc/src/ChangeLog 2007-01-20 16:45:06 UTC (rev 868) @@ -1,3 +1,13 @@ +2007-01-20 Danny Backx <dan...@us...> + + * build-mingw32ce.sh, build-cegcc.sh (build_docs) : Copy + some additional files that need to make it into an RPM. + * scripts/linux/rpm-create-source.sh : create two different source tar + files, each containing one SPEC file. For the cegcc and mingw32ce + distributions. + * scripts/linux/cegcc.spec, scripts/linux/mingw32ce.spec : these + versions work. + 2007-01-18 Danny Backx <dan...@us...> * cegcc/importlibs/build.sh : add definition for mmtimer DLL. @@ -7,8 +17,6 @@ * build-mingw32ce.sh, build-cegcc.sh (build_profile) : Copy the options from the mingw_runtime build, so src/profile/Makefile.in gets the right parameters and install stuff in the right place. - * build-mingw32ce.sh, build-cegcc.sh (build_docs) : Copy - some additional files that need to make it into an RPM. 2006-12-30 Danny Backx <dan...@us...> Modified: trunk/cegcc/src/build-cegcc.sh =================================================================== --- trunk/cegcc/src/build-cegcc.sh 2007-01-18 17:32:56 UTC (rev 867) +++ trunk/cegcc/src/build-cegcc.sh 2007-01-20 16:45:06 UTC (rev 868) @@ -313,6 +313,12 @@ tar cf - . | (cd ${PREFIX}/share/docs; tar xf -) || exit 1 cd ${BASE_DIRECTORY}/../website || exit 1 tar cf - images | (cd ${PREFIX}/share; tar xf -) || exit 1 + + cd ${BASE_DIRECTORY}/.. || exit 1 + cp NEWS README ${PREFIX} || exit 1 + cp src/binutils/COPYING ${PREFIX} || exit 1 + cp src/binutils/COPYING.LIB ${PREFIX} || exit 1 + cp src/binutils/COPYING.NEWLIB ${PREFIX} || exit 1 } function build_all() Modified: trunk/cegcc/src/build-mingw32ce.sh =================================================================== --- trunk/cegcc/src/build-mingw32ce.sh 2007-01-18 17:32:56 UTC (rev 867) +++ trunk/cegcc/src/build-mingw32ce.sh 2007-01-20 16:45:06 UTC (rev 868) @@ -270,6 +270,12 @@ tar cf - . | (cd ${PREFIX}/share/docs; tar xf -) || exit 1 cd ${BASE_DIRECTORY}/../website || exit 1 tar cf - images | (cd ${PREFIX}/share; tar xf -) || exit 1 + + cd ${BASE_DIRECTORY}/.. || exit 1 + cp NEWS README ${PREFIX} || exit 1 + cp src/binutils/COPYING ${PREFIX} || exit 1 + cp src/binutils/COPYING.LIB ${PREFIX} || exit 1 + cp src/binutils/COPYING.NEWLIB ${PREFIX} || exit 1 } function build_profile() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2007-01-18 17:33:07
|
Revision: 867 http://svn.sourceforge.net/cegcc/?rev=867&view=rev Author: dannybackx Date: 2007-01-18 09:32:56 -0800 (Thu, 18 Jan 2007) Log Message: ----------- Add definition for mmtimer. Modified Paths: -------------- trunk/cegcc/src/ChangeLog trunk/cegcc/src/cegcc/importlibs/build.sh Modified: trunk/cegcc/src/ChangeLog =================================================================== --- trunk/cegcc/src/ChangeLog 2007-01-13 17:03:35 UTC (rev 866) +++ trunk/cegcc/src/ChangeLog 2007-01-18 17:32:56 UTC (rev 867) @@ -1,3 +1,7 @@ +2007-01-18 Danny Backx <dan...@us...> + + * cegcc/importlibs/build.sh : add definition for mmtimer DLL. + 2006-12-31 Danny Backx <dan...@us...> * build-mingw32ce.sh, build-cegcc.sh (build_profile) : Copy the @@ -3,4 +7,6 @@ options from the mingw_runtime build, so src/profile/Makefile.in gets the right parameters and install stuff in the right place. + * build-mingw32ce.sh, build-cegcc.sh (build_docs) : Copy + some additional files that need to make it into an RPM. 2006-12-30 Danny Backx <dan...@us...> Modified: trunk/cegcc/src/cegcc/importlibs/build.sh =================================================================== --- trunk/cegcc/src/cegcc/importlibs/build.sh 2007-01-13 17:03:35 UTC (rev 866) +++ trunk/cegcc/src/cegcc/importlibs/build.sh 2007-01-18 17:32:56 UTC (rev 867) @@ -14,5 +14,6 @@ ./mkimport.sh $defdir/ceshell.def $outputdir || exit ./mkimport.sh $defdir/winsock.def $outputdir || exit ./mkimport.sh $defdir/ws2.def $outputdir || exit +./mkimport.sh $defdir/mmtimer.def $outputdir || exit #./winsock.sh $defdir $outputdir || exit #./ws2.sh $defdir $outputdir This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2007-01-13 17:03:39
|
Revision: 866 http://svn.sourceforge.net/cegcc/?rev=866&view=rev Author: dannybackx Date: 2007-01-13 09:03:35 -0800 (Sat, 13 Jan 2007) Log Message: ----------- Replace printf calls by the tracing macros. Makes the code more uniform and tunable by setting a single variable. Modified Paths: -------------- trunk/cegcc/src/newlib/newlib/libc/sys/wince/glob.c trunk/cegcc/src/newlib/newlib/libc/sys/wince/malloc.c Modified: trunk/cegcc/src/newlib/newlib/libc/sys/wince/glob.c =================================================================== --- trunk/cegcc/src/newlib/newlib/libc/sys/wince/glob.c 2007-01-13 17:02:09 UTC (rev 865) +++ trunk/cegcc/src/newlib/newlib/libc/sys/wince/glob.c 2007-01-13 17:03:35 UTC (rev 866) @@ -904,15 +904,15 @@ { Char *p; - (void)printf("%s:\n", str); + WCETRACE(WCE_IO, "%s:\n", str); for (p = s; *p; p++) - (void)printf("%c", CHAR(*p)); - (void)printf("\n"); + WCETRACE(WCE_IO, "%c", CHAR(*p)); + WCETRACE(WCE_IO, "\n"); for (p = s; *p; p++) - (void)printf("%c", *p & M_PROTECT ? '"' : ' '); - (void)printf("\n"); + WCETRACE(WCE_IO, "%c", *p & M_PROTECT ? '"' : ' '); + WCETRACE(WCE_IO, "\n"); for (p = s; *p; p++) - (void)printf("%c", ismeta(*p) ? '_' : ' '); - (void)printf("\n"); + WCETRACE(WCE_IO, "%c", ismeta(*p) ? '_' : ' '); + WCETRACE(WCE_IO, "\n"); } #endif Modified: trunk/cegcc/src/newlib/newlib/libc/sys/wince/malloc.c =================================================================== --- trunk/cegcc/src/newlib/newlib/libc/sys/wince/malloc.c 2007-01-13 17:02:09 UTC (rev 865) +++ trunk/cegcc/src/newlib/newlib/libc/sys/wince/malloc.c 2007-01-13 17:03:35 UTC (rev 866) @@ -5046,7 +5046,7 @@ static region_list_entry *g_last; void *result = (void *) MORECORE_FAILURE; #ifdef TRACE - printf ("sbrk %d\n", size); + WCETRACE(WCE_MEM, "sbrk %d\n", size); #endif #if defined (USE_MALLOC_LOCK) && defined (NEEDED) /* Wait for spin lock */ @@ -5103,7 +5103,7 @@ /* Assert postconditions */ assert ((unsigned) base_committed % g_pagesize == 0); #ifdef TRACE - printf ("Commit %p %d\n", base_committed, remaining_commit_size); + WCETRACE(WCE_MEM, "Commit %p %d\n", base_committed, remaining_commit_size); #endif /* Adjust the regions commit top */ g_last->top_committed = (char *) base_committed + remaining_commit_size; @@ -5129,7 +5129,7 @@ /* Assert postconditions */ assert ((unsigned) memory_info.BaseAddress % g_pagesize == 0); #ifdef TRACE - printf ("Query %p %d %s\n", memory_info.BaseAddress, memory_info.RegionSize, + WCETRACE(WCE_MEM, "Query %p %d %s\n", memory_info.BaseAddress, memory_info.RegionSize, memory_info.State == MEM_FREE ? "FREE": (memory_info.State == MEM_RESERVE ? "RESERVED": (memory_info.State == MEM_COMMIT ? "COMMITTED": "?"))); @@ -5173,7 +5173,7 @@ /* Assert postconditions */ assert ((unsigned) base_reserved % g_regionsize == 0); #ifdef TRACE - printf ("Reserve %p %d\n", base_reserved, reserve_size); + WCETRACE(WCE_MEM, "Reserve %p %d\n", base_reserved, reserve_size); #endif /* Did we get contiguous memory? */ if (contiguous) { @@ -5211,7 +5211,7 @@ /* Assert postconditions */ assert ((unsigned) base_committed % g_pagesize == 0); #ifdef TRACE - printf ("Commit %p %d\n", base_committed, commit_size); + WCETRACE(WCE_MEM, "Commit %p %d\n", base_committed, commit_size); #endif /* Adjust the regions commit top */ g_last->top_committed = (char *) base_committed + commit_size; @@ -5239,7 +5239,7 @@ if (! rc) goto sbrk_exit; #ifdef TRACE - printf ("Release %p %d\n", base_reserved, release_size); + WCETRACE(WCE_MEM, "Release %p %d\n", base_reserved, release_size); #endif } /* Adjust deallocation size */ @@ -5265,7 +5265,7 @@ if (! rc) goto sbrk_exit; #ifdef TRACE - printf ("Decommit %p %d\n", base_committed, decommit_size); + WCETRACE(WCE_MEM, "Decommit %p %d\n", base_committed, decommit_size); #endif } /* Adjust deallocation size and regions commit and allocate top */ @@ -5308,7 +5308,7 @@ static long g_pagesize; static long g_regionsize; #ifdef TRACE - printf ("mmap %d\n", size); + WCETRACE(WCE_MEM, "mmap %d\n", size); #endif #if defined (USE_MALLOC_LOCK) && defined (NEEDED) /* Wait for spin lock */ @@ -5340,7 +5340,7 @@ /* Assert postconditions */ assert ((unsigned) ptr % g_regionsize == 0); #ifdef TRACE - printf ("Commit %p %d\n", ptr, size); + WCETRACE(WCE_MEM, "Commit %p %d\n", ptr, size); #endif mmap_exit: #if defined (USE_MALLOC_LOCK) && defined (NEEDED) @@ -5356,7 +5356,7 @@ static long g_regionsize; int rc = MUNMAP_FAILURE; #ifdef TRACE - printf ("munmap %p %d\n", ptr, size); + WCETRACE(WCE_MEM, "munmap %p %d\n", ptr, size); #endif #if defined (USE_MALLOC_LOCK) && defined (NEEDED) /* Wait for spin lock */ @@ -5376,7 +5376,7 @@ goto munmap_exit; rc = 0; #ifdef TRACE - printf ("Release %p %d\n", ptr, size); + WCETRACE(WCE_MEM, "Release %p %d\n", ptr, size); #endif munmap_exit: #if defined (USE_MALLOC_LOCK) && defined (NEEDED) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2007-01-13 17:02:14
|
Revision: 865 http://svn.sourceforge.net/cegcc/?rev=865&view=rev Author: dannybackx Date: 2007-01-13 09:02:09 -0800 (Sat, 13 Jan 2007) Log Message: ----------- Make the code in this directory less verbose as agreed, see the list. Modified Paths: -------------- trunk/cegcc/src/newlib/newlib/libc/sys/wince/trace.c Modified: trunk/cegcc/src/newlib/newlib/libc/sys/wince/trace.c =================================================================== --- trunk/cegcc/src/newlib/newlib/libc/sys/wince/trace.c 2007-01-01 17:10:12 UTC (rev 864) +++ trunk/cegcc/src/newlib/newlib/libc/sys/wince/trace.c 2007-01-13 17:02:09 UTC (rev 865) @@ -14,7 +14,7 @@ static HANDLE __wcetracehnd = NULL; static int __wcetrace = 0; -static int __wcetrace_debugger = WCE_IO | WCE_NETWORK; /* Used to be WCE_ALL */ +static int __wcetrace_debugger = 0; /* Used to be WCE_ALL */ void WCETRACESET(int trace) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2007-01-01 17:10:16
|
Revision: 864 http://svn.sourceforge.net/cegcc/?rev=864&view=rev Author: dannybackx Date: 2007-01-01 09:10:12 -0800 (Mon, 01 Jan 2007) Log Message: ----------- This one appears to work. Modified Paths: -------------- trunk/cegcc/scripts/linux/cegcc.spec trunk/cegcc/scripts/linux/rpm-create-source.sh Modified: trunk/cegcc/scripts/linux/cegcc.spec =================================================================== --- trunk/cegcc/scripts/linux/cegcc.spec 2006-12-31 13:00:44 UTC (rev 863) +++ trunk/cegcc/scripts/linux/cegcc.spec 2007-01-01 17:10:12 UTC (rev 864) @@ -1,68 +1,56 @@ Summary: CeGCC offers cross-development to create Windows CE apps for ARM processors Name: cegcc -Version: 0.11 +%define version 0.12 +Version: 0.12 Release: 1 License: open Packager: Danny Backx <dan...@us...> Group: Development/Tools -Prefixes: /opt +Prefix: /opt/cegcc # Source: http://sourceforge.net/project/showfiles.php?group_id=173455 -Source: /tmp/cegcc-src-0.12.tar.gz -# BuildRoot: /tmp/cegcc +Source: /tmp/cegcc-src-%{version}.tar.gz +BuildRoot: %{_tmppath}/%{name}-buildroot %description CeGCC -# -# In the scripts run from "rpmbuild -ba cegcc.spec", we appear to have -# access to these variables : -# RPM_OPT_FLAGS=-O2 ... -# RPM_PACKAGE_RELEASE=0.06 -# RPM_PACKAGE_NAME=CeGCC -# RPM_SOURCE_DIR=/usr/src/RPM/SOURCES -# RPM_PACKAGE_VERSION=0.06 -# RPM_OS=linux -# RPM_DOC_DIR=/usr/share/doc -# RPM_BUILD_DIR=/usr/src/RPM/BUILD -# RPM_ARCH=i386 -# %prep -%setup -n cegcc-0.12 +%setup -q +# %setup -n cegcc-0.12 -echo script - %build -export MY_RPM_PREFIX=/tmp/rpm-$RPM_PACKAGE_NAME-$RPM_PACKAGE_RELEASE +rm -rf $RPM_BUILD_ROOT +export PREFIX=/opt/cegcc cd src || exit 1 +# sh build-cegcc.sh . $RPM_BUILD_ROOT $PREFIX all || exit 1 sh build-cegcc.sh all || exit 1 -sh build-mingw32ce.sh all || exit 1 %install -# Nothing to do +cd / +rm -rf $RPM_BUILD_ROOT +mkdir $RPM_BUILD_ROOT +tar cf - opt/cegcc | (cd $RPM_BUILD_ROOT; tar xf -) +%clean +rm -rf $RPM_BUILD_ROOT + %files -/opt/cegcc/arm-wince-cegcc -/opt/mingw32ce/arm-wince-mingw32ce -%attr(755, root, root) /opt/cegcc/bin -/opt/cegcc/include -/opt/cegcc/lib -/opt/cegcc/libexec -/opt/cegcc/share -/opt/cegcc/COPYING -/opt/cegcc/COPYING.LIB -/opt/cegcc/NEWS -/opt/cegcc/README -%attr(755, root, root) /opt/mingw32ce/bin -/opt/mingw32ce/include -/opt/mingw32ce/lib -/opt/mingw32ce/libexec -/opt/mingw32ce/share -/opt/mingw32ce/COPYING -/opt/mingw32ce/COPYING.LIB -/opt/mingw32ce/NEWS -/opt/mingw32ce/README +/opt/cegcc +#/opt/cegcc/arm-wince-cegcc +#%attr(755, root, root) /opt/cegcc/bin +#/opt/cegcc/include +#/opt/cegcc/lib +#/opt/cegcc/libexec +#/opt/cegcc/share +#/opt/cegcc/COPYING +#/opt/cegcc/COPYING.LIB +#/opt/cegcc/NEWS +#/opt/cegcc/README %changelog +* Sat Dec 31 2006 Danny Backx <dan...@us...> +- Strip out mingw32ce. + * Sat Dec 30 2006 Danny Backx <dan...@us...> - Adapt to Pedro's build scripts and /opt/cegcc and /opt/mingw32ce . Modified: trunk/cegcc/scripts/linux/rpm-create-source.sh =================================================================== --- trunk/cegcc/scripts/linux/rpm-create-source.sh 2006-12-31 13:00:44 UTC (rev 863) +++ trunk/cegcc/scripts/linux/rpm-create-source.sh 2007-01-01 17:10:12 UTC (rev 864) @@ -27,11 +27,11 @@ # cd $TOP_SRCDIR ln -s . cegcc-$CEGCC_RELEASE -# tar --exclude-from=/tmp/exclude-$$ \ -# -cz -f /usr/src/rpm/SOURCES/cegcc-src-$CEGCC_RELEASE.tar.gz \ -# cegcc-$CEGCC_RELEASE/NEWS cegcc-$CEGCC_RELEASE/README \ -# cegcc-$CEGCC_RELEASE/scripts cegcc-$CEGCC_RELEASE/docs \ -# cegcc-$CEGCC_RELEASE/website cegcc-$CEGCC_RELEASE/test cegcc-$CEGCC_RELEASE/src +tar --exclude-from=/tmp/exclude-$$ \ + -cz -f /usr/src/rpm/SOURCES/cegcc-src-$CEGCC_RELEASE.tar.gz \ + cegcc-$CEGCC_RELEASE/NEWS cegcc-$CEGCC_RELEASE/README \ + cegcc-$CEGCC_RELEASE/scripts cegcc-$CEGCC_RELEASE/docs \ + cegcc-$CEGCC_RELEASE/website cegcc-$CEGCC_RELEASE/test cegcc-$CEGCC_RELEASE/src rm cegcc-$CEGCC_RELEASE # # Remove temp file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-31 13:00:48
|
Revision: 863 http://svn.sourceforge.net/cegcc/?rev=863&view=rev Author: dannybackx Date: 2006-12-31 05:00:44 -0800 (Sun, 31 Dec 2006) Log Message: ----------- Pass the right parameters to trigger the code that Pedro pointed to in the src/mingw/Makefile.in which I had already copied to src/profile/Makefile.in . Modified Paths: -------------- trunk/cegcc/src/ChangeLog trunk/cegcc/src/build-cegcc.sh trunk/cegcc/src/build-mingw32ce.sh Modified: trunk/cegcc/src/ChangeLog =================================================================== --- trunk/cegcc/src/ChangeLog 2006-12-31 12:53:21 UTC (rev 862) +++ trunk/cegcc/src/ChangeLog 2006-12-31 13:00:44 UTC (rev 863) @@ -1,3 +1,9 @@ +2006-12-31 Danny Backx <dan...@us...> + + * build-mingw32ce.sh, build-cegcc.sh (build_profile) : Copy the + options from the mingw_runtime build, so src/profile/Makefile.in gets + the right parameters and install stuff in the right place. + 2006-12-30 Danny Backx <dan...@us...> * build-mingw32ce.sh, build-cegcc.sh (build_profile) : Change the Modified: trunk/cegcc/src/build-cegcc.sh =================================================================== --- trunk/cegcc/src/build-cegcc.sh 2006-12-31 12:53:21 UTC (rev 862) +++ trunk/cegcc/src/build-cegcc.sh 2006-12-31 13:00:44 UTC (rev 863) @@ -289,8 +289,10 @@ cd ${BUILD_DIR}/profile || exit 1 ${BASE_DIRECTORY}/profile/configure \ - --host=${TARGET} \ - --prefix=${PREFIX} \ + --build=${BUILD} \ + --host=${TARGET} \ + --target=${TARGET} \ + --prefix=${PREFIX} \ || exit make || exit 1 Modified: trunk/cegcc/src/build-mingw32ce.sh =================================================================== --- trunk/cegcc/src/build-mingw32ce.sh 2006-12-31 12:53:21 UTC (rev 862) +++ trunk/cegcc/src/build-mingw32ce.sh 2006-12-31 13:00:44 UTC (rev 863) @@ -283,8 +283,10 @@ cd ${BUILD_DIR}/profile || exit 1 ${BASE_DIRECTORY}/profile/configure \ - --host=${TARGET} \ - --prefix=${PREFIX} \ + --build=${BUILD} \ + --host=${TARGET} \ + --target=${TARGET} \ + --prefix=${PREFIX} \ || exit make || exit 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-31 12:53:23
|
Revision: 862 http://svn.sourceforge.net/cegcc/?rev=862&view=rev Author: dannybackx Date: 2006-12-31 04:53:21 -0800 (Sun, 31 Dec 2006) Log Message: ----------- Remove this branch. Removed Paths: ------------- branches/danny/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 16:20:19
|
Revision: 861 http://svn.sourceforge.net/cegcc/?rev=861&view=rev Author: dannybackx Date: 2006-12-30 08:20:14 -0800 (Sat, 30 Dec 2006) Log Message: ----------- Add a working coverage example. Added Paths: ----------- trunk/cegcc/docs/examples/coverage/ trunk/cegcc/docs/examples/coverage/Makefile trunk/cegcc/docs/examples/coverage/a.c trunk/cegcc/docs/examples/coverage/a.gcno trunk/cegcc/docs/examples/coverage/b.c trunk/cegcc/docs/examples/coverage/b.gcno trunk/cegcc/docs/examples/coverage/fibo.c trunk/cegcc/docs/examples/coverage/fibo.c.gcov trunk/cegcc/docs/examples/coverage/fibo.exe trunk/cegcc/docs/examples/coverage/fibo.gcda trunk/cegcc/docs/examples/coverage/fibo.gcno trunk/cegcc/docs/examples/coverage/m1.c trunk/cegcc/docs/examples/coverage/m1.exe trunk/cegcc/docs/examples/coverage/m1.gcno trunk/cegcc/docs/examples/coverage/path.c Added: trunk/cegcc/docs/examples/coverage/Makefile =================================================================== --- trunk/cegcc/docs/examples/coverage/Makefile (rev 0) +++ trunk/cegcc/docs/examples/coverage/Makefile 2006-12-30 16:20:14 UTC (rev 861) @@ -0,0 +1,37 @@ +.SUFFIXES: .exe .c .h .rc .rsc .C + +ARCH= arm-wince-cegcc +CC= ${ARCH}-gcc ${CFLAGS} + +EXECS= fibo.exe m1.exe +CFLAGS= -g -D_WIN32_IE=0x0400 --coverage + +.o.exe: + ${ARCH}-gcc ${CFLAGS} -o $@ $? + +.c.exe: + ${ARCH}-gcc ${CFLAGS} -o $@ $? + +all:: ${EXECS} + +clean: + -rm -f *.o *.exe *.rsc *.gcno *.gcda *.gcov + +dist: + for i in $(EXECS) ; \ + do \ + pcp $$i ":/storage card/devel/"$$i ; \ + done + +m1.exe: m1.o a.o b.o + +fibo.gcda: fibo.exe + pcp fibo.exe ":/storage card/devel/fibo.exe" + -prm "/storage card/devel/fibo.gcda" + prun "/storage card/devel/fibo.exe" + sleep 4 + pcp ":/storage card/devel/fibo.gcda" fibo.gcda + -prm "/storage card/devel/fibo.gcda" + +fibo.c.gcov: fibo.gcda + ${ARCH}-gcov -a fibo.c Property changes on: trunk/cegcc/docs/examples/coverage/Makefile ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/cegcc/docs/examples/coverage/a.c =================================================================== --- trunk/cegcc/docs/examples/coverage/a.c (rev 0) +++ trunk/cegcc/docs/examples/coverage/a.c 2006-12-30 16:20:14 UTC (rev 861) @@ -0,0 +1,14 @@ +/* + * Profiling test + */ +void func_a(int i) +{ + /* Spend some time */ + int c, j; + + for (c=0; c < i; c++) + for (j=0; j<100; j++) + ; + + return; +} Property changes on: trunk/cegcc/docs/examples/coverage/a.c ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/cegcc/docs/examples/coverage/a.gcno =================================================================== (Binary files differ) Property changes on: trunk/cegcc/docs/examples/coverage/a.gcno ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/cegcc/docs/examples/coverage/b.c =================================================================== --- trunk/cegcc/docs/examples/coverage/b.c (rev 0) +++ trunk/cegcc/docs/examples/coverage/b.c 2006-12-30 16:20:14 UTC (rev 861) @@ -0,0 +1,14 @@ +/* + * Profiling test + */ +int fibo(int x) +{ + if (x < 3) + return 1; + return fibo(x-1) + fibo(x-2); +} + +int func_b(int i) +{ + return fibo(i); +} Property changes on: trunk/cegcc/docs/examples/coverage/b.c ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/cegcc/docs/examples/coverage/b.gcno =================================================================== (Binary files differ) Property changes on: trunk/cegcc/docs/examples/coverage/b.gcno ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/cegcc/docs/examples/coverage/fibo.c =================================================================== --- trunk/cegcc/docs/examples/coverage/fibo.c (rev 0) +++ trunk/cegcc/docs/examples/coverage/fibo.c 2006-12-30 16:20:14 UTC (rev 861) @@ -0,0 +1,39 @@ +#include <windows.h> +#include <stdio.h> +#include <stdlib.h> +#include <unistd.h> + +#define FN "/storage card/devel/fibo.txt" + +int fibo(int n) +{ + if (n < 3) + return 1; + return fibo(n-1) + fibo(n-2); +} + +int APIENTRY WinMain(HINSTANCE a,HINSTANCE b,LPWSTR c,int d) +{ + FILE *f; + int i, r, len; + wchar_t *ws, buf[MAXPATHLEN]; + char *s; + + f = fopen(FN, "w"); + len = GetModuleFileNameW(NULL, buf, MAXPATHLEN); + s = malloc(len+1); + wcstombs(s, buf, len+1); + fprintf(f, "Command [%s] ", s); + ws = GetCommandLineW(); + len = wcslen(ws); + s = malloc(len+1); + wcstombs(s, ws, len+1); + fprintf(f, "param [%s]\r\n", s); + + for (i=1; i<20; i++) { + r = fibo(i); + fprintf(f, "fibo(%d) = %d\r\n", i, r); + } + fclose(f); + exit(0); +} Property changes on: trunk/cegcc/docs/examples/coverage/fibo.c ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/cegcc/docs/examples/coverage/fibo.c.gcov =================================================================== --- trunk/cegcc/docs/examples/coverage/fibo.c.gcov (rev 0) +++ trunk/cegcc/docs/examples/coverage/fibo.c.gcov 2006-12-30 16:20:14 UTC (rev 861) @@ -0,0 +1,52 @@ + -: 0:Source:fibo.c + -: 0:Graph:fibo.gcno + -: 0:Data:fibo.gcda + -: 0:Runs:1 + -: 0:Programs:1 + -: 1:#include <windows.h> + -: 2:#include <stdio.h> + -: 3:#include <stdlib.h> + -: 4:#include <unistd.h> + -: 5: + -: 6:#define FN "/storage card/devel/fibo.txt" + -: 7: + -: 8:int fibo(int n) + 21871: 9:{ + 21871: 10: if (n < 3) + 21871: 10-block 0 + 10945: 11: return 1; + 10945: 11-block 0 + 21871: 12: return fibo(n-1) + fibo(n-2); + 10926: 12-block 0 + 21871: 12-block 1 + -: 13:} + -: 14: + -: 15:int APIENTRY WinMain(HINSTANCE a,HINSTANCE b,LPWSTR c,int d) + 1: 16:{ + -: 17: FILE *f; + -: 18: int i, r, len; + -: 19: wchar_t *ws, buf[MAXPATHLEN]; + -: 20: char *s; + -: 21: + 1: 22: f = fopen(FN, "w"); + 1: 22-block 0 + 1: 23: len = GetModuleFileNameW(NULL, buf, MAXPATHLEN); + 1: 24: s = malloc(len+1); + 1: 25: wcstombs(s, buf, len+1); + 1: 26: fprintf(f, "Command [%s] ", s); + 1: 27: ws = GetCommandLineW(); + 1: 28: len = wcslen(ws); + 1: 29: s = malloc(len+1); + 1: 30: wcstombs(s, ws, len+1); + 1: 31: fprintf(f, "param [%s]\r\n", s); + -: 32: + 20: 33: for (i=1; i<20; i++) { + 20: 33-block 0 + 19: 34: r = fibo(i); + 19: 34-block 0 + 19: 35: fprintf(f, "fibo(%d) = %d\r\n", i, r); + -: 36: } + 1: 37: fclose(f); + 1: 37-block 0 + 1: 38: exit(0); + -: 39:} Added: trunk/cegcc/docs/examples/coverage/fibo.exe =================================================================== (Binary files differ) Property changes on: trunk/cegcc/docs/examples/coverage/fibo.exe ___________________________________________________________________ Name: svn:executable + * Name: svn:mime-type + application/octet-stream Added: trunk/cegcc/docs/examples/coverage/fibo.gcda =================================================================== (Binary files differ) Property changes on: trunk/cegcc/docs/examples/coverage/fibo.gcda ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/cegcc/docs/examples/coverage/fibo.gcno =================================================================== (Binary files differ) Property changes on: trunk/cegcc/docs/examples/coverage/fibo.gcno ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/cegcc/docs/examples/coverage/m1.c =================================================================== --- trunk/cegcc/docs/examples/coverage/m1.c (rev 0) +++ trunk/cegcc/docs/examples/coverage/m1.c 2006-12-30 16:20:14 UTC (rev 861) @@ -0,0 +1,28 @@ +#include <windows.h> + +void bye(void) +{ + MessageBox(NULL, L"Stop", L"Halt", 0); +} + +/* + * Profiling test + */ +extern void func_a(int i); +extern int fibo(int x); +extern int func_b(int i); + +main(int argc, char *argv[]) +{ + int i; + + (void)atexit(bye); + + for (i=1; i<10; i++) { + func_a(i); + } + + for (i=1; i<30; i++) { + (void) func_b(i); + } +} Property changes on: trunk/cegcc/docs/examples/coverage/m1.c ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/cegcc/docs/examples/coverage/m1.exe =================================================================== (Binary files differ) Property changes on: trunk/cegcc/docs/examples/coverage/m1.exe ___________________________________________________________________ Name: svn:executable + * Name: svn:mime-type + application/octet-stream Added: trunk/cegcc/docs/examples/coverage/m1.gcno =================================================================== (Binary files differ) Property changes on: trunk/cegcc/docs/examples/coverage/m1.gcno ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/cegcc/docs/examples/coverage/path.c =================================================================== --- trunk/cegcc/docs/examples/coverage/path.c (rev 0) +++ trunk/cegcc/docs/examples/coverage/path.c 2006-12-30 16:20:14 UTC (rev 861) @@ -0,0 +1,11 @@ +#include <windows.h> +#include <aygshell.h> + +int WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow) +{ + wchar_t s[MAX_PATH]; + + (void)SHGetAutoRunPath(s); + MessageBoxW(0, s, L"SHGetAutoRunPath", 0); + exit(0); +} Property changes on: trunk/cegcc/docs/examples/coverage/path.c ___________________________________________________________________ Name: svn:eol-style + native This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 16:06:20
|
Revision: 860 http://svn.sourceforge.net/cegcc/?rev=860&view=rev Author: dannybackx Date: 2006-12-30 08:06:18 -0800 (Sat, 30 Dec 2006) Log Message: ----------- Add a working profiling example. Added Paths: ----------- trunk/cegcc/docs/examples/profile/ trunk/cegcc/docs/examples/profile/Makefile trunk/cegcc/docs/examples/profile/fibo.c trunk/cegcc/docs/examples/profile/fibo.exe trunk/cegcc/docs/examples/profile/fibo.explain trunk/cegcc/docs/examples/profile/fibo.gmon Added: trunk/cegcc/docs/examples/profile/Makefile =================================================================== --- trunk/cegcc/docs/examples/profile/Makefile (rev 0) +++ trunk/cegcc/docs/examples/profile/Makefile 2006-12-30 16:06:18 UTC (rev 860) @@ -0,0 +1,33 @@ +.SUFFIXES: .exe .c .h .rc .rsc .C + +ARCH= arm-wince-cegcc +CC= ${ARCH}-gcc ${CFLAGS} + +CFLAGS= -g -D_WIN32_IE=0x0400 -pg + +.o.exe: + ${ARCH}-gcc ${CFLAGS} -o $@ $? + +.c.exe: + ${ARCH}-gcc ${CFLAGS} -o $@ $? + +.C.exe: + ${ARCH}-g++ ${CFLAGS} -o $@ $? + +all:: fibo.exe fibo.explain + +clean: + -rm -f *.o *.exe *.rsc gmon.out *.explain *.gmon + +dist: + pcp fibo.exe ":/storage card/devel/fibo.exe" + +fibo.explain: fibo.gmon fibo.exe + ${ARCH}-gprof -q -x -l fibo.exe fibo.gmon > fibo.explain + +fibo.gmon: fibo.exe + pcp fibo.exe ":/storage card/devel/fibo.exe" + prun "/storage card/devel/fibo.exe" + sleep 5 + pcp ":/storage card/devel/gmon.out" fibo.gmon + prm "/storage card/devel/gmon.out" Property changes on: trunk/cegcc/docs/examples/profile/Makefile ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/cegcc/docs/examples/profile/fibo.c =================================================================== --- trunk/cegcc/docs/examples/profile/fibo.c (rev 0) +++ trunk/cegcc/docs/examples/profile/fibo.c 2006-12-30 16:06:18 UTC (rev 860) @@ -0,0 +1,39 @@ +#include <windows.h> +#include <stdio.h> +#include <stdlib.h> +#include <unistd.h> + +#define FN "/storage card/devel/fibo.txt" + +int fibo(int n) +{ + if (n < 3) + return 1; + return fibo(n-1) + fibo(n-2); +} + +int main(void) +{ + FILE *f; + int i, r, len; + wchar_t *ws, buf[MAXPATHLEN]; + char *s; + + f = fopen(FN, "w"); + len = GetModuleFileNameW(NULL, buf, MAXPATHLEN); + s = malloc(len+1); + wcstombs(s, buf, len+1); + fprintf(f, "Command [%s] ", s); + ws = GetCommandLineW(); + len = wcslen(ws); + s = malloc(len+1); + wcstombs(s, ws, len+1); + fprintf(f, "param [%s]\r\n", s); + + for (i=1; i<20; i++) { + r = fibo(i); + fprintf(f, "fibo(%d) = %d\r\n", i, r); + } + fclose(f); + exit(0); +} Property changes on: trunk/cegcc/docs/examples/profile/fibo.c ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/cegcc/docs/examples/profile/fibo.exe =================================================================== (Binary files differ) Property changes on: trunk/cegcc/docs/examples/profile/fibo.exe ___________________________________________________________________ Name: svn:executable + * Name: svn:mime-type + application/octet-stream Added: trunk/cegcc/docs/examples/profile/fibo.explain =================================================================== --- trunk/cegcc/docs/examples/profile/fibo.explain (rev 0) +++ trunk/cegcc/docs/examples/profile/fibo.explain 2006-12-30 16:06:18 UTC (rev 860) @@ -0,0 +1,97 @@ + Call graph (explanation follows) + + +granularity: each sample hit covers 4 byte(s) no time propagated + +index % time self children called name + 0.00 0.00 19/21871 main (fibo.c:34 @ 11238) [45] + 0.00 0.00 21852/21871 fibo (fibo.c:12 @ 110e8) [28] +[1] 0.0 0.00 0.00 21871 fibo (fibo.c:9 @ 110b0) [1] +----------------------------------------------- + + This table describes the call tree of the program, and was sorted by + the total amount of time spent in each function and its children. + + Each entry in this table consists of several lines. The line with the + index number at the left hand margin lists the current function. + The lines above it list the functions that called this function, + and the lines below it list the functions this one called. + This line lists: + index A unique number given to each element of the table. + Index numbers are sorted numerically. + The index number is printed next to every function name so + it is easier to look up where the function in the table. + + % time This is the percentage of the `total' time that was spent + in this function and its children. Note that due to + different viewpoints, functions excluded by options, etc, + these numbers will NOT add up to 100%. + + self This is the total amount of time spent in this function. + + children This is the total amount of time propagated into this + function by its children. + + called This is the number of times the function was called. + If the function called itself recursively, the number + only includes non-recursive calls, and is followed by + a `+' and the number of recursive calls. + + name The name of the current function. The index number is + printed after it. If the function is a member of a + cycle, the cycle number is printed between the + function's name and the index number. + + + For the function's parents, the fields have the following meanings: + + self This is the amount of time that was propagated directly + from the function into this parent. + + children This is the amount of time that was propagated from + the function's children into this parent. + + called This is the number of times this parent called the + function `/' the total number of times the function + was called. Recursive calls to the function are not + included in the number after the `/'. + + name This is the name of the parent. The parent's index + number is printed after it. If the parent is a + member of a cycle, the cycle number is printed between + the name and the index number. + + If the parents of the function cannot be determined, the word + `<spontaneous>' is printed in the `name' field, and all the other + fields are blank. + + For the function's children, the fields have the following meanings: + + self This is the amount of time that was propagated directly + from the child into the function. + + children This is the amount of time that was propagated from the + child's children to the function. + + called This is the number of times the function called + this child `/' the total number of times the child + was called. Recursive calls by the child are not + listed in the number after the `/'. + + name This is the name of the child. The child's index + number is printed after it. If the child is a + member of a cycle, the cycle number is printed + between the name and the index number. + + If there are any cycles (circles) in the call graph, there is an + entry for the cycle-as-a-whole. This entry shows who called the + cycle (as parents) and the members of the cycle (as children.) + The `+' recursive calls entry shows the number of function calls that + were internal to the cycle, and the calls entry for each member shows, + for that member, how many times it was called from other members of + the cycle. + + +Index by function name + + [1] fibo (fibo.c:9 @ 110b0) Added: trunk/cegcc/docs/examples/profile/fibo.gmon =================================================================== (Binary files differ) Property changes on: trunk/cegcc/docs/examples/profile/fibo.gmon ___________________________________________________________________ Name: svn:mime-type + application/octet-stream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 15:58:29
|
Revision: 859 http://svn.sourceforge.net/cegcc/?rev=859&view=rev Author: dannybackx Date: 2006-12-30 07:58:27 -0800 (Sat, 30 Dec 2006) Log Message: ----------- Avoid the use of CFLAGS to pass -DNO_UNDERSCORES, as Pedro pointed out. Modified Paths: -------------- trunk/cegcc/src/ChangeLog trunk/cegcc/src/build-cegcc.sh trunk/cegcc/src/build-mingw32ce.sh trunk/cegcc/src/profile/ChangeLog.mingw32ce trunk/cegcc/src/profile/configure trunk/cegcc/src/profile/configure.in trunk/cegcc/src/profile/profile/Makefile.in trunk/cegcc/src/profile/profile/configure trunk/cegcc/src/profile/profile/configure.in Modified: trunk/cegcc/src/ChangeLog =================================================================== --- trunk/cegcc/src/ChangeLog 2006-12-30 15:37:30 UTC (rev 858) +++ trunk/cegcc/src/ChangeLog 2006-12-30 15:58:27 UTC (rev 859) @@ -1,3 +1,9 @@ +2006-12-30 Danny Backx <dan...@us...> + + * build-mingw32ce.sh, build-cegcc.sh (build_profile) : Change the + approach to deal with -DNO_UNDERSCORES so we keep CFLAGS free for use + by the command line. + 2006-12-24 Danny Backx <dan...@us...> * build-mingw32ce.sh, build-cegcc.sh (build_profile) : Add. Modified: trunk/cegcc/src/build-cegcc.sh =================================================================== --- trunk/cegcc/src/build-cegcc.sh 2006-12-30 15:37:30 UTC (rev 858) +++ trunk/cegcc/src/build-cegcc.sh 2006-12-30 15:58:27 UTC (rev 859) @@ -288,16 +288,11 @@ mkdir -p ${BUILD_DIR}/profile || exit 1 cd ${BUILD_DIR}/profile || exit 1 - PREV_CFLAGS=${CFLAGS} - export CFLAGS="-DNO_UNDERSCORES" - ${BASE_DIRECTORY}/profile/configure \ --host=${TARGET} \ --prefix=${PREFIX} \ || exit - export CFLAGS=${PREV_CFLAGS} - make || exit 1 make install || exit 1 } Modified: trunk/cegcc/src/build-mingw32ce.sh =================================================================== --- trunk/cegcc/src/build-mingw32ce.sh 2006-12-30 15:37:30 UTC (rev 858) +++ trunk/cegcc/src/build-mingw32ce.sh 2006-12-30 15:58:27 UTC (rev 859) @@ -282,16 +282,11 @@ mkdir -p ${BUILD_DIR}/profile || exit 1 cd ${BUILD_DIR}/profile || exit 1 - PREV_CFLAGS=${CFLAGS} - export CFLAGS="-DNO_UNDERSCORES" - ${BASE_DIRECTORY}/profile/configure \ --host=${TARGET} \ --prefix=${PREFIX} \ || exit - export CFLAGS=${PREV_CFLAGS} - make || exit 1 make install || exit 1 } Modified: trunk/cegcc/src/profile/ChangeLog.mingw32ce =================================================================== --- trunk/cegcc/src/profile/ChangeLog.mingw32ce 2006-12-30 15:37:30 UTC (rev 858) +++ trunk/cegcc/src/profile/ChangeLog.mingw32ce 2006-12-30 15:58:27 UTC (rev 859) @@ -1,5 +1,10 @@ 2006-12-30 Danny Backx <dan...@us...> + * configure.in profile/Makefile.in profile/configure.in : Avoid use of + CFLAGS to pass -DNO_UNDERSCORES. + +2006-12-30 Danny Backx <dan...@us...> + * profile : Create a profile/profile tree as a copy of the mingw/profile tree. * profile/gmon.c : Rewrite to avoid stdio, use native WinCE I/O Modified: trunk/cegcc/src/profile/configure =================================================================== --- trunk/cegcc/src/profile/configure 2006-12-30 15:37:30 UTC (rev 858) +++ trunk/cegcc/src/profile/configure 2006-12-30 15:58:27 UTC (rev 859) @@ -2277,6 +2277,7 @@ + if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. set dummy ${ac_tool_prefix}ar; ac_word=$2 Modified: trunk/cegcc/src/profile/configure.in =================================================================== --- trunk/cegcc/src/profile/configure.in 2006-12-30 15:37:30 UTC (rev 858) +++ trunk/cegcc/src/profile/configure.in 2006-12-30 15:58:27 UTC (rev 859) @@ -25,6 +25,7 @@ ""|*cygwin*) all_dlls_host='all_dlls_host' install_dlls_host='install_dlls_host';; esac + AC_SUBST(all_dlls_host) AC_SUBST(install_dlls_host) Modified: trunk/cegcc/src/profile/profile/Makefile.in =================================================================== --- trunk/cegcc/src/profile/profile/Makefile.in 2006-12-30 15:37:30 UTC (rev 858) +++ trunk/cegcc/src/profile/profile/Makefile.in 2006-12-30 15:58:27 UTC (rev 859) @@ -18,6 +18,7 @@ datadir = @datadir@ infodir = @infodir@ includedir = @includedir@ +UNDERSCORES = @UNDERSCORES@ SHELL = /bin/sh @@ -49,12 +50,8 @@ INCLUDES= -I$(srcdir) -# W32API_INCLUDE = @W32API_INCLUDE@ -# INCLUDES = -I$(srcdir) -I$(srcdir)/../include \ -# -nostdinc \ -# -iwithprefixbefore include -ALL_CFLAGS = $(CFLAGS) $(W32API_INCLUDE) $(INCLUDES) $(MNO_CYGWIN) -ALL_CXXFLAGS = $(CXXFLAGS) $(W32API_INCLUDE) $(INCLUDES) -nostdinc++ $(MNO_CYGWIN) +ALL_CFLAGS = $(CFLAGS) $(UNDERSCORES) $(W32API_INCLUDE) $(INCLUDES) $(MNO_CYGWIN) +ALL_CXXFLAGS = $(CXXFLAGS) $(UNDERSCORES) $(W32API_INCLUDE) $(INCLUDES) -nostdinc++ $(MNO_CYGWIN) AS = @AS@ AR = @AR@ Modified: trunk/cegcc/src/profile/profile/configure =================================================================== --- trunk/cegcc/src/profile/profile/configure 2006-12-30 15:37:30 UTC (rev 858) +++ trunk/cegcc/src/profile/profile/configure 2006-12-30 15:58:27 UTC (rev 859) @@ -272,7 +272,7 @@ PACKAGE_BUGREPORT= ac_unique_file="gcrt0.c" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC AS AR LD RANLIB DLLTOOL DLLWRAP build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CRT_ID RUNTIME MNO_CYGWIN LIBGMON_A CRT0S W32API_INCLUDE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC AS AR LD RANLIB DLLTOOL DLLWRAP build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CRT_ID RUNTIME MNO_CYGWIN LIBGMON_A CRT0S W32API_INCLUDE UNDERSCORES INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -1351,12 +1351,14 @@ MNO_CYGWIN= RUNTIME=crtdll CRT0S="gcrt1.o gcrt2.o" + UNDERSCORES="" ;; *cygwin*) CRT_ID=2 MNO_CYGWIN=-mno-cygwin RUNTIME=msvcrt CRT0S=gcrt0.o + UNDERSCORES="" # Do not build libm.a when building under Cygwin winsup. Otherwise, it'll # overwrite Cygwin's one. Likewise for libgmon.a. ;; @@ -1365,6 +1367,7 @@ MNO_CYGWIN= RUNTIME=coredll CRT0S="gcrt3.o" + UNDERSCORES=-DNO_UNDERSCORES ;; *) # Build it for MSVCRT by default. @@ -1372,6 +1375,7 @@ MNO_CYGWIN= RUNTIME=msvcrt CRT0S="gcrt1.o gcrt2.o" + UNDERSCORES="" ;; esac @@ -1384,6 +1388,7 @@ + # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: @@ -2124,6 +2129,7 @@ s,@LIBGMON_A@,$LIBGMON_A,;t t s,@CRT0S@,$CRT0S,;t t s,@W32API_INCLUDE@,$W32API_INCLUDE,;t t +s,@UNDERSCORES@,$UNDERSCORES,;t t s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t s,@INSTALL_DATA@,$INSTALL_DATA,;t t Modified: trunk/cegcc/src/profile/profile/configure.in =================================================================== --- trunk/cegcc/src/profile/profile/configure.in 2006-12-30 15:37:30 UTC (rev 858) +++ trunk/cegcc/src/profile/profile/configure.in 2006-12-30 15:58:27 UTC (rev 859) @@ -43,12 +43,14 @@ MNO_CYGWIN= RUNTIME=crtdll CRT0S="gcrt1.o gcrt2.o" + UNDERSCORES="" ;; *cygwin*) CRT_ID=2 MNO_CYGWIN=-mno-cygwin RUNTIME=msvcrt CRT0S=gcrt0.o + UNDERSCORES="" # Do not build libm.a when building under Cygwin winsup. Otherwise, it'll # overwrite Cygwin's one. Likewise for libgmon.a. ;; @@ -57,6 +59,7 @@ MNO_CYGWIN= RUNTIME=coredll CRT0S="gcrt3.o" + UNDERSCORES=-DNO_UNDERSCORES ;; *) # Build it for MSVCRT by default. @@ -64,6 +67,7 @@ MNO_CYGWIN= RUNTIME=msvcrt CRT0S="gcrt1.o gcrt2.o" + UNDERSCORES="" ;; esac @@ -75,6 +79,7 @@ AC_SUBST(LIBGMON_A) AC_SUBST(CRT0S) AC_SUBST(W32API_INCLUDE) +AC_SUBST(UNDERSCORES) AC_PROG_INSTALL AC_OUTPUT(Makefile) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 15:37:33
|
Revision: 858 http://svn.sourceforge.net/cegcc/?rev=858&view=rev Author: dannybackx Date: 2006-12-30 07:37:30 -0800 (Sat, 30 Dec 2006) Log Message: ----------- Removing old files. Modified Paths: -------------- trunk/cegcc/scripts/linux/cegcc.spec trunk/cegcc/scripts/linux/rpm-create-source.sh Removed Paths: ------------- trunk/cegcc/scripts/linux/build-binutils.sh trunk/cegcc/scripts/linux/build-dll.sh trunk/cegcc/scripts/linux/build-gcc.sh trunk/cegcc/scripts/linux/build-gdb.sh trunk/cegcc/scripts/linux/build-gpp.sh trunk/cegcc/scripts/linux/build-libs.sh trunk/cegcc/scripts/linux/build-libs2.sh trunk/cegcc/scripts/linux/build-mingw.sh trunk/cegcc/scripts/linux/build-newlib.sh trunk/cegcc/scripts/linux/build-stub.sh trunk/cegcc/scripts/linux/build.sh trunk/cegcc/scripts/linux/install-binutils.sh trunk/cegcc/scripts/linux/install-dll.sh trunk/cegcc/scripts/linux/install-docs.sh trunk/cegcc/scripts/linux/install-gcc.sh trunk/cegcc/scripts/linux/install-gdb.sh trunk/cegcc/scripts/linux/install-gpp.sh trunk/cegcc/scripts/linux/install-includes.sh trunk/cegcc/scripts/linux/install-libs.sh trunk/cegcc/scripts/linux/install-libs2.sh trunk/cegcc/scripts/linux/install-mingw-crt.sh trunk/cegcc/scripts/linux/install-mingw.sh trunk/cegcc/scripts/linux/install-newlib.sh trunk/cegcc/scripts/linux/install-stub.sh trunk/cegcc/scripts/linux/list-libs.sh trunk/cegcc/scripts/linux/rpm-build.sh trunk/cegcc/scripts/linux/rpm-install.sh trunk/cegcc/scripts/linux/settings.sh Deleted: trunk/cegcc/scripts/linux/build-binutils.sh =================================================================== --- trunk/cegcc/scripts/linux/build-binutils.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build-binutils.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,29 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Put the cleanup here instead of in the calling script -# -if [ -d $BUILD_DIR/binutils ]; then - rm -rf $BUILD_DIR/binutils -fi -# -mkdir -p $BUILD_DIR/binutils || exit 1 -cd $BUILD_DIR/binutils || exit 1 -# -export CFLAGS="" -export LDFLAGS="" -# -$TOP_SRCDIR/src/binutils/configure --prefix=$PREFIX \ - --exec-prefix=$PREFIX \ - --target=${TGT_ARCH} \ - --disable-nls \ - --includedir=$PREFIX/include || exit 1 -make || exit 1 -exit 0 Deleted: trunk/cegcc/scripts/linux/build-dll.sh =================================================================== --- trunk/cegcc/scripts/linux/build-dll.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build-dll.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,29 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -#if [ -d $BUILD_DIR/libs ]; then -# rm -rf $BUILD_DIR/libs -#fi -# -# Not in the MingW target -# -if [ $TGT_ARCH = arm-wince-mingw32ce ]; then - exit 0 -fi -# -# Non-standard build -# -cd $TOP_SRCDIR/src/cegcc/cegccdll || exit 1 -make clean TARGET=${TGT_ARCH} -make PREFIX=$PREFIX TARGET=${TGT_ARCH} || exit 1 -# -# End -# -exit 0 Deleted: trunk/cegcc/scripts/linux/build-gcc.sh =================================================================== --- trunk/cegcc/scripts/linux/build-gcc.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build-gcc.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,37 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Put the cleanup here instead of in the calling script -# -if [ -d $BUILD_DIR/gcc ]; then - rm -rf $BUILD_DIR/gcc -fi -# -mkdir -p $BUILD_DIR/gcc || exit 1 -cd $BUILD_DIR/gcc || exit 1 -# -$TOP_SRCDIR/src/gcc/configure \ - --prefix=$PREFIX \ - --enable-languages=c \ - --disable-interwork \ - --disable-threads \ - --disable-nls \ - --enable-checking \ - --disable-multilib \ - --without-headers \ - --target=$TGT_ARCH $MY_HOST_ARCH || exit 1 -# -# It is very important to specify the "all-gcc" target here, -# just making the default target won't work because we're building binutils, -# the compiler and libraries in separate directories. -# And we're doing this so we can upgrade them easier. -# -make all-gcc || exit 1 -exit 0 Deleted: trunk/cegcc/scripts/linux/build-gdb.sh =================================================================== --- trunk/cegcc/scripts/linux/build-gdb.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build-gdb.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,28 +0,0 @@ -#!/bin/sh -set -x -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Put the cleanup here instead of in the calling script -# -if [ -d $BUILD_DIR/gdb ]; then - rm -rf $BUILD_DIR/gdb -fi -# -mkdir -p $BUILD_DIR/gdb || exit 1 -cd $BUILD_DIR/gdb -# -CFLAGS="-I$TOP_SRCDIR/src/w32api/include -D__USE_W32_SOCKETS" -export CFLAGS -# -$TOP_SRCDIR/src/gdb/configure \ - --prefix=$PREFIX \ - --target=$TGT_ARCH || exit 1 -make || exit 1 -exit 0 Deleted: trunk/cegcc/scripts/linux/build-gpp.sh =================================================================== --- trunk/cegcc/scripts/linux/build-gpp.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build-gpp.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,42 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Put the cleanup here instead of in the calling script -# -if [ -d $BUILD_DIR/gpp ]; then - rm -rf $BUILD_DIR/gpp -fi -# -mkdir -p $BUILD_DIR/gpp || exit 1 -cd $BUILD_DIR/gpp || exit 1 -# -export CFLAGS="" -# -$TOP_SRCDIR/src/gcc/configure \ - --prefix=$PREFIX \ - --enable-languages=c,c++ \ - --disable-interwork \ - --disable-nls \ - --enable-checking \ - --disable-multilib \ - --build=$MY_HOST_ARCH --target=$TGT_ARCH || exit 1 -# -# Deliberately no error handling here. -# -make -# -# Because we need to delete this file -# -rm $BUILD_DIR/gpp/gcc/as || exit 1 -# -# Now the build should continue smoothly -# -make || exit 1 -exit 0 Deleted: trunk/cegcc/scripts/linux/build-libs.sh =================================================================== --- trunk/cegcc/scripts/linux/build-libs.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build-libs.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,31 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -if [ -d $BUILD_DIR/libs ]; then - rm -rf $BUILD_DIR/libs -fi -cd $BUILD_DIR -mkdir libs -cd libs -# -# Set up a list of DLL proxies to make. -# -. $SCRIPTDIR/list-libs.sh -# -# Loop over the list -# -for i in $BUILD_LIBS_LIST -do - sh $TOP_SRCDIR/src/cegcc/importlibs/mkimport.sh $TOP_SRCDIR/src/cegcc/importlibs/defs/$i.def . || exit 1 -done -# -# End -# -exit 0 Deleted: trunk/cegcc/scripts/linux/build-libs2.sh =================================================================== --- trunk/cegcc/scripts/linux/build-libs2.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build-libs2.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,30 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Non-standard build, for both libs. -# -if [ $TGT_ARCH = arm-wince-cegcc ]; then - cd $TOP_SRCDIR/src/cegcc/cegccthrd || exit 1 - make clean TARGET=$TGT_ARCH || exit 1 - make all PREFIX=$PREFIX TARGET=$TGT_ARCH || exit 1 -fi -# -cd $TOP_SRCDIR/src/cegcc/libstdc++ || exit 1 -make clean TARGET=$TGT_ARCH || exit 1 -if [ $TGT_ARCH = arm-wince-mingw32ce ]; then - TSL="-lcoredll" -else - TSL="-lcegcc -lcoredll" -fi -make all PREFIX=$PREFIX TARGET=$TGT_ARCH THE_SYSTEM_LIBS=${TSL} || exit 1 -# -# End -# -exit 0 Deleted: trunk/cegcc/scripts/linux/build-mingw.sh =================================================================== --- trunk/cegcc/scripts/linux/build-mingw.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build-mingw.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,32 +0,0 @@ -#!/bin/sh -# -# HACK -# export TGT_ARCH=arm-wince-mingw32ce -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Put the cleanup here instead of in the calling script -# -if [ -d $BUILD_DIR/profile ]; then - rm -rf $BUILD_DIR/profile -fi -# -mkdir -p $BUILD_DIR/profile || exit 1 -cd $BUILD_DIR/profile || exit 1 -# -$TOP_SRCDIR/src/mingw/configure \ - --prefix=$PREFIX \ - --target=$TGT_ARCH --host=$TGT_ARCH --build=$MY_HOST_ARCH || exit 1 -# -if [ $TGT_ARCH = arm-wince-cegcc ]; then - make CFLAGS="-D__COREDLL__ -DNO_UNDERSCORES" || exit 1 -else - make CFLAGS="-DNO_UNDERSCORES" || exit 1 -fi -exit 0 Deleted: trunk/cegcc/scripts/linux/build-newlib.sh =================================================================== --- trunk/cegcc/scripts/linux/build-newlib.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build-newlib.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,36 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Don't do this in MinGW -# -if [ $TGT_ARCH = arm-wince-mingw32ce ]; then - exit 0 -fi -# -# Put the cleanup here instead of in the calling script -# -if [ -d $BUILD_DIR/newlib ]; then - rm -rf $BUILD_DIR/newlib -fi -# -mkdir -p $BUILD_DIR/newlib || exit 1 -cd $BUILD_DIR/newlib || exit 1 -# -export CC=$PREFIX/bin/$TGT_ARCH-gcc -export LD=$PREFIX/bin/$TGT_ARCH-ld -export RANLIB=$PREFIX/bin/$TGT_ARCH-ranlib -export CFLAGS="-march=armv4 -DGNUWINCE -DSARM -DWANT_PRINTF_LONG_LONG -DCOMPILING_NEWLIB -D_WIN32_WCE=420" -# -$TOP_SRCDIR/src/newlib/newlib/configure \ - --prefix=$PREFIX \ - --target=$TGT_ARCH $TGT_ARCH || exit 1 -# -make || exit 1 -exit 0 Deleted: trunk/cegcc/scripts/linux/build-stub.sh =================================================================== --- trunk/cegcc/scripts/linux/build-stub.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build-stub.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,16 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -CFLAGS="-mwin32 -D_WINSOCKAPI_" -LDFLAGS="-e WinMainCRTStartup -lws2" - -${TGT_ARCH}-gcc ${CFLAGS} ${STUB_SRC} -o ${STUB_EXE} ${LDFLAGS} || exit 1 - -# pcp /home/danny/src/cegcc/svn.berlios.de/cegcc/branches/linux-build/src/gdb/gdb/wince-stub.exe ":/Application data/gdb/wince-stub.exe" Deleted: trunk/cegcc/scripts/linux/build.sh =================================================================== --- trunk/cegcc/scripts/linux/build.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/build.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,115 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Clean up everything !! -# -if [ -d $BUILD_DIR ]; then - echo "rm -rf $BUILD_DIR" - rm -rf $BUILD_DIR -fi -if [ -d $MINGW_BUILD_DIR ]; then - echo "rm -rf $MINGW_BUILD_DIR" - rm -rf $MINGW_BUILD_DIR -fi -# -if [ x$PREFIX != x ]; then - if [ -d $PREFIX -a $PREFIX = /usr/ppc ]; then - for i in bin info lib man include libexec share arm-wince-pe arm-wince-cegcc arm-wince-mingw32ce - do - if [ -d $PREFIX/$i ]; then - echo "rm -rf $PREFIX/$i" - rm -rf $PREFIX/$i - fi - done - fi -fi -mkdir -p $BUILD_DIR -# -# The build sequence below should be generic (target-independent). -# In some places, we have a temporary exception (see gpp), in other cases, -# there's a permanent (e.g. by design) difference, such as we don't want to -# distribute newlib in the mingw32ce case. All those differences are hidden -# in the scripts called from this one. -# -# All scripts called below must accept the environment variables -# TGT_ARCH, -# BUILD_DIR -# and PREFIX -# as parameters. -# -# The settings.sh script (called in all of the scripts below) -# uses the TGT_ARCH to determine e.g. BUILD_DIR. -# -for TGT_ARCH in arm-wince-cegcc arm-wince-mingw32ce # arm-wince-pe -do - export TGT_ARCH - echo "Running build-arch.sh with TGT_ARCH = " $TGT_ARCH - # - sh $SCRIPTDIR/build-binutils.sh || exit 1 - sh $SCRIPTDIR/install-binutils.sh || exit 1 - # - # There's no 'build-includes' script. - # - sh $SCRIPTDIR/install-includes.sh || exit 1 - # - # Bootstrap the C compiler, we need it to get newlib into shape, - # and that in turn is a prereq to get the C/C++ compiler built completely. - # - sh $SCRIPTDIR/build-gcc.sh || exit 1 - sh $SCRIPTDIR/install-gcc.sh || exit 1 - # - sh $SCRIPTDIR/install-mingw-crt.sh || exit 1 - sh $SCRIPTDIR/build-libs.sh || exit 1 - sh $SCRIPTDIR/install-libs.sh || exit 1 - # - if [ $TGT_ARCH = arm-wince-mingw32ce ]; then - sh $SCRIPTDIR/build-mingw.sh || exit 1 - sh $SCRIPTDIR/install-mingw.sh || exit 1 - else - sh $SCRIPTDIR/build-newlib.sh || exit 1 - sh $SCRIPTDIR/install-newlib.sh || exit 1 - fi - # - # Some of the stuff here applies to both targets - # - sh $SCRIPTDIR/build-dll.sh || exit 1 - sh $SCRIPTDIR/install-dll.sh || exit 1 - # - # Build the compiler better. - # - sh $SCRIPTDIR/build-gpp.sh || exit 1 - sh $SCRIPTDIR/install-gpp.sh || exit 1 - # - # This must happen with the complete compiler to have threads support. - # - sh $SCRIPTDIR/build-dll.sh || exit 1 - sh $SCRIPTDIR/install-dll.sh || exit 1 - # - # These depend on the better compiler - # - sh $SCRIPTDIR/build-libs2.sh || exit 1 - sh $SCRIPTDIR/install-libs2.sh || exit 1 - # - sh $SCRIPTDIR/build-gdb.sh || exit 1 - sh $SCRIPTDIR/install-gdb.sh || exit 1 - sh $SCRIPTDIR/build-stub.sh || exit 1 - sh $SCRIPTDIR/install-stub.sh || exit 1 - # - if [ $TGT_ARCH = arm-wince-cegcc ]; then - sh $SCRIPTDIR/build-mingw.sh && sh $SCRIPTDIR/install-mingw.sh - fi - # -done -# -sh $SCRIPTDIR/install-docs.sh || exit 1 -# -# We should be done now. -# -exit 0 Modified: trunk/cegcc/scripts/linux/cegcc.spec =================================================================== --- trunk/cegcc/scripts/linux/cegcc.spec 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/cegcc.spec 2006-12-30 15:37:30 UTC (rev 858) @@ -5,9 +5,9 @@ License: open Packager: Danny Backx <dan...@us...> Group: Development/Tools -Prefixes: /usr/ppc +Prefixes: /opt # Source: http://sourceforge.net/project/showfiles.php?group_id=173455 -Source: /tmp/cegcc-src-0.11.tar.gz +Source: /tmp/cegcc-src-0.12.tar.gz # BuildRoot: /tmp/cegcc %description @@ -27,35 +27,45 @@ # RPM_ARCH=i386 # %prep -%setup -n cegcc-0.11 +%setup -n cegcc-0.12 echo script %build export MY_RPM_PREFIX=/tmp/rpm-$RPM_PACKAGE_NAME-$RPM_PACKAGE_RELEASE -sh scripts/linux/rpm-build.sh +cd src || exit 1 +sh build-cegcc.sh all || exit 1 +sh build-mingw32ce.sh all || exit 1 %install -# -# No special prefix here -# -export PATH=/tmp/rpm-$RPM_PACKAGE_NAME-$RPM_PACKAGE_RELEASE/bin:$PATH -sh scripts/linux/rpm-install.sh +# Nothing to do %files -/usr/ppc/arm-wince-cegcc -/usr/ppc/arm-wince-mingw32ce -%attr(755, root, root) /usr/ppc/bin -/usr/ppc/include -/usr/ppc/lib -/usr/ppc/libexec -/usr/ppc/share -/usr/ppc/COPYING -/usr/ppc/COPYING.LIB -/usr/ppc/NEWS -/usr/ppc/README +/opt/cegcc/arm-wince-cegcc +/opt/mingw32ce/arm-wince-mingw32ce +%attr(755, root, root) /opt/cegcc/bin +/opt/cegcc/include +/opt/cegcc/lib +/opt/cegcc/libexec +/opt/cegcc/share +/opt/cegcc/COPYING +/opt/cegcc/COPYING.LIB +/opt/cegcc/NEWS +/opt/cegcc/README +%attr(755, root, root) /opt/mingw32ce/bin +/opt/mingw32ce/include +/opt/mingw32ce/lib +/opt/mingw32ce/libexec +/opt/mingw32ce/share +/opt/mingw32ce/COPYING +/opt/mingw32ce/COPYING.LIB +/opt/mingw32ce/NEWS +/opt/mingw32ce/README %changelog +* Sat Dec 30 2006 Danny Backx <dan...@us...> +- Adapt to Pedro's build scripts and /opt/cegcc and /opt/mingw32ce . + * Wed Nov 1 2006 Danny Backx <dan...@us...> - Add COPYING.LIB - Increase level to produce a 0.11 version next time. Deleted: trunk/cegcc/scripts/linux/install-binutils.sh =================================================================== --- trunk/cegcc/scripts/linux/install-binutils.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-binutils.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,13 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -cd $BUILD_DIR/binutils -make install || exit 1 -exit 0 Deleted: trunk/cegcc/scripts/linux/install-dll.sh =================================================================== --- trunk/cegcc/scripts/linux/install-dll.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-dll.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,28 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# if [ -d $BUILD_DIR/libs ]; then -# rm -rf $BUILD_DIR/libs -# fi -# -# Not in the MingW target -# -if [ $TGT_ARCH = arm-wince-mingw32ce ]; then - exit 0 -fi -# -# Non-standard build -# -cd $TOP_SRCDIR/src/cegcc/cegccdll || exit 1 -make PREFIX=$PREFIX TARGET=$TGT_ARCH install || exit 1 -# -# End -# -exit 0 Deleted: trunk/cegcc/scripts/linux/install-docs.sh =================================================================== --- trunk/cegcc/scripts/linux/install-docs.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-docs.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,23 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -cd $TOP_SRCDIR || exit 1 -export DOCDIR=${PREFIX}/share/doc/cegcc-${CEGCC_RELEASE} || exit 1 -mkdir -p ${DOCDIR} ${DOCDIR}/images ${DOCDIR}/docs ${DOCDIR}/docs/examples || exit 1 -# -cp docs/*.html ${DOCDIR}/docs || exit 1 -cp docs/examples/Makefile ${DOCDIR}/docs/examples || exit 1 -cp docs/examples/*.{c,exe,h,rc,tar.gz} ${DOCDIR}/docs/examples || exit 1 -cp website/*.html ${DOCDIR} || exit 1 -cp website/images/*.png ${DOCDIR}/images || exit 1 -cp src/gcc/COPYING ${PREFIX} || exit 1 -cp src/gcc/COPYING.LIB ${PREFIX} || exit 1 -cp NEWS README ${PREFIX} || exit 1 -# -exit 0 Deleted: trunk/cegcc/scripts/linux/install-gcc.sh =================================================================== --- trunk/cegcc/scripts/linux/install-gcc.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-gcc.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,16 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -cd $BUILD_DIR/gcc -# -# It is very important to specify the right target here. -# -make install-gcc || exit 1 -# -exit 0 Deleted: trunk/cegcc/scripts/linux/install-gdb.sh =================================================================== --- trunk/cegcc/scripts/linux/install-gdb.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-gdb.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,15 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -cd $BUILD_DIR/gdb || exit 1 -# -make install-gdb || exit 1 -# -exit 0 Deleted: trunk/cegcc/scripts/linux/install-gpp.sh =================================================================== --- trunk/cegcc/scripts/linux/install-gpp.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-gpp.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,21 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Temporary hack - not in the MingW target -# FIX ME -# -# if [ $TGT_ARCH = arm-wince-mingw32ce ]; then -# exit 0 -# fi -cd $BUILD_DIR/gpp || exit 1 -# -make install || exit 1 -# -exit 0 Deleted: trunk/cegcc/scripts/linux/install-includes.sh =================================================================== --- trunk/cegcc/scripts/linux/install-includes.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-includes.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,52 +0,0 @@ -#!/bin/sh -# -# This won't work, the MinGW build system isn't configured for this. -# -# $TOP_SRCDIR/src/w32api/configure \ -# --prefix=$PREFIX \ -# --target=$TGT_ARCH -# make -# -# Instead we're relying on the fact that the w32api/include contains -# a directory tree that we should copy as is. -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -cd $TOP_SRCDIR/src/w32api/include -DIRS=`find . -type d -print | grep -v /.svn` -# echo "Include file directories : [$DIRS]" -for d in $DIRS -do - mkdir -p $PREFIX/$TGT_ARCH/include/w32api/$d -# mkdir -p $PREFIX/$MINGW_TGT_ARCH/include/w32api/$d -done -FILES=`find . -type f -name \*.h -print | grep -v /.svn/ ` -# echo "Files : [" $FILES "]" -for i in $FILES -do - install -m 0644 $i $PREFIX/$TGT_ARCH/include/w32api/$i -# install -m 0644 $i $PREFIX/$MINGW_TGT_ARCH/include/w32api/$i -done -# -# Install the mingw include directory only in one of the targets -# -if [ $TGT_ARCH = arm-wince-mingw32ce ]; then - cd $TOP_SRCDIR/src/mingw/include - DIRS=`find . -type d -print | grep -v /.svn` - # echo "Include file directories : [$DIRS]" - for d in $DIRS - do - mkdir -p $PREFIX/$TGT_ARCH/include/w32api/$d - done - FILES=`find . -type f -name \*.h -print | grep -v /.svn/ ` - # echo "Files : [" $FILES "]" - for i in $FILES - do - install -m 0644 $i $PREFIX/$TGT_ARCH/include/w32api/$i - done -fi -exit 0 Deleted: trunk/cegcc/scripts/linux/install-libs.sh =================================================================== --- trunk/cegcc/scripts/linux/install-libs.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-libs.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,35 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -cd $BUILD_DIR/libs -# -# Set up a list of DLL proxies to make. -# -. $SCRIPTDIR/list-libs.sh -# -# Create directory -# -mkdir -p $PREFIX/$TGT_ARCH/lib || exit 1 -# -# Loop over the list -# -for i in $INSTALL_PE_TGT -do - install -m 0755 lib$i.a $PREFIX/$TGT_ARCH/lib || exit 1 - $TGT_ARCH-ranlib $PREFIX/$TGT_ARCH/lib/lib$i.a || exit 1 -done -# for i in $INSTALL_MINGW_TGT -# do -# install -m 0755 lib$i.a $PREFIX/$MINGW_TGT_ARCH/lib || exit 1 -# $MINGW_TGT_ARCH-ranlib $PREFIX/$MINGW_TGT_ARCH/lib/lib$i.a || exit 1 -# done -# -# End -# -exit 0 Deleted: trunk/cegcc/scripts/linux/install-libs2.sh =================================================================== --- trunk/cegcc/scripts/linux/install-libs2.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-libs2.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,23 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Non-standard build -# -if [ $TGT_ARCH = arm-wince-cegcc ]; then - cd $TOP_SRCDIR/src/cegcc/cegccthrd || exit 1 - make PREFIX=$PREFIX TARGET=$TGT_ARCH install || exit 1 -fi -# -cd $TOP_SRCDIR/src/cegcc/libstdc++ || exit 1 -make PREFIX=$PREFIX TARGET=$TGT_ARCH install || exit 1 -# -# End -# -exit 0 Deleted: trunk/cegcc/scripts/linux/install-mingw-crt.sh =================================================================== --- trunk/cegcc/scripts/linux/install-mingw-crt.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-mingw-crt.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,15 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -if [ $TGT_ARCH = arm-wince-mingw32ce ]; then - cd $TOP_SRCDIR/src/mingw-fake_crt || exit 1 - sh install.sh || exit 1 -fi -# -exit 0 Deleted: trunk/cegcc/scripts/linux/install-mingw.sh =================================================================== --- trunk/cegcc/scripts/linux/install-mingw.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-mingw.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,29 +0,0 @@ -#!/bin/sh -# HACK -# export TGT_ARCH=arm-wince-mingw32ce -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# -if [ $TGT_ARCH = "arm-wince-mingw32ce" ]; then - cd $BUILD_DIR/profile || exit 1 - make install || exit 1 -else -# -# Too risky to run the $BUILD_DIR/profile "make install" -# because it'll install incompatible stuff in arm-wince-cegcc. -# -# Take only what we really need. -# - cd $BUILD_DIR/profile/profile || exit 1 - cp libgmon.a gcrt3.o ${PREFIX}/${TGT_ARCH}/lib - ${TGT_ARCH}-ranlib ${PREFIX}/${TGT_ARCH}/lib/libgmon.a -fi -# -exit 0 Deleted: trunk/cegcc/scripts/linux/install-newlib.sh =================================================================== --- trunk/cegcc/scripts/linux/install-newlib.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-newlib.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,20 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Don't do this in MinGW -# -if [ $TGT_ARCH = arm-wince-mingw32ce ]; then - exit 0 -fi -# -cd $BUILD_DIR/newlib || exit 1 -# -make install || exit 1 -exit 0 Deleted: trunk/cegcc/scripts/linux/install-stub.sh =================================================================== --- trunk/cegcc/scripts/linux/install-stub.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/install-stub.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,18 +0,0 @@ -#!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -LIBS="" -INCLUDES="" -CFLAGS="-mwin32 ${INCLUDES}" -LDFLAGS="-e WinMainCRTStartup" - -mkdir -p ${PREFIX}/bin -cp ${STUB_EXE} ${PREFIX}/bin || exit 1 -${TGT_ARCH}-strip ${PREFIX}/bin/${TGT_ARCH}-stub.exe || exit 1 Deleted: trunk/cegcc/scripts/linux/list-libs.sh =================================================================== --- trunk/cegcc/scripts/linux/list-libs.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/list-libs.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,12 +0,0 @@ -#!/bin/sh -# -# Set up a list of DLL proxies to make. -# -BUILD_LIBS_LIST="coredll winsock aygshell commctrl iphlpapi ws2 ceshell" -INSTALL_PE_TGT="$BUILD_LIBS_LIST" -INSTALL_MINGW_TGT="$BUILD_LIBS_LIST" -# LIST="coredll winsock aygshell commctrl fileopen" -# -# List of libraries to squash into once libcegcc.a -# -LIBS_CEGCC_LIB="c winsock" Deleted: trunk/cegcc/scripts/linux/rpm-build.sh =================================================================== --- trunk/cegcc/scripts/linux/rpm-build.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/rpm-build.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,119 +0,0 @@ -#!/bin/sh -set -x -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -# Clean up everything !! -# -if [ -d $BUILD_DIR ]; then - if [ -d $TOP_SRCDIR/build ]; then - echo "rm -rf $TOP_SRCDIR/build" - rm -rf $TOP_SRCDIR/build - fi -fi -# -if [ x$PREFIX != x ]; then - if [ -d $PREFIX -a $PREFIX = /usr/ppc ]; then - for i in $TGT_ARCH bin info lib man include libexec share - do - if [ -d $PREFIX/$i ]; then - echo "rm -rf $PREFIX/$i" - rm -rf $PREFIX/$i - fi - done - fi -fi -if [ x$MY_RPM_PREFIX != x ]; then - if [ -d $MY_RPM_PREFIX ]; then - rm -rf $MY_RPM_PREFIX - fi -fi -mkdir -p $BUILD_DIR -# -# The build sequence below should be generic (target-independent). -# In some places, we have a temporary exception (see gpp), in other cases, -# there's a permanent (e.g. by design) difference, such as we don't want to -# distribute newlib in the mingw32ce case. All those differences are hidden -# in the scripts called from this one. -# -# All scripts called below must accept the environment variables -# TGT_ARCH, -# BUILD_DIR -# and PREFIX -# as parameters. -# -# The settings.sh script (called in all of the scripts below) -# uses the TGT_ARCH to determine e.g. BUILD_DIR. -# -for TGT_ARCH in arm-wince-cegcc arm-wince-mingw32ce # arm-wince-pe -do - export TGT_ARCH - echo "Running build-arch.sh with TGT_ARCH = " $TGT_ARCH - # - sh $SCRIPTDIR/build-binutils.sh || exit 1 - sh $SCRIPTDIR/install-binutils.sh || exit 1 - # - # There's no 'build-includes' script. - # - sh $SCRIPTDIR/install-includes.sh || exit 1 - # - # Bootstrap the C compiler, we need it to get newlib into shape, - # and that in turn is a prereq to get the C/C++ compiler built completely. - # - sh $SCRIPTDIR/build-gcc.sh || exit 1 - sh $SCRIPTDIR/install-gcc.sh || exit 1 - # - sh $SCRIPTDIR/install-mingw-crt.sh || exit 1 - sh $SCRIPTDIR/build-libs.sh || exit 1 - sh $SCRIPTDIR/install-libs.sh || exit 1 - # - if [ $TGT_ARCH = arm-wince-mingw32ce ]; then - sh $SCRIPTDIR/build-mingw.sh || exit 1 - sh $SCRIPTDIR/install-mingw.sh || exit 1 - else - sh $SCRIPTDIR/build-newlib.sh || exit 1 - sh $SCRIPTDIR/install-newlib.sh || exit 1 - fi - # - # Some of the stuff here applies to both targets - # - sh $SCRIPTDIR/build-dll.sh || exit 1 - sh $SCRIPTDIR/install-dll.sh || exit 1 - # - # Build the compiler better. - # - sh $SCRIPTDIR/build-gpp.sh || exit 1 - sh $SCRIPTDIR/install-gpp.sh || exit 1 - # - # This must happen with the complete compiler to have threads support. - # - sh $SCRIPTDIR/build-dll.sh || exit 1 - sh $SCRIPTDIR/install-dll.sh || exit 1 - # - # These depend on the better compiler - # - sh $SCRIPTDIR/build-libs2.sh || exit 1 - sh $SCRIPTDIR/install-libs2.sh || exit 1 - # - sh $SCRIPTDIR/build-gdb.sh || exit 1 - sh $SCRIPTDIR/install-gdb.sh || exit 1 - sh $SCRIPTDIR/build-stub.sh || exit 1 - sh $SCRIPTDIR/install-stub.sh || exit 1 - # - if [ $TGT_ARCH = arm-wince-cegcc ]; then - sh $SCRIPTDIR/build-mingw.sh && sh $SCRIPTDIR/install-mingw.sh - fi - # -done -# -sh $SCRIPTDIR/install-docs.sh || exit 1 -# -# We should be done now. -# -exit 0 Modified: trunk/cegcc/scripts/linux/rpm-create-source.sh =================================================================== --- trunk/cegcc/scripts/linux/rpm-create-source.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/rpm-create-source.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,42 +1,51 @@ #!/bin/sh -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh +if [ -x ./rpm-create-source.sh ]; then + cd ../.. + TOP_SRCDIR=`pwd` else - . scripts/linux/settings.sh + TOP_SRCDIR=`pwd` fi # -# Put the cleanup here instead of in the calling script +export TOP_SRCDIR # -if [ -d $BUILD_DIR/gcc ]; then - rm -rf $BUILD_DIR/gcc -fi +# The name of this release # -# cd $BUILD_DIR -# make all-gcc || exit 1 +CEGCC_RELEASE=0.12 +export CEGCC_RELEASE # -# Create a description of files not to put in the tar. +# Don't take unnecessary stuff in the source file. # echo '*/.svn*' >/tmp/exclude-$$ echo '/*.cvs*' >>/tmp/exclude-$$ +echo '*/CVS' >>/tmp/exclude-$$ +echo '*/CVS/*' >>/tmp/exclude-$$ +echo 'cegcc-'$CEGCC_RELEASE'/src/build-cegcc' >>/tmp/exclude-$$ +echo 'cegcc-'$CEGCC_RELEASE'/src/build-cegcc/*' >>/tmp/exclude-$$ +echo 'cegcc-'$CEGCC_RELEASE'/src/build-mingw32ce' >>/tmp/exclude-$$ +echo 'cegcc-'$CEGCC_RELEASE'/src/build-mingw32ce/*' >>/tmp/exclude-$$ echo '*~' >>/tmp/exclude-$$ # cd $TOP_SRCDIR ln -s . cegcc-$CEGCC_RELEASE -tar --exclude-from=/tmp/exclude-$$ \ - -cz -f /usr/src/RPM/SOURCES/cegcc-src-$CEGCC_RELEASE.tar.gz \ - cegcc-$CEGCC_RELEASE/NEWS cegcc-$CEGCC_RELEASE/README \ - cegcc-$CEGCC_RELEASE/scripts cegcc-$CEGCC_RELEASE/docs \ - cegcc-$CEGCC_RELEASE/website cegcc-$CEGCC_RELEASE/test cegcc-$CEGCC_RELEASE/src +# tar --exclude-from=/tmp/exclude-$$ \ +# -cz -f /usr/src/rpm/SOURCES/cegcc-src-$CEGCC_RELEASE.tar.gz \ +# cegcc-$CEGCC_RELEASE/NEWS cegcc-$CEGCC_RELEASE/README \ +# cegcc-$CEGCC_RELEASE/scripts cegcc-$CEGCC_RELEASE/docs \ +# cegcc-$CEGCC_RELEASE/website cegcc-$CEGCC_RELEASE/test cegcc-$CEGCC_RELEASE/src rm cegcc-$CEGCC_RELEASE # # Remove temp file # rm -f /tmp/exclude-$$ -exit 0 # -# This works -# tar --exclude-from=scripts/linux/x -cz -f /tmp/cegcc-src-0.06.tar.gz NEWS scripts docs website test +# Tell packager what to do. # +echo "Now be sure to build with" +echo " " +echo " rm -rf /opt/cegcc/* /opt/mingw32ce/*" +echo " rpmbuild -tb /usr/src/rpm/SOURCES/cegcc-src-"$CEGCC_RELEASE".tar.gz" +echo " " +# +# All done +# +exit 0 Deleted: trunk/cegcc/scripts/linux/rpm-install.sh =================================================================== --- trunk/cegcc/scripts/linux/rpm-install.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/rpm-install.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,35 +0,0 @@ -#!/bin/sh -set -x -# -# Read the settings -# -if [ -r settings.sh ]; then - . settings.sh -else - . scripts/linux/settings.sh -fi -# -for TGT_ARCH in arm-wince-cegcc arm-wince-mingw32ce # arm-wince-pe -do - export TGT_ARCH -# - sh $SCRIPTDIR/install-binutils.sh || exit 1 - sh $SCRIPTDIR/install-includes.sh || exit 1 - sh $SCRIPTDIR/install-gcc.sh || exit 1 - sh $SCRIPTDIR/install-mingw-crt.sh || exit 1 - sh $SCRIPTDIR/install-newlib.sh || exit 1 - sh $SCRIPTDIR/install-libs.sh || exit 1 - sh $SCRIPTDIR/install-dll.sh || exit 1 - sh $SCRIPTDIR/install-gpp.sh || exit 1 - sh $SCRIPTDIR/install-dll.sh || exit 1 - sh $SCRIPTDIR/install-libs2.sh || exit 1 - sh $SCRIPTDIR/install-gdb.sh || exit 1 - sh $SCRIPTDIR/install-stub.sh || exit 1 -# -done -# -sh $SCRIPTDIR/install-docs.sh || exit 1 -# -# We should be done now. -# -exit 0 Deleted: trunk/cegcc/scripts/linux/settings.sh =================================================================== --- trunk/cegcc/scripts/linux/settings.sh 2006-12-30 11:41:19 UTC (rev 857) +++ trunk/cegcc/scripts/linux/settings.sh 2006-12-30 15:37:30 UTC (rev 858) @@ -1,64 +0,0 @@ -#!/bin/sh -if [ -x ./list-libs.sh ]; then - SCRIPTDIR=`pwd` - cd ../.. - TOP_SRCDIR=`pwd` -else - TOP_SRCDIR=`pwd` - SCRIPTDIR=$TOP_SRCDIR/scripts/linux -fi -# -export SCRIPTDIR TOP_SRCDIR -# -# Check whether we're running under "rpmbuild". -# If we do, use a temporary directory as prefix. -# -if [ x$MY_RPM_PREFIX != x ]; then - PREFIX=$MY_RPM_PREFIX - mkdir -p $PREFIX -else - PREFIX=/usr/ppc -fi -export PREFIX -# -if [ "x$SCRIPT_DEBUG" != x ]; then - echo "###" - echo "### setting PREFIX to $PREFIX" - echo "###" -fi -# -MY_HOST_ARCH=`$TOP_SRCDIR/src/gcc/config.guess` -export MY_HOST_ARCH -# -# Only set the target environment variable if it isn't already set. -# -if [ "x$TGT_ARCH" == "x" ]; then - # - # Choose the target environment here. - # - TGT_ARCH=arm-wince-cegcc - # - MINGW_TGT_ARCH=arm-wince-mingw32ce - MINGW_BUILD_DIR=$TOP_SRCDIR/build/$MY_HOST_ARCH/$MINGW_TGT_ARCH - # - export TGT_ARCH MINGW_BUILD_DIR MINGW_TGT_ARCH -fi -# -BUILD_DIR=$TOP_SRCDIR/build/$MY_HOST_ARCH/$TGT_ARCH -export BUILD_DIR -# -# This set of scripts relies on the fact that $PREFIX/bin is in your path. -# Make sure it is ... -# -export PATH=${PREFIX}/bin:${PATH} -# -# The name of this release -# -CEGCC_RELEASE=0.11 -export CEGCC_RELEASE -# -# The debugging stub -# -export STUB_SRC=${TOP_SRCDIR}/src/gdb/gdb/wince-stub.c -export STUB_EXE=${BUILD_DIR}/gdb/${TGT_ARCH}-stub.exe - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 11:41:21
|
Revision: 857 http://svn.sourceforge.net/cegcc/?rev=857&view=rev Author: dannybackx Date: 2006-12-30 03:41:19 -0800 (Sat, 30 Dec 2006) Log Message: ----------- Part of the profiling patch. Modified Paths: -------------- trunk/cegcc/src/ChangeLog trunk/cegcc/src/build-cegcc.sh trunk/cegcc/src/build-mingw32ce.sh Modified: trunk/cegcc/src/ChangeLog =================================================================== --- trunk/cegcc/src/ChangeLog 2006-12-30 11:32:26 UTC (rev 856) +++ trunk/cegcc/src/ChangeLog 2006-12-30 11:41:19 UTC (rev 857) @@ -1,3 +1,9 @@ +2006-12-24 Danny Backx <dan...@us...> + + * build-mingw32ce.sh, build-cegcc.sh (build_profile) : Add. + * build-mingw32ce.sh, build-cegcc.sh (build_gcc) : Add --with-headers + option so -Dinhibit_libc isn't triggered. + 2006-12-19 Pedro Alves <ped...@po...> * build-mingw32ce.sh (build-w32api): New function. Modified: trunk/cegcc/src/build-cegcc.sh =================================================================== --- trunk/cegcc/src/build-cegcc.sh 2006-12-30 11:32:26 UTC (rev 856) +++ trunk/cegcc/src/build-cegcc.sh 2006-12-30 11:41:19 UTC (rev 857) @@ -165,6 +165,7 @@ --disable-interwork \ --without-newlib \ --enable-checking \ + --with-headers \ || exit 1 @@ -277,6 +278,30 @@ cd ${BASE_DIRECTORY} || exit 1 } +function build_profile() +{ + echo "" + echo "BUILDING profiling libraries --------------------------" + echo "" + echo "" + + mkdir -p ${BUILD_DIR}/profile || exit 1 + cd ${BUILD_DIR}/profile || exit 1 + + PREV_CFLAGS=${CFLAGS} + export CFLAGS="-DNO_UNDERSCORES" + + ${BASE_DIRECTORY}/profile/configure \ + --host=${TARGET} \ + --prefix=${PREFIX} \ + || exit + + export CFLAGS=${PREV_CFLAGS} + + make || exit 1 + make install || exit 1 +} + function build_docs() { echo "" @@ -293,7 +318,7 @@ tar cf - images | (cd ${PREFIX}/share; tar xf -) || exit 1 } -function buildall() +function build_all() { build_binutils build_import_libs @@ -305,9 +330,10 @@ build_cegccdll build_cegccthrddll build_libstdcppdll + build_profile + build_docs build_gdb build_gdbstub - build_docs } case $BUILD_OPT in @@ -328,7 +354,8 @@ gdb) build_gdb ;; gdbstub) build_gdbstub ;; docs) build_docs ;; - all) buildall ;; + profile) build_profile ;; + all) build_all ;; *) echo "Please enter a valid build option." ;; esac Modified: trunk/cegcc/src/build-mingw32ce.sh =================================================================== --- trunk/cegcc/src/build-mingw32ce.sh 2006-12-30 11:32:26 UTC (rev 856) +++ trunk/cegcc/src/build-mingw32ce.sh 2006-12-30 11:41:19 UTC (rev 857) @@ -180,6 +180,7 @@ --disable-interwork \ --without-newlib \ --enable-checking \ + --with-headers \ || exit # we build libstdc++ as dll, so we don't need this. @@ -271,6 +272,30 @@ tar cf - images | (cd ${PREFIX}/share; tar xf -) || exit 1 } +function build_profile() +{ + echo "" + echo "BUILDING profiling libraries --------------------------" + echo "" + echo "" + + mkdir -p ${BUILD_DIR}/profile || exit 1 + cd ${BUILD_DIR}/profile || exit 1 + + PREV_CFLAGS=${CFLAGS} + export CFLAGS="-DNO_UNDERSCORES" + + ${BASE_DIRECTORY}/profile/configure \ + --host=${TARGET} \ + --prefix=${PREFIX} \ + || exit + + export CFLAGS=${PREV_CFLAGS} + + make || exit 1 + make install || exit 1 +} + function build_all { build_binutils @@ -280,9 +305,10 @@ build_bootstrap_gcc build_mingw_runtime build_gcc + build_docs + build_profile build_gdb build_gdbstub - build_docs } case $BUILD_OPT in @@ -301,6 +327,7 @@ gdb) build_gdb ;; gdbstub) build_gdbstub ;; docs) build_docs ;; + profile) build_profile ;; all) build_all ;; *) echo "Please enter a valid build option." ;; esac This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 11:32:27
|
Revision: 856 http://svn.sourceforge.net/cegcc/?rev=856&view=rev Author: dannybackx Date: 2006-12-30 03:32:26 -0800 (Sat, 30 Dec 2006) Log Message: ----------- Don't build profile subdirectory from here any more. Modified Paths: -------------- trunk/cegcc/src/mingw/configure.in Modified: trunk/cegcc/src/mingw/configure.in =================================================================== --- trunk/cegcc/src/mingw/configure.in 2006-12-30 11:30:07 UTC (rev 855) +++ trunk/cegcc/src/mingw/configure.in 2006-12-30 11:32:26 UTC (rev 856) @@ -54,7 +54,7 @@ W32API_INCLUDE='-I $(srcdir)/../w32api/include' -AC_CONFIG_SUBDIRS(profile mingwex) +AC_CONFIG_SUBDIRS(mingwex) case "$target_os" in *cygwin*) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 11:30:11
|
Revision: 855 http://svn.sourceforge.net/cegcc/?rev=855&view=rev Author: dannybackx Date: 2006-12-30 03:30:07 -0800 (Sat, 30 Dec 2006) Log Message: ----------- Part of the profiling commit: avoid a name clash now that we build gcc without inhibit_libc. Modified Paths: -------------- trunk/cegcc/src/cegcc/cegccdll/Makefile Modified: trunk/cegcc/src/cegcc/cegccdll/Makefile =================================================================== --- trunk/cegcc/src/cegcc/cegccdll/Makefile 2006-12-30 11:29:13 UTC (rev 854) +++ trunk/cegcc/src/cegcc/cegccdll/Makefile 2006-12-30 11:30:07 UTC (rev 855) @@ -96,6 +96,7 @@ rm -f ${MY_DIR}/$(IMPLIB) rm -f ${MY_DIR}/$(IMPLIB).tmp $(AR) q ${MY_DIR}/$(IMPLIB) ${MY_DIR}/_tmp_static/*.o + rm -f ${MY_DIR}/_tmp/_eprintf.o $(CC) -o $@ $(LDFLAGS) -shared -nostdlib \ -Wl,--whole-archive ${MY_DIR}/_tmp/*.o ${LIB_PATH}/dllcrt1.o \ -Wl,--no-whole-archive -lcegcc -lcoredll -liphlpapi \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 11:29:15
|
Revision: 854 http://svn.sourceforge.net/cegcc/?rev=854&view=rev Author: dannybackx Date: 2006-12-30 03:29:13 -0800 (Sat, 30 Dec 2006) Log Message: ----------- New file; take a note in both that the copy happened. Modified Paths: -------------- trunk/cegcc/src/mingw/ChangeLog.mingw32ce Added Paths: ----------- trunk/cegcc/src/profile/ChangeLog.mingw32ce Modified: trunk/cegcc/src/mingw/ChangeLog.mingw32ce =================================================================== --- trunk/cegcc/src/mingw/ChangeLog.mingw32ce 2006-12-30 11:25:16 UTC (rev 853) +++ trunk/cegcc/src/mingw/ChangeLog.mingw32ce 2006-12-30 11:29:13 UTC (rev 854) @@ -1,3 +1,8 @@ +2006-12-30 Danny Backx <dan...@us...> + + * profile : Create a profile/profile tree as a copy of the + mingw/profile tree. + 2006-12-19 Pedro Alves <ped...@po...> * dllmain.c: Call DisableThreadLibraryCalls on DLL_PROCESS_ATTACH. Added: trunk/cegcc/src/profile/ChangeLog.mingw32ce =================================================================== --- trunk/cegcc/src/profile/ChangeLog.mingw32ce (rev 0) +++ trunk/cegcc/src/profile/ChangeLog.mingw32ce 2006-12-30 11:29:13 UTC (rev 854) @@ -0,0 +1,233 @@ +2006-12-30 Danny Backx <dan...@us...> + + * profile : Create a profile/profile tree as a copy of the + mingw/profile tree. + * profile/gmon.c : Rewrite to avoid stdio, use native WinCE I/O + instead. Stdio doesn't work reliably in these conditions (maybe due to + the use of an atexit handler). + +2006-12-19 Pedro Alves <ped...@po...> + + * dllmain.c: Call DisableThreadLibraryCalls on DLL_PROCESS_ATTACH. + +2006-11-27 Pedro Alves <ped...@po...> + + * Makefile.in: Adjust so mingw32ce uses crt3.o and dllcrt3.o. + * dllcrt1.c: Remove extra space in comment. + * crt3.c: Rename from crt1_ce.c. + +2006-11-27 Kevin O'Connor <ke...@ko...> + + * crt1_ce.c: New file. Implement WinMainCRTStartup for CE + programs in its own CE specific file. + * winmain_ce.c: New file. Implement a WinMain function that calls + main, for those CE programs that define main instead of WinMain. + * Makefile.in: Modify so that these two new CE specific files are + only built for mingw32ce. + * crt1.c, init.c, main.c: Revert them back to their x86 MinGW + originals. + +2006-11-19 Pedro Alves <ped...@po...> + + * include/stdio.h (rmtmp): Fix typo. + +2006-11-19 Pedro Alves <ped...@po...> + + * mingwex/wince/unlink.c (unlink): New function, implementing an + alias for the underscored version. + * mingwex/wince/read.c (read): Likewise. + * mingwex/wince/write.c (write): Likewise. + +2006-11-16 Pedro Alves <ped...@po...> + + * moldname.def.in (open, lseek, read, write): Don't export on + coredll.dll. + * mingwex/wince/open.c (vopen): Rename from _open, and made + static. + * mingwex/wince/open.c (open, _open): New functions. + * mingwex/wince/lseek.c (lseek): New function, implementing an + alias for the underscored version. + * mingwex/wince/fdopen.c (fdopen): Likewise. + +2006-11-13 Pedro Alves <ped...@po...> + + * profile/profile.h: Use __arm__ instead of ARM. + * profile/profil.c: Likewise. + +2006-11-12 Pedro Alves <ped...@po...> + + * include/unistd.h: Hide ftruncate. + +2006-11-12 Pedro Alves <ped...@po...> + + * mingwex/wince/lseek.c: Handle invalid whence. + +2006-11-12 Pedro Alves <ped...@po...> + + * mingwex/wince/close.c: New file. + * mingwex/Makefile.in (WINCE_DISTFILES): Add close.c. + (WINCE_OBJS): Add close.o. + +2006-11-11 Pedro Alves <ped...@po...> + + * mingwex/wince/open.c (open): Rename to _open. + * mingwex/wince/lseek.c (lseek): Rename to _lseek. + * mingwex/wince/fdopen.c (fdopen): Rename to _fdopen. + * mingwex/wince/read.c (read): Rename to _read. + * mingwex/wince/write.c (write): Rename to _write. + * include/fcntl.h: Enable file. + * include/io.h (_open, open, lseek, _lseek, + read, _read, write, _write): Unhide. + * include/stdio.h (fdopen, _fdopen): Unhide. + * include/unistd.h: Enable file. + * moldname.def.in (open, lseek, read, write): Unhide. + +2006-11-11 Pedro Alves <ped...@po...> + + * mingwex/Makefile.in (WINCE_DISTFILES): Add fdopen.c, read.c, write.c, + open.c and lseek.c. + (WINCE_OBJS): Add fdopen.o, read.o, write.o, open.o and lseek.o. + * mingwex/wince/open.c: New file. + * mingwex/wince/lseek.c: New file. + * mingwex/wince/fdopen.c: New file. + * mingwex/wince/read.c: New file. + * mingwex/wince/write.c: New file. + +2006-11-03 Danny Backx <dan...@us...> + + * profile/gmon.c : Use the executable file name under CE to cook up + the file name that we put monitoring information in. This used to + be just "gmon.out", now if you run /apps/m1.exe it'll be /apps/m1.gmo + + * atexit.c, include/wctype.h, include/stdio.h, include/ctype.h, + profile/configure, profile/gmon.c, profile/configure.in, + profile/profile.h : Port this code to both arm-wince-mingw32ce and + arm-wince-cegcc . + +2006-10-22 Pedro Alves <ped...@po...> + + * configure.in [AC_CONFIG_SUBDIRS]: Add mingwex. + * configure : Regenerate. + * mingwex/Makefile.in (VPATH): Add wince subdir. + (WINCE_DISTFILES): New. + (WINCE_OBJS): New. + (LIB_OBJS): Special case for wince. Build WINCE_OBJS. + (dist): Install WINCE_DISTFILES. + * mingwex/wince: New subdir. + * mingwex/wince/time.c: New file. + * mingwex/wince/freopen.c: New file. + * mingwex/wince/unlink.c: New file. + * mingwex/wince/tempnam.c: New file. + * mingwex/wince/wcsftime.c: New file. + * mingwex/wince/gmtime.c: New file. + * mingwex/wince/asctime.c: New file. + * mingwex/wince/mktime.c: New file. + * mingwex/wince/localtime.c: New file. + * mingwex/wince/strftime.c: New file. + * include/time.h (time, mktime, asctime, + ctime, gmtime, localtime, strftime, wcsftime): Expose on __COREDLL__. + * include/stdio.h (freopen, _tempnam, + tempnam, _wtempnam): Likewise. + * include/io.h: Expose the header. Needed for unlink. + (_unlink, unlink): Expose functions on __COREDLL__. + +2006-10-22 Pedro Alves <ped...@po...> + + * test_headers.c: Adapt to __COREDLL__. + +2006-10-22 Pedro Alves <ped...@po...> + + * include/stdio.h (puts) [__COREDLL__]: Add missing return. + +2006-10-19 Pedro Alves <ped...@po...> + + * include/setjmp.h (_JBLEN) : Set to 11 on ARM. + +2006-10-18 Pedro Alves <ped...@po...> + + * include/setjmp.h (setjmp) : Coredll.dll has setjmp not _setjmp. + * include/stdio.h : Minor cleanup. + +2006-10-18 Pedro Alves <ped...@po...> + + * include/stdio.h : Expose fileno. We have it on libceoldname. + +2006-10-17 Pedro Alves <ped...@po...> + + * __dllonexit : Delete. Code merged into ... + * atexit.c : ... this. + Fix filename comment. + Don't include __dllonexit.c. + (__atexit_first) : New function. + (__atexit_init): New function. + (proc_exit_chain) : Delete. + (__dllexit) : New function, copied from crt1.c. + (__dllonexit) : New function. + (_cexit) : Call __dllexit. + * Makefile.in (dllcrt1.o, dllcrt2.o, atexit.o) : Remove + dependency on __dllonexit.c. + * dllcrt1.c : Don't implement a private atexit list on + __COREDLL__, since the atexit implementation there is already + image private. + (DllMainCRTStartup) : Call __atexit_init. Use __atexit_first to + get to the private first_atexit. + (__dll_exit) : Hide on __COREDLL__. + Don't include __dllonexit.c. + * crt1.c (MainCRTStartup) : Call __atexit_init. + +2006-10-17 Pedro Alves <ped...@po...> + + * include/fcntl.h : Hide the file. + * include/direct.h : Hide the file. + +2006-10-17 Pedro Alves <ped...@po...> + + * profile/gcrt0.c : Remove __COREDLL__ hack. + * profile/gmon.c : Don't include fcnctl.h on mingw32ce. + * profile/Makefile.in : Add comment about coredll being CRT_ID 3. + (ALL_CRT0S) : Add gcrt3.o. + (gcrt3.o) : Add build rule. + * profile/configure.in : Handle mingw32ce. + * profile/configure : Regenerate. + +2006-10-16 Pedro Alves <ped...@po...> + + * include/io.h : Hide the file. + * include/signal.h : Hide the file better. + * include/errno.h : Likewise. + * include/stdio.h (_fileno) : Return void* instead of int, as reported + by MSVC warning logs, and as hinted here (mind the line break): + http://msdn.microsoft.com/library/default.asp?url=/library/en-us/\ + dv_wcecrt4/html/erlrfusfileno.asp : + (Return Values + _fileno returns the file handle.) + Notice the wording: file *handle*, not file descriptor. + * atexit.c : Don't include io.h. + * __dllonexit.c : Likewise. + * dllcrt1.c : Don't include io.h on __COREDLL__. + * crt1.c : Likewise. + +2006-10-15 Danny Backx <dan...@so...> + * configure.in: always configure profile subdirectory. + * configure: regenerated due to configure.in changes. + * profile/gcrt0.c profile/gmon.c profile/profil.h + profile/gmon.h profile/profil.c : changes to get this + to compile in our environments. Use only the existing + macros UNDER_CE, ARM. Don't use __COREDLL__ except in + one place where we needed to undefine it. + +2006-10-06 Pedro Alves <ped...@po...> + + * configure.in (DLL_ENTRY, MINGWEX_DIR) : Remove, not needed anymore. + * Makefile.in (MINGWEX_DIR) : Revert to using -Lmingwex. + * configure : Regenerate. + +2006-10-05 Pedro Alves <ped...@po...> + + * include/_mingw.h (__CRT_INLINE): Use __attribute__ ((__always_inline__)) + on Windows CE. + +2006-10-05 Pedro Alves <ped...@po...> + + * include/ctype.h: Always use the inline versions of is* + on Windows CE. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 11:25:17
|
Revision: 853 http://svn.sourceforge.net/cegcc/?rev=853&view=rev Author: dannybackx Date: 2006-12-30 03:25:16 -0800 (Sat, 30 Dec 2006) Log Message: ----------- This is the gcc part of the profiling patch. Modified Paths: -------------- trunk/cegcc/src/gcc/gcc/ChangeLog.ce trunk/cegcc/src/gcc/gcc/config/arm/t-arm-coff trunk/cegcc/src/gcc/gcc/config/arm/t-arm-elf trunk/cegcc/src/gcc/gcc/config/arm/t-pe trunk/cegcc/src/gcc/gcc/config/arm/t-strongarm-elf trunk/cegcc/src/gcc/gcc/config/arm/t-strongarm-pe trunk/cegcc/src/gcc/gcc/config/arm/t-wince-pe trunk/cegcc/src/gcc/gcc/config/arm/t-xscale-coff trunk/cegcc/src/gcc/gcc/config/arm/t-xscale-elf trunk/cegcc/src/gcc/gcc/coverage.c trunk/cegcc/src/gcc/gcc/doc/gcov.texi trunk/cegcc/src/gcc/gcc/gcov-io.c trunk/cegcc/src/gcc/gcc/libgcov.c trunk/cegcc/src/gcc/gcc/tsystem.h Modified: trunk/cegcc/src/gcc/gcc/ChangeLog.ce =================================================================== --- trunk/cegcc/src/gcc/gcc/ChangeLog.ce 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/ChangeLog.ce 2006-12-30 11:25:16 UTC (rev 853) @@ -1,3 +1,21 @@ +2006-12-21 Danny Backx <dan...@us...> + + * config/arm/t-strongarm-pe config/arm/t-strongarm-elf config/arm/t-pe + config/arm/t-arm-elf config/arm/t-xscale-elf config/arm/t-xscale-coff + config/arm/t-arm-coff config/arm/t-wince-pe : Remove inhibit_libc . + + * coverage.c (build_gcov_info) : Add more support for dealing with + directory names in cross-debugging environment. Main difference + is that this is specified on the host, not the target platform. + + * doc/gcov.texi : Add documentation for GCOV_CROSS_PREFIX. + + * tsystem.h : Don't include <errno.h> when __MINGW32CE__ is defined. + + * gcov-io.c (gcov_open) : Call setvbuf instead of setbuf in mingw32ce. + + * libgcov.c (gcov_exit) : Don't call getenv and setenv in mingw32ce. + 2006-12-03 Pedro Alves <ped...@po...> * config/arm/arm.c (arm_major_arch, arm_thumb_arch_p): New Modified: trunk/cegcc/src/gcc/gcc/config/arm/t-arm-coff =================================================================== --- trunk/cegcc/src/gcc/gcc/config/arm/t-arm-coff 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/config/arm/t-arm-coff 2006-12-30 11:25:16 UTC (rev 853) @@ -31,4 +31,4 @@ # Currently there is a bug somewhere in GCC's alias analysis # or scheduling code that is breaking _fpmul_parts in fp-bit.c. # Disabling function inlining is a workaround for this problem. -TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline +TARGET_LIBGCC2_CFLAGS = -fno-inline Modified: trunk/cegcc/src/gcc/gcc/config/arm/t-arm-elf =================================================================== --- trunk/cegcc/src/gcc/gcc/config/arm/t-arm-elf 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/config/arm/t-arm-elf 2006-12-30 11:25:16 UTC (rev 853) @@ -67,7 +67,7 @@ # Currently there is a bug somewhere in GCC's alias analysis # or scheduling code that is breaking _fpmul_parts in fp-bit.c. # Disabling function inlining is a workaround for this problem. -TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline +TARGET_LIBGCC2_CFLAGS = -fno-inline # Assemble startup files. $(T)crti.o: $(srcdir)/config/arm/crti.asm $(GCC_PASSES) Modified: trunk/cegcc/src/gcc/gcc/config/arm/t-pe =================================================================== --- trunk/cegcc/src/gcc/gcc/config/arm/t-pe 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/config/arm/t-pe 2006-12-30 11:25:16 UTC (rev 853) @@ -47,4 +47,3 @@ LIBGCC = stmp-multilib INSTALL_LIBGCC = install-multilib -TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc Modified: trunk/cegcc/src/gcc/gcc/config/arm/t-strongarm-elf =================================================================== --- trunk/cegcc/src/gcc/gcc/config/arm/t-strongarm-elf 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/config/arm/t-strongarm-elf 2006-12-30 11:25:16 UTC (rev 853) @@ -32,7 +32,7 @@ # Currently there is a bug somewhere in GCC's alias analysis # or scheduling code that is breaking _fpmul_parts in fp-bit.c. # Disabling function inlining is a workaround for this problem. -TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline +TARGET_LIBGCC2_CFLAGS = -fno-inline # Assemble startup files. $(T)crti.o: $(srcdir)/config/arm/crti.asm $(GCC_PASSES) Modified: trunk/cegcc/src/gcc/gcc/config/arm/t-strongarm-pe =================================================================== --- trunk/cegcc/src/gcc/gcc/config/arm/t-strongarm-pe 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/config/arm/t-strongarm-pe 2006-12-30 11:25:16 UTC (rev 853) @@ -35,4 +35,4 @@ # Currently there is a bug somewhere in GCC's alias analysis # or scheduling code that is breaking _fpmul_parts in fp-bit.c. # Disabling function inlining is a workaround for this problem. -TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline +TARGET_LIBGCC2_CFLAGS = -fno-inline Modified: trunk/cegcc/src/gcc/gcc/config/arm/t-wince-pe =================================================================== --- trunk/cegcc/src/gcc/gcc/config/arm/t-wince-pe 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/config/arm/t-wince-pe 2006-12-30 11:25:16 UTC (rev 853) @@ -55,4 +55,4 @@ LIBGCC = stmp-multilib INSTALL_LIBGCC = install-multilib -TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc +TARGET_LIBGCC2_CFLAGS = Modified: trunk/cegcc/src/gcc/gcc/config/arm/t-xscale-coff =================================================================== --- trunk/cegcc/src/gcc/gcc/config/arm/t-xscale-coff 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/config/arm/t-xscale-coff 2006-12-30 11:25:16 UTC (rev 853) @@ -42,4 +42,4 @@ # Currently there is a bug somewhere in GCC's alias analysis # or scheduling code that is breaking _fpmul_parts in fp-bit.c. # Disabling function inlining is a workaround for this problem. -TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline +TARGET_LIBGCC2_CFLAGS = -fno-inline Modified: trunk/cegcc/src/gcc/gcc/config/arm/t-xscale-elf =================================================================== --- trunk/cegcc/src/gcc/gcc/config/arm/t-xscale-elf 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/config/arm/t-xscale-elf 2006-12-30 11:25:16 UTC (rev 853) @@ -54,7 +54,7 @@ # Currently there is a bug somewhere in GCC's alias analysis # or scheduling code that is breaking _fpmul_parts in fp-bit.c. # Disabling function inlining is a workaround for this problem. -TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline +TARGET_LIBGCC2_CFLAGS = -fno-inline # Assemble startup files. $(T)crti.o: $(srcdir)/config/arm/crti.asm $(GCC_PASSES) Modified: trunk/cegcc/src/gcc/gcc/coverage.c =================================================================== --- trunk/cegcc/src/gcc/gcc/coverage.c 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/coverage.c 2006-12-30 11:25:16 UTC (rev 853) @@ -776,6 +776,7 @@ unsigned n_fns; const struct function_list *fn; tree string_type; + char *gcov_cross_prefix; /* Count the number of active counters. */ for (n_ctr_types = 0, ix = 0; ix != GCOV_COUNTERS; ix++) @@ -811,12 +812,26 @@ field = build_decl (FIELD_DECL, NULL_TREE, string_type); TREE_CHAIN (field) = fields; fields = field; - filename = getpwd (); - filename = (filename && da_file_name[0] != '/' + + /* + * Additional environment variable for cross-development. + */ + if (gcov_cross_prefix = getenv ("GCOV_CROSS_PREFIX")) + { + filename = concat (gcov_cross_prefix, "/", da_file_name, NULL); + filename_len = strlen (filename); + filename_string = build_string (filename_len + 1, filename); + } + else + { + filename = getpwd (); + filename = (filename && da_file_name[0] != '/' ? concat (filename, "/", da_file_name, NULL) : da_file_name); - filename_len = strlen (filename); - filename_string = build_string (filename_len + 1, filename); + filename_len = strlen (filename); + filename_string = build_string (filename_len + 1, filename); + } + if (filename != da_file_name) free (filename); TREE_TYPE (filename_string) = build_array_type Modified: trunk/cegcc/src/gcc/gcc/doc/gcov.texi =================================================================== --- trunk/cegcc/src/gcc/gcc/doc/gcov.texi 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/doc/gcov.texi 2006-12-30 11:25:16 UTC (rev 853) @@ -544,7 +544,8 @@ to create the needed directory structure, if it is not already present. To support cross-profiling, a program compiled with @option{-fprofile-arcs} -can relocate the data files based on two environment variables: +can relocate the data files based on two environment variables on the target +platform, or one on the host platform: @itemize @bullet @item @@ -558,6 +559,11 @@ @emph{Note:} GCOV_PREFIX_STRIP has no effect if GCOV_PREFIX is undefined, empty or non-absolute. + +@item +GCOV_CROSS_PREFIX is a host platform environment variable. Use it to specify +a target directory to prefix the compiled file name with, replacing the +compile directory. @end itemize For example, if the object file @file{/user/build/foo.o} was built with @@ -568,6 +574,13 @@ @samp{GCOV_PREFIX=/target/run} and @samp{GCOV_PREFIX_STRIP=1}. Such a setting will name the data file @file{/target/run/build/foo.gcda}. +Alternatively, you can set @samp{GCOV_CROSS_PREFIX=/target/run/build} when +compiling, to achieve the same effect. The object file will no longer contain +the information @file{/user/build/foo.o} but @file{/target/run/build/foo.o}. + +The host and target mechanisms are independent of each other, so they can be +used together. + You must move the data files to the expected directory tree in order to use them for profile directed optimizations (@option{--use-profile}), or to use the @command{gcov} tool. Modified: trunk/cegcc/src/gcc/gcc/gcov-io.c =================================================================== --- trunk/cegcc/src/gcc/gcc/gcov-io.c 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/gcov-io.c 2006-12-30 11:25:16 UTC (rev 853) @@ -134,7 +134,11 @@ return 0; #endif +#ifdef __MINGW32CE__ + setvbuf (gcov_var.file, (char *)0, _IONBF, (size_t)0); +#else setbuf (gcov_var.file, (char *)0); +#endif return 1; } Modified: trunk/cegcc/src/gcc/gcc/libgcov.c =================================================================== --- trunk/cegcc/src/gcc/gcc/libgcov.c 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/libgcov.c 2006-12-30 11:25:16 UTC (rev 853) @@ -194,6 +194,12 @@ } } +#ifdef __MINGW32CE__ + /* No getenv support, so disable this. */ + gcov_prefix = (char *)0; + gcov_prefix_strip = 0; + prefix_length = 0; +#else /* Get file name relocation prefix. Non-absolute values are ignored. */ gcov_prefix = getenv("GCOV_PREFIX"); if (gcov_prefix && IS_ABSOLUTE_PATH (gcov_prefix)) @@ -216,6 +222,7 @@ } else prefix_length = 0; +#endif /* Allocate and initialize the filename scratch space. */ gi_filename = alloca (prefix_length + gcov_max_filename + 1); @@ -310,6 +317,15 @@ continue; } #endif +#ifdef UNDER_CE + { + wchar_t x[256]; + int l = strlen(gi_filename); + l = (l < 256) ? l : 255; + wcstombs(x, gi_filename, l); + MessageBoxW(0, L"gcov_open", x, 0); + } +#endif if (!gcov_open (gi_filename)) { fprintf (stderr, "profiling:%s:Cannot open\n", gi_filename); Modified: trunk/cegcc/src/gcc/gcc/tsystem.h =================================================================== --- trunk/cegcc/src/gcc/gcc/tsystem.h 2006-12-30 11:23:27 UTC (rev 852) +++ trunk/cegcc/src/gcc/gcc/tsystem.h 2006-12-30 11:25:16 UTC (rev 853) @@ -92,12 +92,14 @@ /* All systems have this header. */ #include <sys/types.h> -/* All systems have this header. */ +#ifndef __MINGW32CE__ +/* All systems except Windows CE have this header. */ #include <errno.h> #ifndef errno extern int errno; #endif +#endif /* GCC (fixproto) guarantees these system headers exist. */ #include <string.h> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 11:15:31
|
Revision: 851 http://svn.sourceforge.net/cegcc/?rev=851&view=rev Author: dannybackx Date: 2006-12-30 03:15:28 -0800 (Sat, 30 Dec 2006) Log Message: ----------- Add new directory Added Paths: ----------- trunk/cegcc/src/profile/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 10:26:40
|
Revision: 850 http://svn.sourceforge.net/cegcc/?rev=850&view=rev Author: dannybackx Date: 2006-12-30 02:26:39 -0800 (Sat, 30 Dec 2006) Log Message: ----------- Document more of the stuff I learned about starting up and terminating WinCE apps while researching profiling. Modified Paths: -------------- trunk/cegcc/docs/index.html trunk/cegcc/docs/profile.html Modified: trunk/cegcc/docs/index.html =================================================================== --- trunk/cegcc/docs/index.html 2006-12-30 10:21:39 UTC (rev 849) +++ trunk/cegcc/docs/index.html 2006-12-30 10:26:39 UTC (rev 850) @@ -26,6 +26,12 @@ <li>CeGCC specifics (predefined macros, libraries)</li> <li>For the detail-hungry ..</li> </ul> +<LI><A HREF="profile.html">Profiling and test coverage support</A></LI> + <ul> + <li><A HREF="profile.html#getting started">Getting started</A></li> + <li><A HREF="profile.html#technical overview">Technical overview</A></li> + <li><A HREF="profile.html#start and terminate">Startup and termination of WinCE programs</A></li> + </ul> <LI><A HREF="license.html">License</A></LI> </UL> <P> Modified: trunk/cegcc/docs/profile.html =================================================================== --- trunk/cegcc/docs/profile.html 2006-12-30 10:21:39 UTC (rev 849) +++ trunk/cegcc/docs/profile.html 2006-12-30 10:26:39 UTC (rev 850) @@ -18,7 +18,9 @@ <A HREF="http://korea.gnu.org/manual/release/gcov/gcov_1.html">gcov</A> for their description. </P> +<A NAME="getting started"> <H1>1. Getting started</H1> +</A> The examples are also in the CeGCC source tree in directories <A HREF="http://cegcc.svn.sourceforge.net/viewvc/cegcc/trunk/cegcc/docs/examples/coverage">docs/examples/coverage</A> @@ -313,8 +315,12 @@ were executed. Modify <i>m1.c</i> so fibo() is called fewer times, and you'll see more modest numbers. +<A NAME="technical overview"> <H1>2 Technical overview : CeGCC (gcc) profiling and coverage support</H1> +</A> <P> +This piece of documentation is not strictly related to profiling and test coverage support, +the normal operation is also described. <H2>2.1 Overview</H2> <P> The tables below present an overview of how this all works, @@ -410,7 +416,9 @@ rather the compiler generates a call to _gcov_init from all compiled source files. The support functions are in <i>src/gcc/gcc/libgcov.c</i> and <i>src/gcc/gcc/gcov-io.c</i>. +<A NAME="start and terminate"> <H2>2.4 Ways in which WinCE applications start and terminate</H2> +</A> <H3>2.4.1 Startup</H3> <H4>2.4.1.1 main</H4> <P> @@ -430,10 +438,57 @@ (see the previous paragraph), the main.o is simply not used. The source for <i>main.o</i> is in <b>src/newlib/newlib/libc/sys/wince/main.c</b>. <H3>2.4.2 Termination</H3> -<H4>2.4.2.1 WinMain PostQuitMessage</H4> -<H4>2.4.2.2 WinMain fall through</H4> -<H4>2.4.2.3 WinMain WM_DESTROY</H4> -<H4>2.4.2.4 exit</H4> -<H4>2.4.2.5 main fall through</H4> +<P> +This chapter describes the various ways in which a Windows CE application can terminate. +<H4>2.4.2.1 WinMain WM_DESTROY</H4> +<P> +The <i>WM_DESTROY</i> message is sent to an application by the system +e.g. when the user hits the button to close that window. +The typical response of an application is to call <i>PostQuitMessage</i>. +<H4>2.4.2.2 WinMain PostQuitMessage</H4> +<P> +The <i>PostQuitMessage</i> function posts a request to terminate this thread or application. +It does so by sending a <i>WM_QUIT</i> message to the thread or application. +<P> +In response to <i>WM_QUIT</i>, the normal message loop will terminate. +<PRE> + BOOL r; + + while ((r = GetMessageW(&msg, wnd, 0, 0)) != 0) { + if (r != -1) { + TranslateMessage(&msg); + DispatchMessageW(&msg); + } else { + // Handle the error + } + } +</PRE> +<P> +This is implemented in the <i>GetMessageW</i> function : +when the function receives the WM_QUIT message, its return value is 0. +<H4>2.4.2.3 exit</H4> +<H5>2.4.2.3.1 arm-wince-cegcc exit</H5> +<P> +In our <i>arm-wince-cegcc</i> target, this is implemented in the system layer of newlib. +Startup and termination are both coded in <i>src/newlib/newlib/libc/sys/wince/startup.c</i>. +<P> +The <i>exit</i> function +(part of the stdlib part of newlib, in <i>src/newlib/newlib/libc/stdlib/</i>) +does little more than calling <i>_exit</i>. +The latter function jumps back into the <i>_startup_</i> function by using <i>longjmp</i> +and performs newlib cleanup, +and finally calls <i>ExitProcess</i> which is a Windows CE System Call. +<H5>2.4.2.3.2 arm-wince-mingw32ce exit</H5> +<P> +In our <i>arm-wince-mingw32ce</i> target, +exit is implemented in <i>src/mingw/atexit.c</i>. +It calls a cleanup function and <i>ExitProcess</i>. +<H4>2.4.2.4 WinMain / main fall through</H4> +<P> +On <i>arm-wince-cegcc</i>, falling through the end of <i>main</i> +gets us to the same place where calling <i>exit</i> leads to. +On <i>arm-wince-mingw32ce</i>, this is not true, +but the startup function (<i>WinMainCRTStartup</i>, +e.g. in <i>src/mingw/crt3.c</i>) calls the same functions as <i>exit</i>. </BODY> </HTML> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-30 10:21:44
|
Revision: 849 http://svn.sourceforge.net/cegcc/?rev=849&view=rev Author: dannybackx Date: 2006-12-30 02:21:39 -0800 (Sat, 30 Dec 2006) Log Message: ----------- Replace call of TerminateProcess by ExitProcess, this is the right thing to do according to MSDN ( http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcesdkr/html/wcesdkrexitprocess.asp ). Modified Paths: -------------- trunk/cegcc/src/newlib/ChangeLog.cegcc trunk/cegcc/src/newlib/newlib/libc/sys/wince/startup.c Modified: trunk/cegcc/src/newlib/ChangeLog.cegcc =================================================================== --- trunk/cegcc/src/newlib/ChangeLog.cegcc 2006-12-29 16:33:35 UTC (rev 848) +++ trunk/cegcc/src/newlib/ChangeLog.cegcc 2006-12-30 10:21:39 UTC (rev 849) @@ -1,3 +1,8 @@ +2006-12-29 Danny Backx <dan...@us...> + + * newlib/libc/sys/wince/startup.c : Call ExitProcess instead of + TerminateProcess. + 2006-10-10 Pedro Alves <ped...@po...> * configure.in : Add target-libgloss to $noconfigdirs. Modified: trunk/cegcc/src/newlib/newlib/libc/sys/wince/startup.c =================================================================== --- trunk/cegcc/src/newlib/newlib/libc/sys/wince/startup.c 2006-12-29 16:33:35 UTC (rev 848) +++ trunk/cegcc/src/newlib/newlib/libc/sys/wince/startup.c 2006-12-30 10:21:39 UTC (rev 849) @@ -532,7 +532,7 @@ WCETRACE(WCE_IO, "_startup: going to terminate with exitcode: %d", exitcode); WCETRACECLOSE(); - TerminateProcess(GetCurrentProcess(), exitcode); + ExitProcess(exitcode); return exitcode; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dan...@us...> - 2006-12-29 16:33:41
|
Revision: 848 http://svn.sourceforge.net/cegcc/?rev=848&view=rev Author: dannybackx Date: 2006-12-29 08:33:35 -0800 (Fri, 29 Dec 2006) Log Message: ----------- Remove most of the technical nonsense, put examples in here that show what we've got to offer, without duplicating existing documentation. Modified Paths: -------------- trunk/cegcc/docs/profile.html Modified: trunk/cegcc/docs/profile.html =================================================================== --- trunk/cegcc/docs/profile.html 2006-12-27 11:07:33 UTC (rev 847) +++ trunk/cegcc/docs/profile.html 2006-12-29 16:33:35 UTC (rev 848) @@ -1,20 +1,322 @@ <HTML> -<TITLE>Technical overview : CeGCC (gcc) profiling and coverage support</TITLE> +<TITLE>Using profiling and test coverage tools with CeGCC</TITLE> <BODY> -<H1>Technical overview : CeGCC (gcc) profiling and coverage support</H1> <P> -This document describes the way in which CeGCC -(and basically any gcc) -implements two sets of functionality : +This document provides an introduction and examples showing how to +do profiling and test coverage analysis, +and it also provides some of the technical details on how all this works. +We're covering two sets of related functionalities here : <ul> <li>profiling <li>test coverage </ul> <P> -These are two related but different functionalities. -See the man pages of gprof and gcov for their description. -<H1>1. Overview</H1> +This document doesn't duplicate their documentation, so please consult +the man pages of +<A HREF="http://www.delorie.com/gnu/docs/binutils/gprof_toc.html">gprof</A> +and +<A HREF="http://korea.gnu.org/manual/release/gcov/gcov_1.html">gcov</A> +for their description. +</P> +<H1>1. Getting started</H1> +The examples are also in the CeGCC source tree in +directories +<A HREF="http://cegcc.svn.sourceforge.net/viewvc/cegcc/trunk/cegcc/docs/examples/coverage">docs/examples/coverage</A> +and <A HREF="http://cegcc.svn.sourceforge.net/viewvc/cegcc/trunk/cegcc/docs/examples/profile">docs/examples/profile</A>. <P> +<H2>1.1 Profiling</H2> +<H3>1.1.1 Summary</H3> +<P> +Profiling is triggered by using the compiler with the <i>-pg</i> command line option, +a program compiled with it will generate a single file calles <i>gmon.out</i>. +You can decode the <i>gmon.out</i> file by using the <i>gprof</i> tool. +<H3>1.1.2 Sample Makefile</H3> +<P> +This <i>Makefile</i> has pieces that can be copied in your own project's Makefile. +It uses the <i>pcp</i>, <i>prm</i>, and <i>prun</i> commands from the +<a href="www.synce.org">Synce</a> project. +<P> +<PRE> +.SUFFIXES: .exe .c .h .rc .rsc .C + +ARCH= arm-wince-cegcc +CC= ${ARCH}-gcc ${CFLAGS} + +CFLAGS= -g -D_WIN32_IE=0x0400 -pg + +.o.exe: + ${ARCH}-gcc ${CFLAGS} -o $@ $? + +.c.exe: + ${ARCH}-gcc ${CFLAGS} -o $@ $? + +.C.exe: + ${ARCH}-g++ ${CFLAGS} -o $@ $? + +all:: fibo.exe fibo.explain + +clean: + -rm -f *.o *.exe *.rsc gmon.out *.explain *.gmon + +dist: + pcp fibo.exe ":/storage card/devel/fibo.exe" + +fibo.explain: fibo.gmon fibo.exe + ${ARCH}-gprof -q -x -l fibo.exe fibo.gmon > fibo.explain + +fibo.gmon: fibo.exe + pcp fibo.exe ":/storage card/devel/fibo.exe" + prun "/storage card/devel/fibo.exe" + sleep 5 + pcp ":/storage card/devel/gmon.out" fibo.gmon + prm "/storage card/devel/gmon.out" +</PRE> +<H3>1.1.3 Execution sample</H3> +<P> +When you run <i>make</i>, this happens : +<P> +<PRE> +<i>dannypc: {10}</i> <b>make</b> +arm-wince-cegcc-gcc -g -D_WIN32_IE=0x0400 -pg -o fibo.exe fibo.c +<i>Info: resolving _CRT_MT by linking to __imp__CRT_MT (auto-import)</i> +pcp fibo.exe ":/storage card/devel/fibo.exe" +<i>File copy of 31491 bytes took 0 minutes and 1 seconds, that's 31491 bytes/s.</i> +prun "/storage card/devel/fibo.exe" +sleep 5 +pcp ":/storage card/devel/gmon.out" fibo.gmon +<i>File copy took less than one second!</i> +prm "/storage card/devel/gmon.out" +arm-wince-cegcc-gprof -q -x -l fibo.exe fibo.gmon > fibo.explain +<i>dannypc: {11}</i> +</PRE> +<P> +The top of the <i>fibo.explain</i> file looks like this : +<PRE> + Call graph (explanation follows) + + +granularity: each sample hit covers 4 byte(s) no time propagated + +index % time self children called name + 0.00 0.00 19/21871 main (fibo.c:34 @ 11238) [45] + 0.00 0.00 21852/21871 fibo (fibo.c:12 @ 110e8) [28] +[1] 0.0 0.00 0.00 21871 fibo (fibo.c:9 @ 110b0) [1] +</PRE> +<P> +Run the commands for yourself and read the complete explanation in the output file. +<H2>1.2 Test coverage</H2> +<H3>1.2.1 Summary</H3> +<P> +Test coverage generates far more interesting results. +It is triggered by several options to the compiler. +An easy way to get started is to use <i>--coverage</i>. +<P> +An application built with this option will create a <i>.gcda</i> file for each source +for compiled in the application. +You can use the <i>gcov</i> tool to decode the contents of these files. +<H3>1.2.2 Sample Makefile</H3> +<P> +<PRE> +.SUFFIXES: .exe .c .h .rc .rsc .C + +ARCH= arm-wince-cegcc +ARCH2= arm-wince-mingw32ce + +SE= GCOV_CROSS_PREFIX="\\storage card\\devel" +CC= ${SE} ${ARCH}-gcc ${CFLAGS} +WINDRES= ${ARCH}-windres + +EXECS= fibo.exe m1.exe +CFLAGS= -g -D_WIN32_IE=0x0400 --coverage + +.rc.rsc: + ${ARCH}-windres $? $@ + +.o.exe: + ${SE} ${ARCH}-gcc ${CFLAGS} -o $@ $? + +.c.exe: + ${SE} ${ARCH}-gcc ${CFLAGS} -o $@ $? + +.C.exe: + ${SE} ${ARCH}-g++ ${CFLAGS} -o $@ $? + +all:: ${EXECS} + +clean: + -rm -f *.o *.exe *.rsc *.gcno *.gcda *.gcov + +dist: + for i in $(EXECS) ; \ + do \ + pcp $$i ":/storage card/devel/"$$i ; \ + done + +fibo.gcda: fibo.exe + pcp fibo.exe ":/storage card/devel/fibo.exe" + -prm "/storage card/devel/fibo.gcda" + prun "/storage card/devel/fibo.exe" + sleep 5 + pcp ":/storage card/devel/fibo.gcda" fibo.gcda + -prm "/storage card/devel/fibo.gcda" + +fibo.c.gcov: fibo.gcda + arm-wince-cegcc-gcov -a fibo.c + +all:: fibo.c.gcov + +# +# The m1.exe example uses the mingw32ce target, +# and demonstrates multiple source files. +# +m1.exe: m1.o a.o b.o + ${SE} ${ARCH2}-gcc ${CFLAGS} -o m1.exe a.o b.o m1.o + +m1.o: m1.c + ${SE} ${ARCH2}-gcc ${CFLAGS} -c m1.c + +a.o: a.c + ${SE} ${ARCH2}-gcc ${CFLAGS} -c a.c + +b.o: b.c + ${SE} ${ARCH2}-gcc ${CFLAGS} -c b.c + +a.gcda b.gcda m1.gcda: m1.exe + pcp m1.exe ":/storage card/devel/m1.exe" + -prm "/storage card/devel/m1.gcda" + -prm "/storage card/devel/a.gcda" + -prm "/storage card/devel/b.gcda" + prun "/storage card/devel/m1.exe" + sleep 5 + pcp ":/storage card/devel/m1.gcda" m1.gcda + pcp ":/storage card/devel/a.gcda" a.gcda + pcp ":/storage card/devel/b.gcda" b.gcda + -prm "/storage card/devel/m1.gcda" + -prm "/storage card/devel/a.gcda" + -prm "/storage card/devel/b.gcda" + +m1.c.gcov: m1.gcda + arm-wince-cegcc-gcov -a m1.c + +a.c.gcov: a.gcda + arm-wince-cegcc-gcov -a a.c + +b.c.gcov: b.gcda + arm-wince-cegcc-gcov -a b.c + +all:: m1.c.gcov a.c.gcov b.c.gcov +</PRE> +<H3>1.2.3 Execution sample</H3> +<PRE> +<i>dannypc: {33} </i><b>make</b> +GCOV_CROSS_PREFIX="\\storage card\\devel" arm-wince-cegcc-gcc -g -D_WIN32_IE=0x0400 --coverage -o fibo.exe fibo.c +<i>Info: resolving _CRT_MT by linking to __imp__CRT_MT (auto-import)</i> +GCOV_CROSS_PREFIX="\\storage card\\devel" arm-wince-mingw32ce-gcc -g -D_WIN32_IE=0x0400 --coverage -c m1.c +GCOV_CROSS_PREFIX="\\storage card\\devel" arm-wince-mingw32ce-gcc -g -D_WIN32_IE=0x0400 --coverage -c a.c +GCOV_CROSS_PREFIX="\\storage card\\devel" arm-wince-mingw32ce-gcc -g -D_WIN32_IE=0x0400 --coverage -c b.c +GCOV_CROSS_PREFIX="\\storage card\\devel" arm-wince-mingw32ce-gcc -g -D_WIN32_IE=0x0400 --coverage -o m1.exe a.o b.o m1.o +pcp fibo.exe ":/storage card/devel/fibo.exe" +<i>File copy took less than one second!</i> +prm "/storage card/devel/fibo.gcda" +<i>prm: Failed to remove '\storage card\devel\fibo.gcda': File not found</i> +<i>gmake: [fibo.gcda] Error 1 (ignored)</i> +prun "/storage card/devel/fibo.exe" +sleep 5 +pcp ":/storage card/devel/fibo.gcda" fibo.gcda +<i>File copy took less than one second!</i> +prm "/storage card/devel/fibo.gcda" +arm-wince-cegcc-gcov -a fibo.c +<i>File 'fibo.c'</i> +<i>Lines executed:100.00% of 20</i> +<i>fibo.c:creating 'fibo.c.gcov'</i> +<i></i> +pcp m1.exe ":/storage card/devel/m1.exe" +<i>File copy of 39012 bytes took 0 minutes and 1 seconds, that's 39012 bytes/s.</i> +prm "/storage card/devel/m1.gcda" +<i>prm: Failed to remove '\storage card\devel\m1.gcda': File not found</i> +<i>gmake: [m1.gcda] Error 1 (ignored)</i> +prm "/storage card/devel/a.gcda" +<i>prm: Failed to remove '\storage card\devel\a.gcda': File not found</i> +<i>gmake: [m1.gcda] Error 1 (ignored)</i> +prm "/storage card/devel/b.gcda" +<i>prm: Failed to remove '\storage card\devel\b.gcda': File not found</i> +<i>gmake: [m1.gcda] Error 1 (ignored)</i> +prun "/storage card/devel/m1.exe" +sleep 5 +pcp ":/storage card/devel/m1.gcda" m1.gcda +<i>File copy took less than one second!</i> +pcp ":/storage card/devel/a.gcda" a.gcda +<i>File copy took less than one second!</i> +pcp ":/storage card/devel/b.gcda" b.gcda +<i>File copy took less than one second!</i> +prm "/storage card/devel/m1.gcda" +prm "/storage card/devel/a.gcda" +prm "/storage card/devel/b.gcda" +arm-wince-cegcc-gcov -a m1.c +<i>File '/opt/mingw32ce/lib/gcc/arm-wince-mingw32ce/4.1.0/../../../../arm-wince-mingw32ce/include/string.h'</i> +<i>Lines executed:0.00% of 3</i> +<i>/opt/mingw32ce/lib/gcc/arm-wince-mingw32ce/4.1.0/../../../../arm-wince-mingw32ce/include/string.h:creating 'string.h.gcov'</i> +<i></i> +<i>File '/opt/mingw32ce/lib/gcc/arm-wince-mingw32ce/4.1.0/../../../../arm-wince-mingw32ce/include/stdlib.h'</i> +<i>Lines executed:0.00% of 5</i> +<i>/opt/mingw32ce/lib/gcc/arm-wince-mingw32ce/4.1.0/../../../../arm-wince-mingw32ce/include/stdlib.h:creating 'stdlib.h.gcov'</i> +<i></i> +<i>File 'm1.c'</i> +<i>Lines executed:100.00% of 10</i> +<i>m1.c:creating 'm1.c.gcov'</i> +<i></i> +arm-wince-cegcc-gcov -a a.c +<i>File 'a.c'</i> +<i>Lines executed:100.00% of 3</i> +<i>a.c:creating 'a.c.gcov'</i> +<i></i> +arm-wince-cegcc-gcov -a b.c +<i>File 'b.c'</i> +<i>Lines executed:100.00% of 6</i> +<i>b.c:creating 'b.c.gcov'</i> +<i></i> +<i>dannypc: {34} </i> +</PRE> +<P> +The output above includes some interesting results already : +it mentions the amount of source code executed per source file. +The contents of the <i>.gcov</i> files are even more interesting. +This is the contents of <i>b.c.gcov</i> : +<PRE> + -: 0:Source:b.c + -: 0:Graph:b.gcno + -: 0:Data:b.gcda + -: 0:Runs:1 + -: 0:Programs:1 + -: 1:/* + -: 2: * Profiling test + -: 3: */ + -: 4:int fibo(int x) + 2692507: 5:{ + 2692507: 6: if (x < 3) + 2692507: 6-block 0 + 1346268: 7: return 1; + 1346268: 7-block 0 + 2692507: 8: return fibo(x-1) + fibo(x-2); + 1346239: 8-block 0 + 2692507: 8-block 1 + -: 9:} + -: 10: + -: 11:int func_b(int i) + 29: 12:{ + 29: 13: return fibo(i); + 29: 13-block 0 + -: 14:} +</PRE> +<P> +The seven digit numbers in the first column are the number of times these source lines +were executed. +Modify <i>m1.c</i> so fibo() is called fewer times, +and you'll see more modest numbers. +<H1>2 Technical overview : CeGCC (gcc) profiling and coverage support</H1> +<P> +<H2>2.1 Overview</H2> +<P> The tables below present an overview of how this all works, the details are described further in this document. <P> @@ -89,57 +391,12 @@ <TD>gcov_exit</TD> </TR> </TABLE> -<H1>2. Profiling</H1> -<H2>2.1 Trigger by</H2> -gcc -pg -<H2>2.2 Tool options</H2> -<pre> -<b>dannypc: {94}</b> <i>arm-wince-cegcc-gcc -v -g -pg -o m1.cexe m1.co a.co b.co</i> -Using built-in specs. -Target: arm-wince-cegcc -Configured with: /home/danny/src/cegcc/svn.sf.net/cegcc/trunk/cegcc/src/gcc/configure \ - --with-gcc --with-gnu-ld --with-gnu-as --target=arm-wince-cegcc --prefix=/opt/cegcc \ - --enable-threads=win32 --disable-nls --enable-languages=c,c++ --disable-win32-registry \ - --disable-multilib --disable-interwork --without-newlib --enable-checking --with-headers -Thread model: win32 -gcc version 4.1.0 - /opt/cegcc/libexec/gcc/arm-wince-cegcc/4.1.0/collect2 -Bdynamic -o m1.cexe \ - /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib/crt0.o \ - /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib/crtst.o \ - /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib/gcrt3.o \ - -L/opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0 -L/opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib \ - m1.co a.co b.co -lcegcc -lgcc -lgmon -lcoredll -lcegcc -lgcc - Info: resolving _CRT_MT by linking to __imp__CRT_MT (auto-import) -</pre> -<H2>2.3 What's where</H2> -<H3>2.3.1 crt0.o</H3> -<pre> -00000000 b .bss -00000000 d .data -00000000 p .pdata -00000000 t .text -00000008 T WinMainCRTStartup -00000034 t _PMyMain -00000030 t _PStartup -0000002c t _P__set_runtime_thread_mode -00000008 T __EH_CODE_START__ -00000000 T __EH_HANDLER__ - U __set_runtime_thread_mode - U _eh_handler -00000008 T _mainCRTStartup - U _startup - U main -</pre> -<H3>2.3.2 crtst.o</H3> -<pre> -00000000 b .bss -00000000 d .data -00000000 t .text - U _CRT_MT -00000000 T __set_runtime_thread_mode -</pre> -<H3>2.3.3 gcrt3.o</H3> +<H2>2.2 Profiling</H2> <P> +Profiling support depends on special startup code (in <i>gcrt3.o</i>) +and an exit handler (<i>mcleanup</i>) installed by it. +<H4>2.2.1 gcrt3.o</H4> +<P> The source of <i>gcrt3.o</i> is in <i>src/mingw/profile/gcrt0.c</i>. It provides for the function <b>_monstartup</b> whose purpose is to call <b>monstartup</b> and register <b>_mcleanup</b> @@ -147,349 +404,20 @@ <P> Both <b>_mcleanup</b> and <b>monstartup</b> are in <b>libgmon.a</b>, their source is <i>src/mingw/profile/gmon.c</i>. +<H2>2.3 Coverage</H2> <P> -<pre> -00000000 b .bss -00000000 t .ctors -00000000 d .data -00000000 t .text -00000064 t __eprol - U _mcleanup -00000000 T _monstartup - U atexit -00000000 b called.1802 - U etext - U monstartup -</pre> -<H3>2.3.4 -lgmon</H3> -<pre> -gmon.o: -00000000 b .bss -00000000 d .data -00000000 r .rdata -00000000 t .text - U FormatMessageW - U GetLastError - U GetModuleFileNameW - U MessageBoxW - U __addsf3 - U __divsf3 - U __fixsfsi - U __floatsisf - U __mulsf3 - U __udivsi3 -00000000 D _gmonparam -00000354 T _mcleanup - U bzero -00000000 t fake_sbrk - U fclose - U fopen - U fwrite - U malloc -000006bc T moncontrol -0000002c T monstartup - U profil -00000000 b s_scale - U wcstombs - -mcount.o: -00000000 b .bss -00000000 d .data -00000000 t .text - U __udivsi3 - U _gmonparam -00000334 T _mcount -00000000 T mcount_internal - -profil.o: -00000000 b .bss -00000000 d .data -00000000 t .text - U CloseHandle - U CreateThread - U DuplicateHandle - U GetThreadContext - U ResumeThread - U SetThreadPriority - U Sleep - U SuspendThread - U TerminateThread - U __udivdi3 -00000000 t get_thrpc - U memset -00000000 b prof -00000418 T profil -000002f4 T profile_ctl -0000018c t profile_off -00000200 t profile_on -00000090 t profthr_func -</pre> -<H1>3. Coverage support</H1> -<H2>3.1 </H2> -<pre> -dannypc: {55} arm-wince-cegcc-gcc -g -fprofile-arcs -ftest-coverage -o m1.cexe m1.co a.co b.co -v -Using built-in specs. -Target: arm-wince-cegcc -Configured with: /home/danny/src/cegcc/svn.sf.net/cegcc/trunk/cegcc/src/gcc/configure --with-gcc --with-gnu-ld --with-gnu-as --target=arm-wince-cegcc --prefix=/opt/cegcc --enable-threads=win32 --disable-nls --enable-languages=c,c++ --disable-win32-registry --disable-multilib --disable-interwork --without-newlib --enable-checking --with-headers -Thread model: win32 -gcc version 4.1.0 - /opt/cegcc/libexec/gcc/arm-wince-cegcc/4.1.0/collect2 -Bdynamic -o m1.cexe /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib/crt0.o /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib/crtst.o -L/opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0 -L/opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib m1.co a.co b.co -lgcov -lcegcc -lgcc -lcoredll -lcegcc -lgcc -Info: resolving _CRT_MT by linking to __imp__CRT_MT (auto-import) - -</pre> -<H2>3.2 </H2> -<pre> -dannypc: {56} arm-wince-cegcc-nm m1.co -00000000 b .bss -00000000 t .ctors -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_aranges -00000000 N .debug_frame -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_loc -00000000 N .debug_pubnames -00000000 N .debug_str -00000000 r .rdata -00000000 t .text -00000140 t _GLOBAL__I_0_main - U __gccmain - U __gcov_init - U __gcov_merge_add - U func_a - U func_b -00000000 T main -</pre> -<H2>3.3 libgcov.a</H2> -<pre> -dannypc: {71} arm-wince-cegcc-nm /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/libgcov.a - -_gcov.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_aranges -00000000 N .debug_frame -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_loc -00000000 N .debug_pubnames -00000000 N .debug_ranges -00000000 N .debug_str -00000000 r .rdata -00000000 t .text - U MessageBoxW -00000428 T __gcov_close -000011fc T __gcov_flush -0000009c T __gcov_init -00000484 T __gcov_open -0000053c T __gcov_read_counter -00000580 T __gcov_read_summary -0000051c T __gcov_read_unsigned -000001dc T __gcov_seek -00001020 C __gcov_var -000002d0 T __gcov_write_counter -00000304 T __gcov_write_summary -000002b0 T __gcov_write_tag_length -000002ec T __gcov_write_unsigned - U __getreent - U abort - U atexit - U atoi - U fclose - U fopen - U fprintf - U fread - U fseek - U ftell - U fwrite -00000008 b gcov_crc32 -000005cc t gcov_exit -00000004 b gcov_list -00000000 b gcov_max_filename -00000358 t gcov_read_words -00000000 t gcov_version -00000190 t gcov_write_block -0000022c t gcov_write_words - U getenv - U memcmp - U memcpy - U memset - U setbuf - U strcpy - U strlen - -_gcov_merge_add.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_aranges -00000000 N .debug_frame -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_pubnames -00000000 N .debug_str -00000000 t .text -00000000 T __gcov_merge_add - -_gcov_merge_single.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_aranges -00000000 N .debug_frame -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_pubnames -00000000 N .debug_str -00000000 t .text -00000000 T __gcov_merge_single - -_gcov_merge_delta.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_aranges -00000000 N .debug_frame -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_pubnames -00000000 N .debug_str -00000000 t .text -00000000 T __gcov_merge_delta - -_gcov_fork.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_str -00000000 t .text - -_gcov_execl.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_str -00000000 t .text - -_gcov_execlp.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_str -00000000 t .text - -_gcov_execle.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_str -00000000 t .text - -_gcov_execv.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_str -00000000 t .text - -_gcov_execvp.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_str -00000000 t .text - -_gcov_execve.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_str -00000000 t .text - -_gcov_interval_profiler.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_str -00000000 t .text - -_gcov_pow2_profiler.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_str -00000000 t .text - -_gcov_one_value_profiler.o: -00000000 b .bss -00000000 d .data -00000000 N .debug_abbrev -00000000 N .debug_info -00000000 N .debug_line -00000000 N .debug_str -00000000 t .text -dannypc: {72} -</pre> -<H1>4. Normal linkage</H1> -<pre> -dannypc: {15} arm-wince-cegcc-gcc -v -c d.c -Using built-in specs. -Target: arm-wince-cegcc -Configured with: /home/danny/src/cegcc/svn.sf.net/cegcc/trunk/cegcc/src/gcc/configure --with-gcc --with-gnu-ld --with-gnu-as --target=arm-wince-cegcc --prefix=/opt/cegcc --enable-threads=win32 --disable-nls --enable-languages=c,c++ --disable-win32-registry --disable-multilib --disable-interwork --without-newlib --enable-checking --with-headers -Thread model: win32 -gcc version 4.1.0 - /opt/cegcc/libexec/gcc/arm-wince-cegcc/4.1.0/cc1 -quiet -v -D__CEGCC32__ -D__CEGCC__ -Dunix -D__unix__ -D__unix -idirafter /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib/../include/w32api -idirafter ../../include/w32api d.c -quiet -dumpbase d.c -auxbase d -version -o /home/danny/tmp/cctFcZE7.s -ignoring nonexistent directory "/opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/sys-include" -ignoring nonexistent directory "../../include/w32api" -#include "..." search starts here: -#include <...> search starts here: - /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/include - /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/include - /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib/../include/w32api -End of search list. -GNU C version 4.1.0 (arm-wince-cegcc) - compiled by GNU C version 4.0.1 (4.0.1-5mdk for Mandriva Linux release 2006.0). -GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 -Compiler executable checksum: 17d7394c32aee3aebff6a808e8a7d8ad - /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/bin/as -o d.o /home/danny/tmp/cctFcZE7.s -dannypc: {16} arm-wince-cegcc-gcc -v -o d.exe d.o -Using built-in specs. -Target: arm-wince-cegcc -Configured with: /home/danny/src/cegcc/svn.sf.net/cegcc/trunk/cegcc/src/gcc/configure --with-gcc --with-gnu-ld --with-gnu-as --target=arm-wince-cegcc --prefix=/opt/cegcc --enable-threads=win32 --disable-nls --enable-languages=c,c++ --disable-win32-registry --disable-multilib --disable-interwork --without-newlib --enable-checking --with-headers -Thread model: win32 -gcc version 4.1.0 - /opt/cegcc/libexec/gcc/arm-wince-cegcc/4.1.0/collect2 -Bdynamic -o d.exe /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib/crt0.o /opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib/crtst.o -L/opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0 -L/opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib d.o -lcegcc -lgcc -lcoredll -lcegcc -lgcc -Info: resolving _CRT_MT by linking to __imp__CRT_MT (auto-import) -</pre> -<H2> -<H1>5. Ways in which WinCE applications start and terminate</H1> -<H2>5.1 Startup</H2> -<H3>5.1.1 main</H3> +For gcov support, there is no special startup function, +rather the compiler generates a call to _gcov_init from all compiled source files. +The support functions are in <i>src/gcc/gcc/libgcov.c</i> +and <i>src/gcc/gcc/gcov-io.c</i>. +<H2>2.4 Ways in which WinCE applications start and terminate</H2> +<H3>2.4.1 Startup</H3> +<H4>2.4.1.1 main</H4> <P> <b>main</b> is the entry point for C language programs in college textbooks, it's also the default entry point generated by cegcc. <i>crt0.o</i> will call <b>main</b>. -<H3>5.1.2 WinMain</H3> +<H4>2.4.1.2 WinMain</H4> <P> The normal startup for an application with a GUI (graphical user interface) on a Windows platform is <b>WinMain</b>. @@ -501,11 +429,11 @@ When you compile a program that has a <i>main</i> function of its own (see the previous paragraph), the main.o is simply not used. The source for <i>main.o</i> is in <b>src/newlib/newlib/libc/sys/wince/main.c</b>. -<H2>5.2 Termination</H2> -<H3>5.2.1 WinMain PostQuitMessage</H3> -<H3>5.2.2 WinMain fall through</H3> -<H3>5.2.3 WinMain WM_DESTROY</H3> -<H3>5.2.4 exit</H3> -<H3>5.2.5 main fall through</H3> +<H3>2.4.2 Termination</H3> +<H4>2.4.2.1 WinMain PostQuitMessage</H4> +<H4>2.4.2.2 WinMain fall through</H4> +<H4>2.4.2.3 WinMain WM_DESTROY</H4> +<H4>2.4.2.4 exit</H4> +<H4>2.4.2.5 main fall through</H4> </BODY> </HTML> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |