Ticket #338: convert_dynoplibs_to_makefile.patch

File convert_dynoplibs_to_makefile.patch, 3.5 KB (added by allison, 6 years ago)

Replacement makefile template for dynoplibs.

  • config/gen/makefiles/dynoplibs.in

     
    1 # Copyright (C) 2003-2009, The Perl Foundation. 
     1# Copyright (C) 2003-2009, Parrot Foundation. 
    22# $Id$ 
    33 
    4 PERL        = @perl@ 
    5 RM_F        = @rm_f@ 
    6 LOAD_EXT    = @load_ext@ 
    7 RUNTIME_DIR = @build_dir@/runtime/parrot/dynext 
    8 O           = @o@ 
     4PERL          = @perl@ 
     5RM_F          = @rm_f@ 
     6CP            = @cp@ 
     7CHMOD         = @chmod@ 
     8LOAD_EXT      = @load_ext@ 
     9BUILD_DIR     = @build_dir@ 
     10INSTALL_DIR   = $(BUILD_DIR)/runtime/parrot/dynext 
     11O             = @o@ 
     12CC            = @cc@ -c 
     13LD            = @ld@ 
     14LDFLAGS       = @ldflags@ @ld_debug@ @rpath_blib@ @linkflags@ 
     15LD_LOAD_FLAGS = @ld_load_flags@ 
     16CFLAGS        = @ccflags@ @cc_shared@ @cc_debug@ @ccwarn@ @cc_hasjit@ @cg_flag@ @gc_flag@ 
     17CC_OUT        = @cc_o_out@ 
     18LD_OUT        = @ld_out@ 
     19#IF(parrot_is_shared):LIBPARROT = @libparrot_ldflags@ 
     20#ELSE:LIBPARROT = 
    921 
    10 # add your dynamic op libraries here 
    11 # 
    12 OPLIBS = \ 
    13   myops \ 
    14   dan 
     22BUILD_TOOLS_DIR = $(BUILD_DIR)@slash@tools@slash@build 
     23OPS2C           = $(PERL) -I$(BUILD_DIR)@slash@lib $(BUILD_TOOLS_DIR)@slash@ops2c.pl 
     24INCLUDES        = -I$(BUILD_DIR)@slash@include -I@build_dir@@slash@src@slash@pmc 
     25#IF(win32):LINKARGS         = @libs@ @icu_shared@ $(LDFLAGS) $(LD_LOAD_FLAGS) $(LIBPARROT) 
     26#ELSE:LINKARGS         = $(LDFLAGS) $(LD_LOAD_FLAGS) $(LIBPARROT) 
    1527 
    16 BUILD = $(PERL) @build_dir@/tools/build/dynoplibs.pl 
    1728 
    18 all : 
    19         @$(BUILD) generate $(OPLIBS) 
    20         @$(BUILD) compile $(OPLIBS) 
    21         @$(BUILD) linklibs $(OPLIBS) 
    22         @$(BUILD) copy --destination=$(RUNTIME_DIR) $(OPLIBS) 
     29OPS_FILES = \ 
     30  myops.ops \ 
     31  dan.ops 
    2332 
     33 
     34all : install 
     35 
     36generate : myops.ops dan.ops 
     37        $(OPS2C) C --dynamic dan.ops 
     38        $(OPS2C) CSwitch --dynamic dan.ops 
     39#IF(cg_flag):   $(OPS2C) CGoto --dynamic dan.ops 
     40#IF(cg_flag):   $(OPS2C) CGP --dynamic dan.ops 
     41        $(OPS2C) C --dynamic myops.ops 
     42        $(OPS2C) CSwitch --dynamic myops.ops 
     43#IF(cg_flag):   $(OPS2C) CGoto --dynamic myops.ops 
     44#IF(cg_flag):   $(OPS2C) CGP --dynamic myops.ops 
     45 
     46compile : generate 
     47        $(CC) $(CC_OUT) dan_ops$(O) $(INCLUDES) $(CFLAGS) dan_ops.c 
     48        $(CC) $(CC_OUT) dan_ops_switch$(O) $(INCLUDES) $(CFLAGS) dan_ops_switch.c 
     49#IF(cg_flag):   $(CC) $(CC_OUT) dan_ops_cg$(O) $(INCLUDES) $(CFLAGS) dan_ops_cg.c 
     50#IF(cg_flag):   $(CC) $(CC_OUT) dan_ops_cgp$(O) $(INCLUDES) $(CFLAGS) dan_ops_cgp.c 
     51        $(CC) $(CC_OUT) myops_ops$(O) $(INCLUDES) $(CFLAGS) myops_ops.c 
     52        $(CC) $(CC_OUT) myops_ops_switch$(O) $(INCLUDES) $(CFLAGS) myops_ops_switch.c 
     53#IF(cg_flag):   $(CC) $(CC_OUT) myops_ops_cg$(O) $(INCLUDES) $(CFLAGS) myops_ops_cg.c 
     54#IF(cg_flag):   $(CC) $(CC_OUT) myops_ops_cgp$(O) $(INCLUDES) $(CFLAGS) myops_ops_cgp.c 
     55 
     56linklibs : compile 
     57        $(LD) $(LD_OUT) dan_ops$(LOAD_EXT) dan_ops$(O) $(LINKARGS) 
     58        $(LD) $(LD_OUT) dan_ops_switch$(LOAD_EXT) dan_ops_switch$(O) $(LINKARGS) 
     59#IF(cg_flag):   $(LD) $(LD_OUT) dan_ops_cg$(LOAD_EXT) dan_ops_cg$(O) $(LINKARGS) 
     60#IF(cg_flag):   $(LD) $(LD_OUT) dan_ops_cgp$(LOAD_EXT) dan_ops_cgp$(O) $(LINKARGS) 
     61        $(LD) $(LD_OUT) myops_ops$(LOAD_EXT) myops_ops$(O) $(LINKARGS) 
     62        $(LD) $(LD_OUT) myops_ops_switch$(LOAD_EXT) myops_ops_switch$(O) $(LINKARGS) 
     63#IF(cg_flag):   $(LD) $(LD_OUT) myops_ops_cg$(LOAD_EXT) myops_ops_cg$(O) $(LINKARGS) 
     64#IF(cg_flag):   $(LD) $(LD_OUT) myops_ops_cgp$(LOAD_EXT) myops_ops_cgp$(O) $(LINKARGS) 
     65 
     66install : linklibs 
     67#IF(cygwin or hpux):    CHMOD 0775 "*$(LOAD_EXT)" 
     68        $(CP) "*$(LOAD_EXT)" $(INSTALL_DIR) 
     69 
    2470test : all 
    2571         cd ../.. && $(PERL) -Ilib t/harness t/dynoplibs/*.t 
    2672