Hi just try this below coding
input:
*********
#include "../comm.cfg"
#include "../ext.frg"
#include "../mem.cmd"
$str=qq{\#ifdef SYM
\#include "$INCLUDE_DIR/ext.frg"
\#else
\#include "../include/ext.frg"
\#endif
\#ifdef SYM
\#include "$INCLUDE_DIR/mem.cmd"
\#else
\#include "../include/mem.cmd"
\#endif};
undef $/;
open(READ, "< input.pl") ;
$string = <READ>;
close(READ);
$string =~ s#(\#include.+?\n)#${str}\n$1#gsi;
open(OUT, "> output.pl") ;
print OUT $string;
#output:
#********
#ifdef SYM
#include "/ext.frg"
#else
#include "../include/ext.frg"
#endif
#ifdef SYM
#include "/mem.cmd"
#else
#include "../include/mem.cmd"
#endif
#include "../comm.cfg"
#ifdef SYM
#include "/ext.frg"
#else
#include "../include/ext.frg"
#endif
#ifdef SYM
#include "/mem.cmd"
#else
#include "../include/mem.cmd"
#endif
#include "../ext.frg"
#ifdef SYM
#include "/ext.frg"
#else
#include "../include/ext.frg"
#endif
#ifdef SYM
#include "/mem.cmd"
#else
#include "../include/mem.cmd"
#endif
#include "../mem.cmd"