44 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import os
 | |
| 
 | |
| # SConstruct for dtl examples
 | |
| 
 | |
| env   = Environment(CPPPATH='..')
 | |
| debug = ARGUMENTS.get('debug', 'n')
 | |
| if debug == 'y' or debug == 'yes':
 | |
|     env.Append(CPPFLAGS = ['-Wall', '-g'])
 | |
| else:
 | |
|     env.Append(CPPFLAGS = ['-Wall', '-O2'])
 | |
| 
 | |
| if os.sys.platform != "win32":
 | |
|     env.Append(CPPDEFINES = ['HAVE_UNISTD_H'])
 | |
| 
 | |
| conf = Configure(env);
 | |
| 
 | |
| if not conf.CheckCXX():
 | |
|     print("The C++ compiler is not installed!")
 | |
|     Exit(1)
 | |
| 
 | |
| libs = ['stdc++']
 | |
| for lib in libs:
 | |
|     if not conf.CheckLib(lib):
 | |
|         print("library " + lib + " not installed!")
 | |
|         Exit(1)
 | |
| 
 | |
| conf.Finish()
 | |
| 
 | |
| targets = { 'strdiff'         : ['strdiff.cpp',         'common.cpp'], # diff between two string sequences
 | |
|             'intdiff'         : ['intdiff.cpp'],                       # diff between two integer sequences
 | |
|             'unidiff'         : ['unidiff.cpp',         'common.cpp'], # unified diff between two files
 | |
|             'unistrdiff'      : ['unistrdiff.cpp',      'common.cpp'], # unified diff between two strings
 | |
|             'bdiff'           : ['bdiff.cpp',           'common.cpp'], # diff between two byte sequences
 | |
|             'strdiff3'        : ['strdiff3.cpp',        'common.cpp'], # three-way string diff program using dtl
 | |
|             'intdiff3'        : ['intdiff3.cpp'],                      # three-way integer diff program using dtl
 | |
|             'patch'           : ['patch.cpp',           'common.cpp'], # string patch program using dtl
 | |
|             'fpatch'          : ['fpatch.cpp',          'common.cpp'], # file patch program using dtl
 | |
|             'st2ses'          : ['st2ses.cpp',          'common.cpp'], # convert SES format file to SES instance
 | |
|             'strdiff_cp'      : ['strdiff_cp.cpp',      'common.cpp'], # diff between two string sequences with custom printer
 | |
|             'strdiff_storage' : ['strdiff_storage.cpp', 'common.cpp'], # diff between two string sequences with custom storage
 | |
|             }
 | |
| 
 | |
| [ env.Program(target, targets[target]) for target in targets ]
 |