⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gcc.cf

📁 linux下的一款播放器
💻 CF
字号:
# # ***** BEGIN LICENSE BLOCK *****# Source last modified: $Id: gcc.cf,v 1.11 2004/07/07 22:00:05 hubbe Exp $# # Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.# # The contents of this file, and the files included with this file,# are subject to the current version of the RealNetworks Public# Source License (the "RPSL") available at# http://www.helixcommunity.org/content/rpsl unless you have licensed# the file under the current version of the RealNetworks Community# Source License (the "RCSL") available at# http://www.helixcommunity.org/content/rcsl, in which case the RCSL# will apply. You may also obtain the license terms directly from# RealNetworks.  You may not use this file except in compliance with# the RPSL or, if you have a valid RCSL with RealNetworks applicable# to this file, the RCSL.  Please see the applicable RPSL or RCSL for# the rights, obligations and limitations governing use of the# contents of the file.# # Alternatively, the contents of this file may be used under the# terms of the GNU General Public License Version 2 or later (the# "GPL") in which case the provisions of the GPL are applicable# instead of those above. If you wish to allow use of your version of# this file only under the terms of the GPL, and not to allow others# to use your version of this file under the terms of either the RPSL# or RCSL, indicate your decision by deleting the provisions above# and replace them with the notice and other provisions required by# the GPL. If you do not delete the provisions above, a recipient may# use your version of this file under the terms of any one of the# RPSL, the RCSL or the GPL.# # This file is part of the Helix DNA Technology. RealNetworks is the# developer of the Original Code and owns the copyrights in the# portions it created.# # This file, and the files included with this file, is distributed# and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY# KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS# ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET# ENJOYMENT OR NON-INFRINGEMENT.# # Technology Compatibility Kit Test Suite(s) Location:#    http://www.helixcommunity.org/content/tck# # Contributor(s):# # ***** END LICENSE BLOCK *****# """Common setting for the all gcc compilers.  Other .cf files inheritfrom these settings."""## Set up the C compilerplatform.cc = cc = Compiler()cc.cmd = 'gcc'cc.args['default'] = '-pipe'cc.args['debug'] = '-O0 -g -DDEBUG -D_DEBUG'cc.args['release'] = '-O2'if not project.BuildOption("nopic"):    cc.args['dll'] = '-fPIC -DPIC'    cc.args['lib'] = '-fPIC -DPIC'cc.args['profile'] = '-pg'cc.define_arg = '-D'cc.include_arg = '-I'cc.prefix_include_arg = '-include 'cc.source_arg = '-c'cc.target_arg = '-o'cc.make_var = 'CC'cc.make_flags = 'CCFLAGS'## Set up the C++ Compilerplatform.cxx = cxx = Compiler()cxx.cmd = 'g++'cxx.args['default'] = '-pipe'cxx.args['debug'] = '-O0 -g -DDEBUG -D_DEBUG'cxx.args['release'] = '-O2'if project.BuildOption("symbols"):    cc.args['release'] = cc.args['release'] + ' -g '    cxx.args['release'] = cxx.args['release'] + ' -g 'if not project.BuildOption("nopic"):    cxx.args['dll'] = '-fPIC -DPIC'    cxx.args['lib'] = '-fPIC -DPIC'cxx.args['profile'] = '-pg'cxx.define_arg = '-D'cxx.include_arg = '-I'cxx.prefix_include_arg = '-include 'cxx.source_arg = '-c'cxx.target_arg = '-o'cxx.make_var = 'CXX'cxx.make_flags = 'CXXFLAGS'## Set up the Linkerclass GCCLinker(Linker):    def __init__(self):        Linker.__init__(self)        self.make_var = 'LD'        self.make_flags = 'LDFLAGS'        self.args['default'] = '-pipe'        self.args['profile'] = '-pg'        self.args['static'] = '-static'        self.target_arg = '-o'        self.ldcmd = 'gcc'        self.ldargs = ''    def crti_path(self):        return '`%s -print-file-name=crti.o`' % (platform.cxx.cmd)    def crtn_path(self):        return '`%s -print-file-name=crtn.o`' % (platform.cxx.cmd)    def crtbegin_path(self):        return '`%s -print-file-name=crtbegin.o`' % (platform.cxx.cmd)    def crtend_path(self):        return '`%s -print-file-name=crtend.o`' % (platform.cxx.cmd)    def crtbeginS_path(self):        return '`%s -print-file-name=crtbeginS.o`' % (platform.cxx.cmd)    def crtendS_path(self):        return '`%s -print-file-name=crtendS.o`' % (platform.cxx.cmd)    def crt1_path(self):        return '`%s -print-file-name=crt1.o`' % (platform.cxx.cmd)    def libgcc_path(self):        return '`%s -print-file-name=libgcc.a`' % (platform.cxx.cmd)    def link_paths(self):        return string.join(platform.system_paths) +\               string.join(project.system_paths)    def execute(self, target, objects, static_libs, dynamic_libs):        link_str = form_string(platform.form_var(self.make_var),                               platform.form_var(self.make_flags),                               self.target_arg,                               target,                               objects,                               self.link_paths(),                               dynamic_libs,                               static_libs)        if project.target_type == 'dll':            if project.exported_func:                tmp=string.join(project.exported_func," -u ")                link_str="%s -u %s -lgcc" % (link_str, tmp)        return link_str    def set_type(self):        self.cmd = self.ldcmd        if (project.target_type == 'dll'):            self.args['default'] = '-shared ' + self.ldargs        else:            self.args['default'] = self.ldargs    def make_lib_static(self, lib):        return "-Wl,-Bstatic "+lib+" -Wl,Bdynamic"platform.link = GCCLinker()def DisableRTTIIfNecessary() :        global platform        global project        if project.build_choices.count('no_c++_runtime') :                for option in ('-fno-rtti', '-fno-exceptions') :                        platform.cxx.args['default'] = platform.cxx.args['default'] + " " + option                        platform.cc.args['default'] = platform.cxx.args['default'] + " " + optiondef HandleExports (target, funcs, ttype="dll") :    if ttype != "dll" or project.build_choices.count("use_exports") == 0:        return ""    gcclinkscript = 'gcclink.' + os.path.basename(target)    out = open (gcclinkscript, "w")    out.write ("""        VERSION        {           G2 {                global:                         %s                local:                         *;           };        }\n""" % string.join(map (lambda x: x + ";\n\t\t", project.exported_func)))    out.close()    return gcclinkscript# Gemini uses IOStreams for their debugging.  In order that not everyone has to link with# libstdc++ because of this, there exists the -t use_iostreams option which turns on support# for iostreams for various client linuxes.  This will enable linking of libstdc++ and # provide the _HAS_IOSTREAMS macro (defined elsewhere).  pjg 2/22/2001def HandleCPPRTInclusion (ttype="dll") :    if project.build_choices.count("use_iostreams") :        return "-lstdc++"    else:        return ""def get_compiler_version(compiler):    import shell    import re    str=shell.run(compiler.cmd + " -dumpversion")[1]    return string.strip(str)def identify_gcc_callback():    import shell    print "C Compiler: %s\n%s" % (cc.cmd, shell.run(cc.cmd + " -v")[1])    print "C++ Compiler: %s\n%s" % (cxx.cmd, shell.run(cxx.cmd + " -v")[1])AddIdentifyCallback(identify_gcc_callback)    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -