Changeset 189


Ignore:
Timestamp:
04/24/10 00:49:10 (14 years ago)
Author:
tim
Message:

additional work on new build system

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • SConstruct

    r188 r189  
     1
    12build_cmds='''
    23rm -rf .release;
    3 mkdir -p `dirname .release/$SOURCE`;
    4 svn export svn+ssh://sentinelchicken.org/home/projects/subversion/reglookup/$SOURCE .release/$SOURCE;
     4svn export svn+ssh://sentinelchicken.org/home/projects/subversion/reglookup/$SOURCE .release/%s;
    55#XXX: Can this be less of a hack?
    6 cd .release/$SOURCE && scons doc && cd ..;
    7 cd .release && tar cf $SOURCE.tar $SOURCE && gzip -9 $SOURCE.tar;
    8 mv .release/$SOURCE.tar.gz ..
     6cd .release/%s && scons doc
     7cd .release && tar cf %s.tar %s && gzip -9 %s.tar;
     8mv .release/%s.tar.gz . && rm -rf .release
    99'''
    10 release_builder = Builder(action=build_cmds)
     10
     11buildable_files=('reglookup-trunk.tar.gz',)
     12
     13def generate_cmds(source, target, env, for_signature):
     14    ret_val = ''
     15    for t in target:
     16        if str(t) in buildable_files:
     17            t_base = str(t).split('.')[0]
     18            ret_val += build_cmds % (t_base,t_base,t_base,
     19                                     t_base,t_base,t_base)
     20        else:
     21            return '#ERROR: cannot build "%s".  Acceptable targets: %s' % (t, repr(buildable_files))
     22
     23    return ret_val
     24
     25
     26release_builder = Builder(generator = generate_cmds,
     27                          suffix = '.tar.gz',
     28                          src_suffix = '',
     29                          prefix='reglookup-')
    1130
    1231env = Environment()
     
    1433
    1534
    16 env.Release('trunk')
    17 
    18 
    19 
     35env.Release(Dir('trunk'))
     36#env.Release('reglookup-0.13.0.tar.gz', Dir('releases/0.13.0'))
    2037
    2138Default(None)
  • doc/TODO

    r164 r189  
    2727   everything.  I'd like to switch to a suite of shell scripts driven by
    2828   minimal make rules.  If you got any ideas on this, shoot them my way.
     29   scons?
    2930
    3031 - Unicode support still needs improvement.  While parsing strings seems
     
    3940   lower-level functions of regfi.c.
    4041
    41  - The smb_deps.h and smb_deps.c content is almost eliminated.  Just need
    42    to integrate parts that are being kept into regfi or other modules.
    43 
    4442 - Consider switching from libiconv to Joachim Metz's libuna for
    4543   increased portability and easier builds.
  • trunk/SConstruct

    r187 r189  
    22cflags = '-std=gnu99 -pedantic -Wall -ggdb'
    33
    4 if True:
     4if False:
    55    libiconv_path='/usr/local/src/libiconv-1.13-mingw32-dev'
    66    env = Environment(CC='i586-mingw32msvc-cc',
     
    2929libregfi = env.SharedLibrary(lib_src, LIBS=['m','pthread'])
    3030
     31
    3132# Executables
    3233reglookup = env.Program('src/reglookup.c')
    3334reglookup_recover = env.Program('src/reglookup-recover.c')
     35
    3436
    3537# Documentation
     
    3941                      + man_fixup + '| gzip -9 > $TARGET',
    4042                      suffix = '.gz',
    41                       src_suffix = '.docbook',
    42                       prefix='man/man1/') # XXX: only works for .1.docbook files...
     43                      src_suffix = '.docbook')
    4344env['BUILDERS']['ManPage'] = man_builder
    4445
     
    4647man_reglookup_recover = env.ManPage('doc/reglookup-recover.1.docbook')
    4748man_reglookup_timeline = env.ManPage('doc/reglookup-timeline.1.docbook')
     49
     50
     51# Installation
     52prefix='/usr/local/'
     53
     54# XXX: need to install reglookup-timeline
     55env.Install(prefix+'bin', [reglookup, reglookup_recover, 'bin/reglookup-timeline'])
     56env.Install(prefix+'lib', [libregfi, libregfi_static])
     57env.Install(prefix+'man/man1', [man_reglookup, man_reglookup_recover,
     58                                man_reglookup_timeline])
     59
    4860
    4961# User Friendly Targets
     
    5365env.Alias('bin', [reglookup_recover, reglookup])
    5466env.Alias('doc', [man_reglookup,man_reglookup_recover,man_reglookup_timeline])
     67env.Alias('install', [prefix+'bin', prefix+'lib', prefix+'man'])
    5568
    5669Default('bin', libregfi)
Note: See TracChangeset for help on using the changeset viewer.