generate_makefile

来自「rtlinux-3.2源码」· 代码 · 共 49 行

TXT
49
字号
#!/usr/bin/perl -wopen(IN, "$ARGV[0]");print "# This Makefile is autogenerated.  Edit Makefile.in instead.\n";while($_=<IN>){	if(m/select\(([\w_]+) ([\w_. ]+)\)/){		print "obj-\$($1) += $2\n";	}elsif(m/expsyms\(([\w_. ]+)\)/){		print "export-objs += $1\n";	}elsif(m/objlink\(([\w_.]+) ([\w_. ]+)\)/){		print "$1-objs += $2\n";		push @later,"$1";	}elsif(m/link_subdirs\(([\w_.]+)\)/){		print "subdir-m += $1\n";	}elsif(m/ifsel\(([\w_]+)\)/){		print "ifneq (\$($1),)\n";	}elsif(m/endif/){		print "endif\n";	}elsif(m/^$/){	}elsif(m/^#/){	}else{		print "ack! $_";	}}#print "\n";#print "M_OBJS  := \$(sort \$(filter-out \$(export-objs), \$(obj-m)))\n";#print "MX_OBJS := \$(sort \$(filter     \$(export-objs), \$(obj-m)))\n";#print "SUB_DIRS := \$(subdirs-m)\n";#print "ALL_SUB_DIRS := \$(SUB_DIRS)\n";#print "MOD_SUB_DIRS := \$(SUB_DIRS)\n";print "\n";print "include \$(TOPDIR)/Rules.make\n";print "\n";@later = sort @later;$last="";foreach $s (@later){	if($s ne $last){		print "$s: \$($s-objs)\n";		print "\t\$(LD) -r -o \$@ \$($s-objs)\n";	}	$last=$s;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?