2 # Generate make dependency rules for asn1 files
3 # Jelmer Vernooij <jelmer@samba.org> 2005
13 if (not defined ($prefix)) { $prefix = "asn1"; }
15 $dirname = dirname($file);
16 $basename = basename($file);
17 if (not defined $options) {
21 my $header = "$dirname/$prefix.h";
23 print "$header: $file bin/asn1_compile\n";
24 print "\t\@echo \"Compiling ASN1 file $file\"\n";
25 print "\t\@cd $dirname && ../../../bin/asn1_compile $options $basename $prefix\n\n";
27 open(IN,$file) or die("Can't open $file: $!");
29 if (/^([A-Za-z0-9_-]+)[ \t]*::= /) {
32 $c_file = "$dirname/asn1_$output.c";
33 $x_file = "$dirname/asn1_$output.x";
34 print "$x_file: $header\n";
35 print "$c_file: $dirname/asn1_$output.x\n";
36 print "\t\@cp $x_file $c_file\n\n";
37 push @x_files, $x_file;
38 push @c_files, $c_file;
42 print $prefix."_clean: \n";
43 print "\t\@echo \"Deleting ASN1 ouput files generated from $file\"";
44 print "\n\t\@rm -f $header";
45 foreach $c_file (@c_files) {
46 print "\n\t\@rm -f $c_file";
48 foreach $x_file (@x_files) {
49 print "\n\t\@rm -f $x_file";