@@ -437,7 +437,26 @@ sub update_dep
437
437
}
438
438
439
439
sub generate_def {
440
- system (" sh" , " generate_def.sh" );
440
+ my @files = split /\n/, ` git ls-files` ;
441
+ @files = grep (/ \. c/ , @files );
442
+ @files = map { my $x = $_ ; $x =~ s / ^bn_|\. c$// g ; $x ; } @files ;
443
+ @files = grep (!/mp_radix_smap/, @files );
444
+
445
+ @files = grep (!/conversion/, @files );
446
+ push (@files , qw( mp_set_i32 mp_set_i64 mp_set_u32 mp_set_u64 mp_set_int mp_set_long mp_set_long_long mp_get_i32 mp_get_i64 mp_get_mag32 mp_get_mag64 mp_get_int mp_get_long mp_get_long_long mp_init_i32 mp_init_i64 mp_init_u32 mp_init_u64 mp_init_set_int) );
447
+
448
+ my $files = join (" \n " , sort (grep (/ ^mp_/ , @files )));
449
+ write_file " tommath.def" , " ; libtommath
450
+ ;
451
+ ; Use this command to produce a 32-bit .lib file, for use in any MSVC version
452
+ ; lib -machine:X86 -name:libtommath.dll -def:tommath.def -out:tommath.lib
453
+ ; Use this command to produce a 64-bit .lib file, for use in any MSVC version
454
+ ; lib -machine:X64 -name:libtommath.dll -def:tommath.def -out:tommath.lib
455
+ ;
456
+ EXPORTS
457
+ $files
458
+ " ;
459
+ return 0;
441
460
}
442
461
443
462
sub die_usage {
@@ -446,7 +465,7 @@ sub die_usage {
446
465
$0 -o OR $0 --check-comments
447
466
$0 -m OR $0 --check-makefiles
448
467
$0 -a OR $0 --check-all
449
- $0 -u OR $0 --update-makefiles
468
+ $0 -u OR $0 --update-files
450
469
MARKER
451
470
}
452
471
@@ -455,7 +474,7 @@ sub die_usage {
455
474
" m|check-makefiles" => \my $check_makefiles ,
456
475
" d|check-doc" => \my $check_doc ,
457
476
" a|check-all" => \my $check_all ,
458
- " u|update-makefiles " => \my $update_makefiles ,
477
+ " u|update-files " => \my $update_files ,
459
478
" h|help" => \my $help
460
479
) or die_usage;
461
480
@@ -464,9 +483,9 @@ sub die_usage {
464
483
$failure ||= check_comments() if $check_all || $check_comments ;
465
484
$failure ||= check_doc() if $check_doc ; # temporarily excluded from --check-all
466
485
$failure ||= process_makefiles(0) if $check_all || $check_makefiles ;
467
- $failure ||= process_makefiles(1) if $update_makefiles ;
468
- $failure ||= update_dep() if $update_makefiles ;
469
- $failure ||= generate_def() if $update_makefiles ;
486
+ $failure ||= process_makefiles(1) if $update_files ;
487
+ $failure ||= update_dep() if $update_files ;
488
+ $failure ||= generate_def() if $update_files ;
470
489
471
490
die_usage unless defined $failure ;
472
491
exit $failure ? 1 : 0;
0 commit comments