📄 sconscript
字号:
import osimport sysimport commands## helper functionsdef CheckPKGConfig(context, version): context.Message('Checking for pkg-config... ') ret =context.TryAction('pkg-config --atleast-pkgconfig-version=%s' % version)[0] context.Result(ret) return retdef CheckPKG(context, name): context.Message( 'Checking for %s... ' % name ) ret = context.TryAction('pkg-config --exists \'%s\'' % name)[0] context.Result( ret ) return ret ## Construct the build environmentenv = Environment(ENV = os.environ, CCFLAGS = ['-g', '-Wall', '-ansi', '-pedantic'])if not env.GetOption('clean'): conf = Configure(env, custom_tests = {'CheckPKGConfig':CheckPKGConfig, 'CheckPKG':CheckPKG }) ## Check for pkg-config if not conf.CheckPKGConfig('0.15.0'): print 'pkg-config >= 0.15.0 not found.' Exit(1) ## Check for pkg-config compliant libraries if not conf.CheckPKG('gtkmm-2.4 >= 2.4.0'): print 'gtkmm-2.4 >= 2.4.0 not found.' Exit(1) else: env.ParseConfig('pkg-config --cflags --libs gtkmm-2.4') if conf.CheckPKG('gtkglextmm-x11-1.0 >= 1.0.0'): env.ParseConfig('pkg-config --cflags --libs gtkglextmm-x11-1.0') else: print 'No valid gtkglextmm found' Exit(1) if not conf.CheckPKG('libxml-2.0 >= 2.0.0'): print 'libxml > 2.0.0 not found.' Exit(1) env.ParseConfig('pkg-config --cflags --libs libxml-2.0') if not conf.CheckLib('libboost_filesystem'): print 'Boost::filesystem not found.' Exit(1) env['LIBS'].append('libboost_filesystem') ## standard stuff if not conf.CheckCXXHeader('vector.h'): print 'vector.h not found' Exit(1) if not conf.CheckCXXHeader('iostream.h'): print 'iostream.h not found' Exit(1) if not conf.CheckCXXHeader('fstream.h'): print 'fstream.h not found' Exit(1) # FIXME sstream?? if not conf.CheckCXXHeader('map.h'): print 'map.h not found' Exit(1) if not conf.CheckCXXHeader('string.h'): print 'string.h not found' Exit(1) if not conf.CheckCHeader('stdlib.h'): print 'math.h not found' Exit(1) if not conf.CheckCHeader('math.h'): print 'math.h not found' Exit(1) if not conf.CheckCHeader('GL/gl.h'): print 'GL/gl.h not found' Exit(1) if not conf.CheckCHeader('GL/glu.h'): print 'GL/glu.h not found' Exit(1) env = conf.Finish() env['LIBS'].append('libiso8211.a') env['LIBPATH'].append('iso8211lib')env.SConscript(dirs='iso8211lib')env.Program(['ghelm.cpp', 'application.cpp', 'glchartrenderer.cpp', 'util.cpp', 'feature.cpp', 'isolatednodevector.cpp', 'connectednodevector.cpp', 'edgevector.cpp', 'pointfeature.cpp', 'linefeature.cpp', 'dsid.cpp', 'dspm.cpp', 'chart.cpp', 'configuration.cpp', 'encbrowser.cpp', 'cvg.cpp', 'cvgshape.cpp', 'cvgstrokegroup.cpp', 'cvgutil.cpp', 'drawingconfiguration.cpp', 'areafeature.cpp', 'rendererbook.cpp', 'progressdialog.cpp', 'waypointdialog.cpp', 'waypointlist.cpp', 'glchartpreviewrenderer.cpp'])
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -