Sigrid Haflínudóttirfirst dirty version of the portd7ad0686 years agoHistory
595 lines · 14.3 KB · Text
RawDownload
/*	WRMVCFLS.i	Copyright (C) 2007 Paul C. Pratt 	You can redistribute this file and/or modify it under the terms	of version 2 of the GNU General Public License as published by	the Free Software Foundation.  You should have received a copy	of the license along with this file; see the file COPYING. 	This file is distributed in the hope that it will be useful,	but WITHOUT ANY WARRANTY; without even the implied warranty of	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the	license for more details.*/ /*	WRite Mini vMac C specific FiLeS*/  LOCALPROC WriteMVCCompileAsmLinkCommonOptions(void){	{		switch (cur_targ) {			case gbk_targ_mach:			case gbk_targ_imch:			case gbk_targ_mc64:			case gbk_targ_mx11:			case gbk_targ_mi11:			case gbk_targ_mx64:				if (gbk_cpufam_x86 == gbo_cpufam) {					WriteCStrToDestFile(" -arch i386");				} else if (gbk_cpufam_x64 == gbo_cpufam) {					WriteCStrToDestFile(" -arch x86_64");				} else {					WriteCStrToDestFile(" -arch ppc");				}				break;			default:				break;		}	} 	if ((gbk_apifam_osx == gbo_apifam)		|| (gbk_apifam_cco == gbo_apifam))	{		if (gbk_cpufam_ppc == gbo_cpufam) {			WriteCStrToDestFile(" -mmacosx-version-min=10.1");		} else		if (gbk_cpufam_x64 == gbo_cpufam) {			WriteCStrToDestFile(" -mmacosx-version-min=10.5");		} else		{			WriteCStrToDestFile(" -mmacosx-version-min=10.4");		}	}} LOCALPROC WriteMVCLinkOSGlucompileCommonOptions(void){	if ((gbk_apifam_osx == gbo_apifam)		|| (gbk_apifam_cco == gbo_apifam))	{		WriteCStrToDestFile(" -isysroot");		if (ide_vers >= 3200) {			WriteCStrToDestFile(" /Developer/SDKs/MacOSX10.6.sdk");		} else if ((ide_vers >= 3100)			|| (gbk_cpufam_x64 == gbo_cpufam))		{			WriteCStrToDestFile(" /Developer/SDKs/MacOSX10.5.sdk");		} else {			WriteCStrToDestFile(" /Developer/SDKs/MacOSX10.4u.sdk");		}	}} LOCALPROC WriteMVCCompileLinkCommonOptions(void){#if 0	WriteCStrToDestFile(" -Werror");#endif	if (gbk_dbg_on == gbo_dbg) {		WriteCStrToDestFile(" -g");	}} LOCALPROC WriteMVCCOptions(void){	WriteCStrToDestFile(		" -Wall -Wmissing-prototypes -Wno-uninitialized"); 	WriteCStrToDestFile(" -Wundef -Wstrict-prototypes"); 	if (gbk_apifam_osx == gbo_apifam) {		WriteCStrToDestFile(" -Wno-deprecated-declarations");	}	WriteCStrToDestFile(" -fomit-frame-pointer");	WriteCStrToDestFile(" -fno-strict-aliasing");	WriteCStrToDestFile(" -fno-asynchronous-unwind-tables");	WriteCStrToDestFile(		" -Winline --param large-function-growth=1000");	if (gbk_targ_wcar == cur_targ) {		WriteCStrToDestFile(" -fno-leading-underscore");	}	switch (cur_targ) {		case gbk_targ_mach:		case gbk_targ_imch:		case gbk_targ_mc64:		case gbk_targ_mx11:		case gbk_targ_mi11:		case gbk_targ_mx64:			WriteCStrToDestFile(" -mdynamic-no-pic");			break;	}	WriteMVCCompileAsmLinkCommonOptions();	WriteMVCCompileLinkCommonOptions(); 	if (1 /* WantConfigDir */) {		WriteCStrToDestFile(" -I./");		Write_cfg_d_Name();		WriteCStrToDestFile(" -I./");		Write_src_d_Name();	}} LOCALPROC WriteMVCCOptOptions(void){	if (gbk_dbg_on != gbo_dbg) {		WriteCStrToDestFile(" -Os");	} else {		WriteCStrToDestFile(" -O0");	}} LOCALPROC DoFrameWorkMVCaddFile(void){	WriteCStrToDestFile(" -framework ");	WriteCStrToDestFile(DoFrameWork_gd()->s);} LOCALPROC Write_machoRsrcMVCDeps(void){	WriteMakeDependFile(WriteMainRsrcSrcPath);	WriteMakeDependFile(Write_machoAppIconPath);} LOCALPROC Write_machoRsrcMVCBuild(void){	WriteDestFileLn("/Developer/Tools/Rez \\");	++DestFileIndent;		WriteDestFileLn("-i /Developer/Headers/FlatCarbon \\");		WriteBgnDestFileLn();			WriteCStrToDestFile("\"");			WriteMainRsrcSrcPath();			WriteCStrToDestFile("\" \\");		WriteEndDestFileLn();		WriteBgnDestFileLn();			WriteCStrToDestFile("-o \"");			Write_machoRsrcPath();			WriteCStrToDestFile("\" \\");		WriteEndDestFileLn();		WriteDestFileLn("-useDF");	--DestFileIndent;} LOCALPROC WriteMVCSrcFileAsmName(void){	WriteCStrToDestFile(DoSrcFile_gd()->s);	WriteCStrToDestFile(".s");} LOCALPROC WriteMVCSrcFileAsmPath(void){	WriteFileInDirToDestFile0(Write_obj_d_ToDestFile,		WriteMVCSrcFileAsmName);} LOCALPROC DoMVCSrcFileMakeCompileBody(void){	blnr UseAPI = (DoSrcFile_gd()->Flgm & kCSrcFlgmUseAPI) != 0;	blnr Fast = (DoSrcFile_gd()->Flgm & kCSrcFlgmSortFirst) != 0; 	WriteBgnDestFileLn(); 	WriteCStrToDestFile("$(my_prefix)gcc -S");	WritePathArgInMakeCmnd(WriteSrcFileFilePath);	WriteCStrToDestFile(" -o");	WritePathArgInMakeCmnd(WriteMVCSrcFileAsmPath);	WriteSpaceToDestFile();	if (! UseAPI) {		if (Fast) {			WriteMakeVar("mk_COptionsFast");		} else {			WriteMakeVar("mk_COptions");		}	} else {		WriteMakeVar("mk_COptionsOSGLU");	} 	WriteEndDestFileLn();} LOCALPROC DoMVCSrcFileMakeAsmBody(void){	WriteBgnDestFileLn(); 	WriteCStrToDestFile("$(my_prefix)gcc -c");	WritePathArgInMakeCmnd(WriteMVCSrcFileAsmPath);	WriteCStrToDestFile(" -o");	WritePathArgInMakeCmnd(WriteSrcFileObjPath); 	WriteEndDestFileLn();} LOCALPROC DoMVCSrcFileMakeAsmDeps(void){	WriteMakeDependFile(WriteMVCSrcFileAsmPath);} LOCALPROC DoMVCSrcFileMakeCompile(void){	WriteMakeRule(WriteMVCSrcFileAsmPath,		DoSrcFileMakeCompileDeps,		DoMVCSrcFileMakeCompileBody);} LOCALPROC DoMVCSrcFileMakeAsm(void){	WriteMakeRule(WriteSrcFileObjPath,		DoMVCSrcFileMakeAsmDeps,		DoMVCSrcFileMakeAsmBody);} LOCALPROC DoMVCSrcFileStandardMakeAsms(void){	WriteBgnDestFileLn();	WriteMVCSrcFileAsmPath();	WriteSpaceToDestFile();	WriteBackSlashToDestFile();	WriteEndDestFileLn();} LOCALPROC DoMVCAllSrcFilesStandardMakeAsms(void){	DoAllSrcFilesSortWithSetup(DoMVCSrcFileStandardMakeAsms);} LOCALPROC WriteMVCMakeFile(void){	WriteDestFileLn("# make file generated by gryphel build system"); 	WriteBlankLineToDestFile(); 	WriteBgnDestFileLn();	WriteCStrToDestFile("mk_COptionsCommon =");	WriteMVCCOptions();	WriteEndDestFileLn(); 	WriteBgnDestFileLn();	WriteCStrToDestFile("mk_COptionsOSGLU = $(mk_COptionsCommon)");	if (gbk_apifam_osx == gbo_apifam) {		WriteCStrToDestFile(" -Wno-multichar");	}	WriteMVCLinkOSGlucompileCommonOptions();	WriteMVCCOptOptions();	WriteEndDestFileLn(); 	WriteBgnDestFileLn();	WriteCStrToDestFile("mk_COptionsNotOS = $(mk_COptionsCommon)");	if (gbk_cpufam_x86 == gbo_cpufam) {		WriteCStrToDestFile(" -mpreferred-stack-boundary=2");	}	WriteCStrToDestFile(" -fno-toplevel-reorder");	if (gbk_cpufam_x86 == gbo_cpufam) {		WriteCStrToDestFile(" -mtune=generic -march=i386");	}	WriteEndDestFileLn(); 	WriteBgnDestFileLn();	WriteCStrToDestFile("mk_COptions = $(mk_COptionsNotOS)");	WriteMVCCOptOptions();	WriteEndDestFileLn(); 	WriteBgnDestFileLn();	WriteCStrToDestFile("mk_COptionsFast = $(mk_COptionsNotOS)");	if (gbk_dbg_on != gbo_dbg) {		WriteCStrToDestFile(			" -O2 -fno-align-functions -fno-align-labels");	} else {		WriteMVCCOptOptions();	}	WriteEndDestFileLn(); 	switch (cur_targ) {		case gbk_targ_mach:			WriteDestFileLn("my_prefix = powerpc-apple-darwin9-");			break;		case gbk_targ_imch:			WriteDestFileLn("my_prefix = i686-apple-darwin11-");			break;		case gbk_targ_mc64:			WriteDestFileLn("my_prefix = x86_64-apple-darwin11-");			break;		case gbk_targ_wx86:			WriteDestFileLn("my_prefix = i686-w64-mingw32-");			break;		case gbk_targ_wx64:			WriteDestFileLn("my_prefix = x86_64-w64-mingw32-");			break;		case gbk_targ_lx86:			WriteDestFileLn("my_prefix = i386-pc-linux-");			break;		case gbk_targ_lx64:			WriteDestFileLn("my_prefix = x86_64-linux-gnu-");			break;		case gbk_targ_larm:			WriteDestFileLn("my_prefix = arm-linux-gnueabi-");			break;		case gbk_targ_lppc:			WriteDestFileLn("my_prefix = powerpc-linux-gnu-");			break;		case gbk_targ_lspr:			WriteDestFileLn("my_prefix = sparc-linux-gnu-");			break;		case gbk_targ_fbsd:			WriteDestFileLn("my_prefix = i386-pc-freebsd9-");			break;		case gbk_targ_fb64:			WriteDestFileLn("my_prefix = x86_64-pc-freebsd9-");			break;		case gbk_targ_nbsd:			WriteDestFileLn("my_prefix = i386-pc-netbsdelf-");			break;		case gbk_targ_nb64:			WriteDestFileLn("my_prefix = x86_64-pc-netbsdelf-");			break;		case gbk_targ_oind:			WriteDestFileLn("my_prefix = i386-pc-solaris2.11-");			break;		case gbk_targ_oi64:			WriteDestFileLn("my_prefix = x86_64-pc-solaris2.11-");			break;		case gbk_targ_wcar:			WriteDestFileLn("my_prefix = arm-wince-pe-");			break;	} 	WriteBlankLineToDestFile();	WriteDestFileLn(".PHONY: TheDefaultOutput clean"); 	WriteBlankLineToDestFile();	WriteBgnDestFileLn();	WriteCStrToDestFile("TheDefaultOutput :");	WriteMakeDependFile(Write_machobinpath_ToDestFile);	WriteEndDestFileLn(); 	WriteBlankLineToDestFile();	DoAllSrcFilesWithSetup(DoMVCSrcFileMakeCompile); 	WriteBlankLineToDestFile();	DoAllSrcFilesWithSetup(DoMVCSrcFileMakeAsm); 	WriteBlankLineToDestFile();	WriteBgnDestFileLn();	WriteCStrToDestFile("AsmFiles = ");	WriteBackSlashToDestFile();	WriteEndDestFileLn();	++DestFileIndent;		DoMVCAllSrcFilesStandardMakeAsms();		WriteBlankLineToDestFile();	--DestFileIndent; 	WriteBlankLineToDestFile();	WriteBgnDestFileLn();	WriteCStrToDestFile("ObjFiles = ");	WriteBackSlashToDestFile();	WriteEndDestFileLn();	++DestFileIndent;		DoAllSrcFilesStandardMakeObjects();		WriteBlankLineToDestFile();	--DestFileIndent; 	if (HaveMacBundleApp) {		WriteBlankLineToDestFile();		WriteMakeRule(Write_machoAppIconPath,			Write_tmachoShellDeps,			Write_tmachoShell);	}	if (gbk_apifam_win == gbo_apifam) {		WriteBlankLineToDestFile();		WriteBgnDestFileLn();		WriteMainRsrcObjPath();		WriteCStrToDestFile(": ");		WriteMainRsrcSrcPath();		WriteEndDestFileLn();		++DestFileIndent;			WriteBgnDestFileLn();			WriteCStrToDestFile("$(my_prefix)windres");			WriteCStrToDestFile(" -i");			WritePathArgInMakeCmnd(WriteMainRsrcSrcPath);			WriteCStrToDestFile(" --input-format=rc -o");			WritePathArgInMakeCmnd(WriteMainRsrcObjPath);			WriteCStrToDestFile(" -O coff  --include-dir SRC");			WriteEndDestFileLn();		--DestFileIndent;		WriteBlankLineToDestFile();	} 	WriteBlankLineToDestFile();	WriteBgnDestFileLn();	Write_machobinpath_ToDestFile();	WriteCStrToDestFile(" : $(AsmFiles) $(ObjFiles)");	if (HaveMacBundleApp) {		WriteMakeDependFile(Write_machoAppIconPath);	}	if (HaveMacRrscs) {		WriteMakeDependFile(Write_machoRsrcPath);	}	if (gbk_apifam_win == gbo_apifam) {		WriteMakeDependFile(WriteMainRsrcObjPath);	}	WriteEndDestFileLn();	++DestFileIndent;		WriteBgnDestFileLn();		switch (cur_targ) {			case gbk_targ_mach:			case gbk_targ_imch:			case gbk_targ_mc64:			case gbk_targ_mx11:			case gbk_targ_mi11:			case gbk_targ_mx64:				WriteCStrToDestFile("gcc");				break;			default:				WriteCStrToDestFile("$(my_prefix)gcc");				break;		}		WriteCStrToDestFile(" \\");		WriteEndDestFileLn();		++DestFileIndent;			WriteBgnDestFileLn();			WriteCStrToDestFile("-o");			WritePathArgInMakeCmnd(Write_machobinpath_ToDestFile);			WriteCStrToDestFile(" \\");			WriteEndDestFileLn(); 			WriteBgnDestFileLn();			WriteCStrToDestFile("$(ObjFiles)");			if ((gbk_apifam_osx == gbo_apifam)				|| (gbk_apifam_cco == gbo_apifam))			{				DoAllFrameWorksWithSetup(DoFrameWorkMVCaddFile);				if (gbk_targ_mach == cur_targ) {					WriteCStrToDestFile(						" /usr/local/mvmc/mach"						"/lib/darwin-gpsave.o");				}				if (ide_vers >= 4000) {					WriteCStrToDestFile(" -Wl,-no_pie");				}				WriteCStrToDestFile(" -nodefaultlibs -lSystem");				if ((gbk_targ_mach == cur_targ) && WantLocalTalk) {					WriteCStrToDestFile(" -lSystemStubs");				}			} else if (gbk_apifam_win == gbo_apifam) {				WritePathArgInMakeCmnd(WriteMainRsrcObjPath);				if (gbk_targ_wcar == cur_targ) {					WriteCStrToDestFile(						" /usr/local/mvmc/wcar/lib/divlib.o"						" -lmingw32");					WriteCStrToDestFile(						" -lcommctrl -lcoredll -laygshell -lmmtimer");					WriteCStrToDestFile(" -static-libgcc");				} else {					WriteCStrToDestFile(						" -mwindows -lwinmm -lole32 -luuid");				}			} else {				if (gbk_targfam_slrs == gbo_targfam) {					WriteCStrToDestFile(" -lposix4");				}#if MayUseSound				if (gbk_sndapi_alsa == gbo_sndapi) {					WriteCStrToDestFile(" -ldl");#if 0					WriteCStrToDestFile(" -lasound");#endif				} else if (gbk_sndapi_ddsp == gbo_sndapi) {					if ((gbk_targfam_nbsd == gbo_targfam)						|| (gbk_targfam_obsd == gbo_targfam))					{						WriteCStrToDestFile(" -lossaudio");					}				}#endif#if 0				WriteCStrToDestFile(" -lXext");#endif				if (gbk_targfam_nbsd == gbo_targfam) {					WriteCStrToDestFile(" -R/usr/X11R7/lib");

Lines 1–500 of 595.

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t