make/common/IdlCompilation.gmk

Print this page




  43   # param 2 = src root
  44   # param 3 = gensrc root
  45   # param 4 = source idl to compile
  46   # param 5 = target idl package
  47   # param 6 = delete these files that were output from the idlj
  48   # param 7 = idls that match these patterns should be compiled with -oldImplBase
  49   # param 8 = the idlj command
  50   # Save the generated java files to a temporary directory so
  51   # that we can find them and create proper dependencies.
  52   # After that, we move them to the real gensrc target dir.
  53   $4_TMPDIR:=tmp___$(subst /,_,$(patsubst $2/%,%,$4))___
  54   ifneq ($$(filter $7,$4),)
  55     $4_OLDIMPLBASE:=-oldImplBase
  56     $4_OLDIMPLBASE_MSG:=with -oldImplBase
  57   endif
  58   $5 : $4
  59         $(MKDIR) -p $3/$$($4_TMPDIR)
  60         $(RM) -rf $3/$$($4_TMPDIR)
  61         $(MKDIR) -p $(dir $5)
  62         $(ECHO) $(LOG_INFO) Compiling IDL $(patsubst $2/%,%,$4)
  63         LC_ALL=C $8 -td $3/$$($4_TMPDIR) \
  64             -i $2/org/omg/CORBA \
  65             -i $2/org/omg/PortableInterceptor \
  66             -i $2/org/omg/PortableServer \
  67             -D CORBA3 -corba 3.0 \
  68             -fall \
  69             $$($4_OLDIMPLBASE) \
  70             $(PREFIXES) \
  71             $4
  72         $(RM) -f $$(addprefix $3/$$($4_TMPDIR)/,$6)
  73         $(CP) -r $3/$$($4_TMPDIR)/* $3
  74         ($(CD) $3/$$($4_TMPDIR) && $(FIND) . -type f | $(SED) 's!\./!$3/!g' | $(NAWK) '{ print $$$$1 ": $4" }' > $5)
  75         $(RM) -rf $3/$$($4_TMPDIR)
  76 endef
  77 
  78 define SetupIdlCompilation
  79   # param 1 is for example BUILD_IDLS
  80   # param 2,3,4,5,6,7,8 are named args.
  81   #   IDLJ,SRC,BIN,INCLUDES,EXCLUDES,OLDIMPLBASES,DELETES
  82   $(foreach i,2 3 4 5 6 7 8 9 10 11 12 13 14 15, $(if $($i),$1_$(strip $($i)))$(NEWLINE))
  83   $(call LogSetupMacroEntry,SetupIdlCompilation($1),$2,$3,$4,$5,$6,$7,$8,$9,$(10),$(11),$(12),$(13),$(14),$(15))




  43   # param 2 = src root
  44   # param 3 = gensrc root
  45   # param 4 = source idl to compile
  46   # param 5 = target idl package
  47   # param 6 = delete these files that were output from the idlj
  48   # param 7 = idls that match these patterns should be compiled with -oldImplBase
  49   # param 8 = the idlj command
  50   # Save the generated java files to a temporary directory so
  51   # that we can find them and create proper dependencies.
  52   # After that, we move them to the real gensrc target dir.
  53   $4_TMPDIR:=tmp___$(subst /,_,$(patsubst $2/%,%,$4))___
  54   ifneq ($$(filter $7,$4),)
  55     $4_OLDIMPLBASE:=-oldImplBase
  56     $4_OLDIMPLBASE_MSG:=with -oldImplBase
  57   endif
  58   $5 : $4
  59         $(MKDIR) -p $3/$$($4_TMPDIR)
  60         $(RM) -rf $3/$$($4_TMPDIR)
  61         $(MKDIR) -p $(dir $5)
  62         $(ECHO) $(LOG_INFO) Compiling IDL $(patsubst $2/%,%,$4)
  63         $8 -td $3/$$($4_TMPDIR) \
  64             -i $2/org/omg/CORBA \
  65             -i $2/org/omg/PortableInterceptor \
  66             -i $2/org/omg/PortableServer \
  67             -D CORBA3 -corba 3.0 \
  68             -fall \
  69             $$($4_OLDIMPLBASE) \
  70             $(PREFIXES) \
  71             $4
  72         $(RM) -f $$(addprefix $3/$$($4_TMPDIR)/,$6)
  73         $(CP) -r $3/$$($4_TMPDIR)/* $3
  74         ($(CD) $3/$$($4_TMPDIR) && $(FIND) . -type f | $(SED) 's!\./!$3/!g' | $(NAWK) '{ print $$$$1 ": $4" }' > $5)
  75         $(RM) -rf $3/$$($4_TMPDIR)
  76 endef
  77 
  78 define SetupIdlCompilation
  79   # param 1 is for example BUILD_IDLS
  80   # param 2,3,4,5,6,7,8 are named args.
  81   #   IDLJ,SRC,BIN,INCLUDES,EXCLUDES,OLDIMPLBASES,DELETES
  82   $(foreach i,2 3 4 5 6 7 8 9 10 11 12 13 14 15, $(if $($i),$1_$(strip $($i)))$(NEWLINE))
  83   $(call LogSetupMacroEntry,SetupIdlCompilation($1),$2,$3,$4,$5,$6,$7,$8,$9,$(10),$(11),$(12),$(13),$(14),$(15))