Changeset 234a777416d2cc0f8700cbe898f008b7af84d405


Ignore:
Timestamp:
25/10/10 15:28:06 (3 years ago)
Author:
Matias De la Puente <mfpuente.ar@…>
Children:
8d95ee2d70ea90eb10078dfe456d2cc4cb3d086b
Parents:
dfe49c76fe79c726339d9cad8d91dc6242eb2959
git-author:
Matias De la Puente <mfpuente.ar@…> (25/10/10 15:15:23)
git-committer:
Matias De la Puente <mfpuente.ar@…> (25/10/10 15:28:06)
Message:

Projects: Add support for multiple post-build commands

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • data/gcc.i4ucbuilder

    r254cfd3 r234a777  
    77device_type=arm 
    88build_command=arm-elf-gcc %objects -o %project-%profile.elf 
    9 post_build_command=arm-elf-objcopy -O ihex %project-%profile.elf %hexfile 
     9post_build_commands=arm-elf-objcopy -O ihex %project-%profile.elf %hexfile; 
    1010clean_types=.hex;.elf; 
    1111devices=arm1020e;arm1020t;arm1022e;arm1026ej-s;arm10e;arm10tdmi;arm1136jf-s;arm1136j-s;arm1156t2f-s;arm1156t2-s;arm1176jzf-s;arm1176jz-s;arm2;arm250;arm3;arm6;arm60;arm600;arm610;arm620;arm7;arm70;arm700;arm700i;arm710;arm7100;arm710c;arm710t;arm720;arm720t;arm740t;arm7500;arm7500fe;arm7d;arm7di;arm7dm;arm7dmi;arm7m;arm7tdmi;arm7tdmi-s;arm8;arm810;arm9;arm920;arm920t;arm922t;arm926ej-s;arm940t;arm946e-s;arm966e-s;arm968e-s;arm9e;arm9tdmi;cortex-a5;cortex-a8;cortex-a9;cortex-m0;cortex-m1;cortex-m3;cortex-r4;cortex-r4f;ep9312;iwmmxt;iwmmxt2;mpcore;mpcorenovfp;strongarm;strongarm110;strongarm1100;strongarm1110;xscale; 
     
    2929device_type=avr 
    3030build_command=avr-gcc %objects -o %project-%profile.elf 
    31 post_build_command=avr-objcopy -O ihex %project-%profile.elf %hexfile 
     31post_build_commands=avr-objcopy -O ihex %project-%profile.elf %hexfile; 
    3232clean_types=.hex;.elf; 
    3333devices=at43usb320;at43usb355;at76c711;at86rf401;at90c8534;at90can128;at90can32;at90can64;at90pwm1;at90pwm2;at90pwm216;at90pwm2b;at90pwm3;at90pwm316;at90pwm3b;at90pwm81;at90s1200;at90s2313;at90s2323;at90s2333;at90s2343;at90s4414;at90s4433;at90s4434;at90s8515;at90s8535;at90scr100;at90usb1286;at90usb1287;at90usb162;at90usb646;at90usb647;at90usb82;at94k;ata6289;atmega103;atmega128;atmega1280;atmega1281;atmega1284p;atmega128rfa1;atmega16;atmega161;atmega162;atmega163;atmega164p;atmega165;atmega165p;atmega168;atmega168p;atmega169;atmega169p;atmega16c1;atmega16hva;atmega16hvb;atmega16m1;atmega16u2;atmega16u4;atmega2560;atmega2561;atmega32;atmega323;atmega324p;atmega325;atmega3250;atmega3250p;atmega325p;atmega328p;atmega329;atmega3290;atmega3290p;atmega329p;atmega32c1;atmega32hvb;atmega32m1;atmega32u2;atmega32u4;atmega32u6;atmega406;atmega48;atmega48p;atmega4hvd;atmega64;atmega640;atmega644;atmega644p;atmega644pa;atmega645;atmega6450;atmega649;atmega6490;atmega64c1;atmega64m1;atmega8;atmega8515;atmega8535;atmega88;atmega88p;atmega8c1;atmega8hva;atmega8hvd;atmega8m1;atmega8u2;attiny11;attiny12;attiny13;attiny13a;attiny15;attiny167;attiny22;attiny2313;attiny2313a;attiny24;attiny24a;attiny25;attiny26;attiny261;attiny261a;attiny28;attiny327;attiny4313;attiny43u;attiny44;attiny44a;attiny45;attiny461;attiny48;attiny84;attiny85;attiny861;attiny861a;attiny87;attiny88;avr1;avr2;avr25;avr3;avr31;avr35;avr4;avr5;avr51;avr6;m3000f;m3000s;m3001b; 
     
    5151device_type=msp430 
    5252build_command=msp430-gcc %objects -o %project-%profile.elf 
    53 post_build_command=msp430-objcopy -O ihex %project-%profile.elf %hexfile 
    54 clean_types=.hex;.elf; 
     53post_build_commands=msp430-objcopy -O ihex %project-%profile.elf %hexfile;srec_cat %project-%profile.hex -intel -output %project-%profile.txt -Texas_Instruments_TeXT; 
     54clean_types=.hex;.elf;.txt; 
    5555devices=cc430x5123;cc430x5125;cc430x5137;cc430x6125;cc430x6126;cc430x6127;cc430x6135;cc430x6137;msp1;msp2;msp3;msp4;msp430x110;msp430x1101;msp430x1111;msp430x112;msp430x1121;msp430x1122;msp430x1132;msp430x122;msp430x1222;msp430x123;msp430x1232;msp430x133;msp430x1331;msp430x135;msp430x1351;msp430x147;msp430x1471;msp430x148;msp430x1481;msp430x149;msp430x1491;msp430x155;msp430x156;msp430x157;msp430x1610;msp430x1611;msp430x1612;msp430x167;msp430x168;msp430x169;msp430x2001;msp430x2002;msp430x2003;msp430x2011;msp430x2012;msp430x2013;msp430x2101;msp430x2111;msp430x2112;msp430x2121;msp430x2122;msp430x2131;msp430x2132;msp430x2232;msp430x2234;msp430x2252;msp430x2254;msp430x2272;msp430x2274;msp430x233;msp430x2330;msp430x235;msp430x2350;msp430x2370;msp430x2410;msp430x2416;msp430x2417;msp430x2418;msp430x2419;msp430x247;msp430x2471;msp430x248;msp430x2481;msp430x249;msp430x2491;msp430x2616;msp430x2617;msp430x2618;msp430x2619;msp430x311;msp430x312;msp430x313;msp430x314;msp430x315;msp430x323;msp430x325;msp430x336;msp430x337;msp430x412;msp430x413;msp430x415;msp430x417;msp430x423;msp430x425;msp430x4250;msp430x4260;msp430x427;msp430x4270;msp430x435;msp430x4351;msp430x436;msp430x4361;msp430x437;msp430x4371;msp430x447;msp430x448;msp430x449;msp430x47166;msp430x47167;msp430x47176;msp430x47177;msp430x47186;msp430x47187;msp430x47196;msp430x47197;msp430x4783;msp430x4784;msp430x4793;msp430x4794;msp430x5418;msp430x5419;msp430x5435;msp430x5436;msp430x5437;msp430x5438;msp430xE423;msp430xE4232;msp430xE4242;msp430xE425;msp430xE4252;msp430xE427;msp430xE4272;msp430xG4250;msp430xG4260;msp430xG4270;msp430xG437;msp430xG438;msp430xG439;msp430xG4616;msp430xG4617;msp430xG4618;msp430xG4619;msp430xW423;msp430xW425;msp430xW427;msp5;msp6; 
    5656source_types=.c;.S; 
  • libi4uccore/builderdevicetype.vala

    rdfe49c7 r234a777  
    2626        private ArrayList<string> _devices = new ArrayList<string> (); 
    2727        private HashMap<string, BuilderSourceType> _source_types = new HashMap<string, BuilderSourceType> (); 
     28        private ArrayList<string> _post_build_commands = new ArrayList<string> (); 
    2829         
    2930        public string device_type { set; get; } 
     
    3233        public Gee.List<string> devices { get { return _devices; } } 
    3334        public Gee.Map<string, BuilderSourceType> source_types { get { return _source_types; } } 
    34         public bool has_post_build_command { set; get; } 
    35         public string post_build_command { set; get; } 
     35        public bool has_post_build_commands { set; get; } 
     36        public Gee.List<string> post_build_commands { get { return _post_build_commands; } } 
    3637         
    3738        public BuilderDeviceType.from_key_file (KeyFile key_file, string group) throws GLib.Error, GLib.KeyFileError 
     
    3940                _device_type = key_file.get_string (group, "device_type"); 
    4041                _build_command = key_file.get_string (group, "build_command"); 
    41                 _has_post_build_command = key_file.has_key (group, "post_build_command"); 
    42                 if (_has_post_build_command) 
    43                         _post_build_command = key_file.get_string (group, "post_build_command"); 
     42                _has_post_build_commands = key_file.has_key (group, "post_build_commands"); 
     43                if (_has_post_build_commands) 
     44                        foreach (var command in key_file.get_string_list (group, "post_build_commands")) 
     45                                _post_build_commands.add (command); 
    4446                foreach (var clean_type in key_file.get_string_list (group, "clean_types")) 
    4547                        _clean_types.add (clean_type); 
     
    5557                key_file.set_string (group, "device_type", _device_type); 
    5658                key_file.set_string (group, "build_command", _build_command); 
    57                 if (_has_post_build_command) 
    58                         key_file.set_string (group, "post_build_command", _post_build_command); 
     59                if (_has_post_build_commands) 
     60                        key_file.set_string_list (group, "post_build_commands", _post_build_commands.to_array ()); 
    5961                key_file.set_string_list (group, "clean_types", _clean_types.to_array ()); 
    6062                key_file.set_string_list (group, "devices", _devices.to_array ()); 
  • libi4uccore/profilebuilder.vala

    rdfe49c7 r234a777  
    127127                _commands.add (command_context); 
    128128                 
    129                 if (device_type.has_post_build_command) 
    130                 { 
    131                         command = device_type.post_build_command; 
    132                         command = command.replace ("%device", _profile.device); 
    133                         command = command.replace ("%objects", objects_string); 
    134                         command = command.replace ("%hexfile", hexfile.replace (" ", "_")); 
    135                         command = command.replace ("%project", _project.name.replace (" ", "_")); 
    136                         command = command.replace ("%profile", _profile.name.replace (" ", "_")); 
    137                          
    138                         command_context = new CommandContext (); 
    139                         command_context.command = command; 
    140                          
    141                         _commands.add (command_context); 
    142                 } 
     129                if (device_type.has_post_build_commands) 
     130                        foreach (var post_build_command in device_type.post_build_commands) 
     131                        { 
     132                                command = post_build_command; 
     133                                command = command.replace ("%device", _profile.device); 
     134                                command = command.replace ("%objects", objects_string); 
     135                                command = command.replace ("%hexfile", hexfile.replace (" ", "_")); 
     136                                command = command.replace ("%project", _project.name.replace (" ", "_")); 
     137                                command = command.replace ("%profile", _profile.name.replace (" ", "_")); 
     138                                 
     139                                command_context = new CommandContext (); 
     140                                command_context.command = command; 
     141                                 
     142                                _commands.add (command_context); 
     143                        } 
    143144                 
    144145                on_command_stopped (true); 
Note: See TracChangeset for help on using the changeset viewer.