[svn:parrot] r44791 - in branches/rm_dynoplibs_make: . config/gen config/gen/makefiles src/dynoplibs

coke at svn.parrot.org coke at svn.parrot.org
Tue Mar 9 06:42:02 UTC 2010


Author: coke
Date: Tue Mar  9 06:42:00 2010
New Revision: 44791
URL: https://trac.parrot.org/parrot/changeset/44791

Log:
Close but not quite;

Build fails on src/dynoplibs/*.o - but if you run the compilation by hand
and add -I., it works. ??

Added:
   branches/rm_dynoplibs_make/src/dynoplibs/Defines.in   (contents, props changed)
   branches/rm_dynoplibs_make/src/dynoplibs/Rules.in
      - copied, changed from r44680, trunk/config/gen/makefiles/dynoplibs.in
Deleted:
   branches/rm_dynoplibs_make/config/gen/makefiles/dynoplibs.in
Modified:
   branches/rm_dynoplibs_make/MANIFEST
   branches/rm_dynoplibs_make/MANIFEST.SKIP
   branches/rm_dynoplibs_make/config/gen/makefiles.pm
   branches/rm_dynoplibs_make/config/gen/makefiles/root.in
   branches/rm_dynoplibs_make/src/dynoplibs/   (props changed)
   branches/rm_dynoplibs_make/src/dynoplibs/README

Modified: branches/rm_dynoplibs_make/MANIFEST
==============================================================================
--- branches/rm_dynoplibs_make/MANIFEST	Tue Mar  9 06:37:56 2010	(r44790)
+++ branches/rm_dynoplibs_make/MANIFEST	Tue Mar  9 06:42:00 2010	(r44791)
@@ -1,7 +1,7 @@
 # ex: set ro:
 # $Id$
 #
-# generated by tools/dev/mk_manifest_and_skip.pl Wed Mar  3 19:59:01 2010 UT
+# generated by tools/dev/mk_manifest_and_skip.pl Mon Mar  8 22:07:22 2010 UT
 #
 # See below for documentation on the format of this file.
 #
@@ -318,7 +318,6 @@
 config/gen/crypto/digest_t.in                               []
 config/gen/makefiles.pm                                     []
 config/gen/makefiles/docs.in                                []
-config/gen/makefiles/dynoplibs.in                           []
 config/gen/makefiles/dynpmc.in                              []
 config/gen/makefiles/editor.in                              []
 config/gen/makefiles/ext.in                                 []
@@ -1307,7 +1306,9 @@
 src/datatypes.c                                             []
 src/debug.c                                                 []
 src/dynext.c                                                []
+src/dynoplibs/Defines.in                                    []
 src/dynoplibs/README                                        []doc
+src/dynoplibs/Rules.in                                      []
 src/dynoplibs/math.ops                                      []
 src/dynoplibs/obscure.ops                                   []
 src/dynpmc/README.pod                                       []doc

Modified: branches/rm_dynoplibs_make/MANIFEST.SKIP
==============================================================================
--- branches/rm_dynoplibs_make/MANIFEST.SKIP	Tue Mar  9 06:37:56 2010	(r44790)
+++ branches/rm_dynoplibs_make/MANIFEST.SKIP	Tue Mar  9 06:42:00 2010	(r44791)
@@ -1,6 +1,6 @@
 # ex: set ro:
 # $Id$
-# generated by tools/dev/mk_manifest_and_skip.pl Fri Mar  5 16:49:09 2010 UT
+# generated by tools/dev/mk_manifest_and_skip.pl Mon Mar  8 22:07:22 2010 UT
 #
 # This file should contain a transcript of the svn:ignore properties
 # of the directories in the Parrot subversion repository. (Needed for
@@ -709,8 +709,10 @@
 ^src/dynoplibs/.*\.pdb/
 ^src/dynoplibs/.*\.so$
 ^src/dynoplibs/.*\.so/
-^src/dynoplibs/Makefile$
-^src/dynoplibs/Makefile/
+^src/dynoplibs/Defines\.mak$
+^src/dynoplibs/Defines\.mak/
+^src/dynoplibs/Rules\.mak$
+^src/dynoplibs/Rules\.mak/
 # generated from svn:ignore of 'src/dynpmc/'
 ^src/dynpmc/.*\.bundle$
 ^src/dynpmc/.*\.bundle/

Modified: branches/rm_dynoplibs_make/config/gen/makefiles.pm
==============================================================================
--- branches/rm_dynoplibs_make/config/gen/makefiles.pm	Tue Mar  9 06:37:56 2010	(r44790)
+++ branches/rm_dynoplibs_make/config/gen/makefiles.pm	Tue Mar  9 06:42:00 2010	(r44791)
@@ -36,6 +36,12 @@
         'compilers/imcc/Rules.mak' => {
              SOURCE => 'compilers/imcc/Rules.in',
         },
+        'src/dynoplibs/Rules.mak' => {
+             SOURCE => 'src/dynoplibs/Rules.in',
+        },
+        'src/dynoplibs/Defines.mak' => {
+             SOURCE => 'src/dynoplibs/Defines.in',
+        },
 
         'ext/Parrot-Embed/Makefile.PL' => {
             SOURCE            => 'config/gen/makefiles/parrot_embed_pl.in',
@@ -46,8 +52,6 @@
             { SOURCE => 'compilers/ncigen/config/makefiles/ncigen.in' },
         'src/dynpmc/Makefile'        =>
             { SOURCE => 'config/gen/makefiles/dynpmc.in' },
-        'src/dynoplibs/Makefile'     =>
-            { SOURCE => 'config/gen/makefiles/dynoplibs.in' },
         'editor/Makefile'            =>
             { SOURCE => 'config/gen/makefiles/editor.in' },
 

Deleted: branches/rm_dynoplibs_make/config/gen/makefiles/dynoplibs.in
==============================================================================
--- branches/rm_dynoplibs_make/config/gen/makefiles/dynoplibs.in	Tue Mar  9 06:42:00 2010	(r44790)
+++ /dev/null	00:00:00 1970	(deleted)
@@ -1,153 +0,0 @@
-# Copyright (C) 2003-2009, Parrot Foundation.
-# $Id$
-
-PERL          = @perl@
-RM_F          = @rm_f@
-CP            = @cp@
-CHMOD         = @chmod@
-LOAD_EXT      = @load_ext@
-BUILD_DIR     = @build_dir@
-RECONFIGURE   = $(PERL) $(BUILD_DIR)/tools/dev/reconfigure.pl
-INSTALL_DIR   = $(BUILD_DIR)/runtime/parrot/dynext
-O             = @o@
-CC            = @cc@
-LD            = @ld@
-LDFLAGS       = @ldflags@ @ld_debug@ @rpath_blib@ @linkflags@
-LD_LOAD_FLAGS = @ld_load_flags@
-CFLAGS        = @ccflags@ @cc_shared@ @cc_debug@ @ccwarn@ @cc_hasjit@ @cg_flag@ @gc_flag@ @optimize@
-LIBPARROT     = @libparrot_ldflags@
-
-BUILD_TOOLS_DIR = $(BUILD_DIR)/tools/build
-OPS2C           = $(PERL) -I$(BUILD_DIR)/lib $(BUILD_TOOLS_DIR)/ops2c.pl
-INCLUDES        = -I$(BUILD_DIR)/include -I at build_dir@/src/pmc
-LINKARGS        = $(LDFLAGS) $(LD_LOAD_FLAGS) $(LIBPARROT) @icu_shared@ @libs@
-
-OPS_TARGETS = \
-#IF(cg_flag):  obscure_ops_cg$(LOAD_EXT) \
-#IF(cg_flag):  obscure_ops_cgp$(LOAD_EXT) \
-  obscure_ops$(LOAD_EXT) \
-  obscure_ops_switch$(LOAD_EXT) \
-#IF(cg_flag):  math_ops_cg$(LOAD_EXT) \
-#IF(cg_flag):  math_ops_cgp$(LOAD_EXT) \
-  math_ops$(LOAD_EXT) \
-  math_ops_switch$(LOAD_EXT)
-
-CLEANUPS = \
-  "*.c" \
-  "*.h" \
-#IF(o):  "*@o@" \
-#IF(win32):  "*.lib" \
-#IF(win32):  "*.pdb" \
-#IF(win32):  "*.ilk" \
-#IF(win32):  "*.exp" \
-#IF(win32):  "*.def" \
-#IF(win32):  "*.manifest" \
-#IF(load_ext):  "*@load_ext@"
-
-
-all : $(OPS_TARGETS)
-#IF(cygwin or hpux):	$(CHMOD) 0775 *$(LOAD_EXT)
-	$(CP) *$(LOAD_EXT) $(INSTALL_DIR)
-#IF(cygwin or hpux):	$(CHMOD) 0775 $(INSTALL_DIR)/*$(LOAD_EXT)
-
-Makefile: ../../config/gen/makefiles/dynoplibs.in
-	cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::makefiles --target=src/dynoplibs/Makefile
-
-obscure_ops$(LOAD_EXT): obscure_ops$(O)
-	$(LD) @ld_out at obscure_ops$(LOAD_EXT) obscure_ops$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
-
-obscure_ops$(O): obscure_ops.c
-	$(CC) -c @cc_o_out at obscure_ops$(O) $(INCLUDES) $(CFLAGS) obscure_ops.c
-
-obscure_ops.c: obscure.ops
-	$(OPS2C) C --dynamic obscure.ops
-
-obscure_ops_switch$(LOAD_EXT): obscure_ops_switch$(O)
-	$(LD) @ld_out at obscure_ops_switch$(LOAD_EXT) obscure_ops_switch$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
-
-obscure_ops_switch$(O): obscure_ops_switch.c
-	$(CC) -c @cc_o_out at obscure_ops_switch$(O) $(INCLUDES) $(CFLAGS) obscure_ops_switch.c
-
-obscure_ops_switch.c: obscure.ops
-	$(OPS2C) CSwitch --dynamic obscure.ops
-
-obscure_ops_cg$(LOAD_EXT): obscure_ops_cg$(O)
-	$(LD) @ld_out at obscure_ops_cg$(LOAD_EXT) obscure_ops_cg$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
-
-obscure_ops_cg$(O): obscure_ops_cg.c
-	$(CC) -c @cc_o_out at obscure_ops_cg$(O) $(INCLUDES) $(CFLAGS) obscure_ops_cg.c
-
-obscure_ops_cg.c: obscure.ops
-	$(OPS2C) CGoto --dynamic obscure.ops
-
-obscure_ops_cgp$(LOAD_EXT): obscure_ops_cgp$(O)
-	$(LD) @ld_out at obscure_ops_cgp$(LOAD_EXT) obscure_ops_cgp$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
-
-obscure_ops_cgp$(O): obscure_ops_cgp.c
-	$(CC) -c @cc_o_out at obscure_ops_cgp$(O) $(INCLUDES) $(CFLAGS) obscure_ops_cgp.c
-
-obscure_ops_cgp.c: obscure.ops
-	$(OPS2C) CGP --dynamic obscure.ops
-
-math_ops$(LOAD_EXT): math_ops$(O)
-	$(LD) @ld_out at math_ops$(LOAD_EXT) math_ops$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
-
-math_ops$(O): math_ops.c
-	$(CC) -c @cc_o_out at math_ops$(O) $(INCLUDES) $(CFLAGS) math_ops.c
-
-math_ops.c: math.ops
-	$(OPS2C) C --dynamic math.ops
-
-math_ops_switch$(LOAD_EXT): math_ops_switch$(O)
-	$(LD) @ld_out at math_ops_switch$(LOAD_EXT) math_ops_switch$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
-
-math_ops_switch$(O): math_ops_switch.c
-	$(CC) -c @cc_o_out at math_ops_switch$(O) $(INCLUDES) $(CFLAGS) math_ops_switch.c
-
-math_ops_switch.c: math.ops
-	$(OPS2C) CSwitch --dynamic math.ops
-
-math_ops_cg$(LOAD_EXT): math_ops_cg$(O)
-	$(LD) @ld_out at math_ops_cg$(LOAD_EXT) math_ops_cg$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
-
-math_ops_cg$(O): math_ops_cg.c
-	$(CC) -c @cc_o_out at math_ops_cg$(O) $(INCLUDES) $(CFLAGS) math_ops_cg.c
-
-math_ops_cg.c: math.ops
-	$(OPS2C) CGoto --dynamic math.ops
-
-math_ops_cgp$(LOAD_EXT): math_ops_cgp$(O)
-	$(LD) @ld_out at math_ops_cgp$(LOAD_EXT) math_ops_cgp$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
-
-math_ops_cgp$(O): math_ops_cgp.c
-	$(CC) -c @cc_o_out at math_ops_cgp$(O) $(INCLUDES) $(CFLAGS) math_ops_cgp.c
-
-math_ops_cgp.c: math.ops
-	$(OPS2C) CGP --dynamic math.ops
-
-test : all
-	cd ../.. && $(PERL) -Ilib t/harness t/dynoplibs/*.t
-
-testclean :
-	$(RM_F) "../../t/dynoplibs/*.pir" "../../t/dynoplibs/*.pasm"
-
-clean :
-	$(RM_F) $(CLEANUPS)
-
-realclean:
-	$(RM_F) $(CLEANUPS) Makefile
-
-distclean: realclean
-
-# Local variables:
-#   mode: makefile
-# End:
-# vim: ft=make:

Modified: branches/rm_dynoplibs_make/config/gen/makefiles/root.in
==============================================================================
--- branches/rm_dynoplibs_make/config/gen/makefiles/root.in	Tue Mar  9 06:37:56 2010	(r44790)
+++ branches/rm_dynoplibs_make/config/gen/makefiles/root.in	Tue Mar  9 06:42:00 2010	(r44791)
@@ -113,6 +113,7 @@
 # generated by config/init/headers.pm
 NONGEN_HEADERS   = @TEMP_nongen_headers@
 
+include src/dynoplibs/Defines.mak
 include compilers/imcc/Defines.mak
 include compilers/pirc/Defines.mak
 include compilers/tge/Defines.mak
@@ -141,7 +142,8 @@
     compilers/ncigen/Makefile \
     editor/Makefile \
     ext/Makefile \
-    src/dynoplibs/Makefile \
+    src/dynoplibs/Rules.mak \
+    src/dynoplibs/Defines.mak \
     src/dynpmc/Makefile \
     compilers/imcc/Rules.mak
 
@@ -628,7 +630,7 @@
     $(LIBNCI_TEST_SO) \
     $(GEN_LIBRARY) \
     dynpmc \
-    dynoplibs
+    $(DYNOPLIBS_TARGETS)
 
 $(GEN_LIBRARY) : $(PARROT) $(GEN_PASM_INCLUDES)
 
@@ -770,11 +772,6 @@
 	@echo "  dynpmc-test:       Proxy for target 'test' of src/dynpmc/Makefile"
 	@echo "  dynpmc-clean:      Proxy for target 'clean' of src/dynpmc/Makefile"
 	@echo ""
-	@echo "Dynamic oplibs:"
-	@echo "  dynoplibs:         Proxy for default target of src/dynoplibs/Makefile"
-	@echo "  dynoplibs-test:    Proxy for target 'test' of src/dynoplibs/Makefile"
-	@echo "  dynoplibs-clean:   Proxy for target 'clean' of src/dynoplibs/Makefile"
-	@echo ""
 	@echo "Fetch from source repository:"
 	@echo "  update:            svn update."
 	@echo "  status:            svn status."
@@ -1128,6 +1125,8 @@
 # ops.h is built by ops2pm.pl after it builds core.pm
 $(INC_DIR)/oplib/ops.h:  lib/Parrot/OpLib/core.pm
 
+$(BUILD_TOOLS_DIR)/ops2c.pl: lib/Parrot/OpLib/core.pm
+
 lib/Parrot/OpLib/core.pm : $(OPS_FILES) $(BUILD_TOOLS_DIR)/ops2pm.pl \
     lib/Parrot/OpsFile.pm lib/Parrot/Op.pm src/ops/ops.num src/ops/ops.skip
 	$(PERL) $(BUILD_TOOLS_DIR)/ops2pm.pl @no_lines_flag@ $(OPS_FILES)
@@ -1588,24 +1587,6 @@
 
 ###############################################################################
 #
-# dynamic oplibs targets:
-#
-###############################################################################
-
-dynoplibs : dynoplibs.dummy
-
-# XXX this dependancy is too broad, and should be narrowed down
-dynoplibs.dummy : $(PARROT) $(INC_DIR)/dynext.h
-	$(MAKE) src/dynoplibs
-
-dynoplibs-test : $(PARROT) $(INC_DIR)/dynext.h
-	$(MAKE) src/dynoplibs test
-
-dynoplibs-clean :
-	$(MAKE) src/dynoplibs clean
-
-###############################################################################
-#
 # compiler implementation targets:
 #
 ###############################################################################
@@ -1836,7 +1817,6 @@
 #IF(has_perldoc):    docs-clean \
 #IF(has_perldoc):    html-clean \
     dynpmc-clean \
-    dynoplibs-clean \
     examples-clean \
     ext-clean \
 #UNLESS(win32):    cover-clean \
@@ -1849,7 +1829,7 @@
 	$(RM_RF) lib/Parrot/OpLib
 	$(RM_F) $(NQP_CLEANUPS) $(PGE_CLEANUPS) $(TGE_CLEANUPS) $(JSON_CLEANUPS)
 	$(RM_F) $(PIRC_CLEANUPS) $(PCT_CLEANUPS) $(DATA_JSON_CLEANUPS)
-	$(RM_F) $(GEN_PASM_INCLUDES) $(GEN_PM_INCLUDES)
+	$(RM_F) $(GEN_PASM_INCLUDES) $(GEN_PM_INCLUDES) $(DYNOPLIBS_CLEANUPS)
 
 prog-clean :
 	$(RM_F) \
@@ -1893,7 +1873,7 @@
     src/string/private_cstring.h "src/pmc/*.c" "include/pmc/pmc_*.h" \
     "src/pmc/*.dump" vtable.dump "*.def" "*.lib" "*.exp"
 
-archclean: dynoplibs-clean dynpmc-clean dynext-clean
+archclean: dynpmc-clean dynext-clean
 	$(RM_F) \
     $(O_FILES) \
     $(GEN_CONFIGS) \
@@ -2545,6 +2525,7 @@
 malloclist: src/core_pmcs.c
 	$(PERL) $(BUILD_TOOLS_DIR)/headerizer.pl --macro=PARROT_MALLOC $(HEADERIZER_O_FILES)
 
+include src/dynoplibs/Rules.mak
 include runtime/parrot/library/Rules.mak
 include compilers/imcc/Rules.mak
 include compilers/pirc/Rules.mak

Added: branches/rm_dynoplibs_make/src/dynoplibs/Defines.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/rm_dynoplibs_make/src/dynoplibs/Defines.in	Tue Mar  9 06:42:00 2010	(r44791)
@@ -0,0 +1,19 @@
+DYNOPLIBS_TARGETS = \
+#IF(cg_flag):    $(DYNEXT_DIR)/obscure_ops_cg$(LOAD_EXT) \
+#IF(cg_flag):    $(DYNEXT_DIR)/obscure_ops_cgp$(LOAD_EXT) \
+    $(DYNEXT_DIR)/obscure_ops$(LOAD_EXT) \
+    $(DYNEXT_DIR)/obscure_ops_switch$(LOAD_EXT) \
+#IF(cg_flag):    $(DYNEXT_DIR)/math_ops_cg$(LOAD_EXT) \
+#IF(cg_flag):    $(DYNEXT_DIR)/math_ops_cgp$(LOAD_EXT) \
+    $(DYNEXT_DIR)/math_ops$(LOAD_EXT) \
+    $(DYNEXT_DIR)/math_ops_switch$(LOAD_EXT)
+
+DYNOPLIBS_CLEANUPS = \
+    src/dynoplibs/*.c \
+    src/dynoplibs/*.h \
+    src/dynoplibs/*.lib \
+    src/dynoplibs/*.pdb \
+    src/dynoplibs/*.ilk \
+    src/dynoplibs/*.def \
+    src/dynoplibs/*.manifest \
+    src/dynoplibs/*$(O) \

Modified: branches/rm_dynoplibs_make/src/dynoplibs/README
==============================================================================
--- branches/rm_dynoplibs_make/src/dynoplibs/README	Tue Mar  9 06:37:56 2010	(r44790)
+++ branches/rm_dynoplibs_make/src/dynoplibs/README	Tue Mar  9 06:42:00 2010	(r44791)
@@ -4,11 +4,6 @@
 
 1) edit/create your foo.ops source (s. myops.ops)
 
-2) edit Makefile and append your ops target(s)
+2) edit the .mak files and append your ops targets and rules.
 
-$ export LD_LIBRARY_PATH=.:blib/lib
-$ make -s
-$ make shared
-$ make dynoplibs
-
-For tests and thus examples see t/dynoplibs/*.t.
+For tests and examples see t/dynoplibs/*.t.

Copied and modified: branches/rm_dynoplibs_make/src/dynoplibs/Rules.in (from r44680, trunk/config/gen/makefiles/dynoplibs.in)
==============================================================================
--- trunk/config/gen/makefiles/dynoplibs.in	Sat Mar  6 01:48:19 2010	(r44680, copy source)
+++ branches/rm_dynoplibs_make/src/dynoplibs/Rules.in	Tue Mar  9 06:42:00 2010	(r44791)
@@ -1,153 +1,99 @@
-# Copyright (C) 2003-2009, Parrot Foundation.
-# $Id$
+#
+# Each opslib must be compiled with several variants.
+#
 
-PERL          = @perl@
-RM_F          = @rm_f@
-CP            = @cp@
-CHMOD         = @chmod@
-LOAD_EXT      = @load_ext@
-BUILD_DIR     = @build_dir@
-RECONFIGURE   = $(PERL) $(BUILD_DIR)/tools/dev/reconfigure.pl
-INSTALL_DIR   = $(BUILD_DIR)/runtime/parrot/dynext
-O             = @o@
-CC            = @cc@
-LD            = @ld@
-LDFLAGS       = @ldflags@ @ld_debug@ @rpath_blib@ @linkflags@
-LD_LOAD_FLAGS = @ld_load_flags@
-CFLAGS        = @ccflags@ @cc_shared@ @cc_debug@ @ccwarn@ @cc_hasjit@ @cg_flag@ @gc_flag@ @optimize@
-LIBPARROT     = @libparrot_ldflags@
-
-BUILD_TOOLS_DIR = $(BUILD_DIR)/tools/build
-OPS2C           = $(PERL) -I$(BUILD_DIR)/lib $(BUILD_TOOLS_DIR)/ops2c.pl
-INCLUDES        = -I$(BUILD_DIR)/include -I at build_dir@/src/pmc
-LINKARGS        = $(LDFLAGS) $(LD_LOAD_FLAGS) $(LIBPARROT) @icu_shared@ @libs@
-
-OPS_TARGETS = \
-#IF(cg_flag):  obscure_ops_cg$(LOAD_EXT) \
-#IF(cg_flag):  obscure_ops_cgp$(LOAD_EXT) \
-  obscure_ops$(LOAD_EXT) \
-  obscure_ops_switch$(LOAD_EXT) \
-#IF(cg_flag):  math_ops_cg$(LOAD_EXT) \
-#IF(cg_flag):  math_ops_cgp$(LOAD_EXT) \
-  math_ops$(LOAD_EXT) \
-  math_ops_switch$(LOAD_EXT)
-
-CLEANUPS = \
-  "*.c" \
-  "*.h" \
-#IF(o):  "*@o@" \
-#IF(win32):  "*.lib" \
-#IF(win32):  "*.pdb" \
-#IF(win32):  "*.ilk" \
-#IF(win32):  "*.exp" \
-#IF(win32):  "*.def" \
-#IF(win32):  "*.manifest" \
-#IF(load_ext):  "*@load_ext@"
+$(DYNEXT_DIR)/obscure_ops$(LOAD_EXT): src/dynoplibs/obscure_ops$(O) $(LIBPARROT)
+	$(LD) @ld_out@$@ $< $(LINKFLAGS)
+#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
+#IF(cygwin or hpux):	$(CHMOD) 0775 $@
 
+src/dynoplibs/obscure_ops$(O): include/pmc/pmc_parrotlibrary.h include/pmc/pmc_callcontext.h src/dynoplibs/obscure_ops.c $(PARROT_H_HEADERS)
 
-all : $(OPS_TARGETS)
-#IF(cygwin or hpux):	$(CHMOD) 0775 *$(LOAD_EXT)
-	$(CP) *$(LOAD_EXT) $(INSTALL_DIR)
-#IF(cygwin or hpux):	$(CHMOD) 0775 $(INSTALL_DIR)/*$(LOAD_EXT)
+src/dynoplibs/obscure_ops.h: src/dynoplibs/obscure_ops.c
 
-Makefile: ../../config/gen/makefiles/dynoplibs.in
-	cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::makefiles --target=src/dynoplibs/Makefile
+src/dynoplibs/obscure_ops.c: src/dynoplibs/obscure.ops $(BUILD_TOOLS_DIR)/ops2c.pl
+	$(PERL) $(BUILD_TOOLS_DIR)/ops2c.pl C --dynamic $<
 
-obscure_ops$(LOAD_EXT): obscure_ops$(O)
-	$(LD) @ld_out at obscure_ops$(LOAD_EXT) obscure_ops$(O) $(LINKARGS)
+$(DYNEXT_DIR)/obscure_ops_switch$(LOAD_EXT): src/dynoplibs/obscure_ops_switch$(O) $(LIBPARROT)
+	$(LD) @ld_out@$@ $< $(LINKFLAGS)
 #IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
+#IF(cygwin or hpux):	$(CHMOD) 0775 $@
 
-obscure_ops$(O): obscure_ops.c
-	$(CC) -c @cc_o_out at obscure_ops$(O) $(INCLUDES) $(CFLAGS) obscure_ops.c
+src/dynoplibs/obscure_ops_switch$(O): include/pmc/pmc_parrotlibrary.h include/pmc/pmc_callcontext.h src/dynoplibs/obscure_ops_switch.c $(PARROT_H_HEADERS)
 
-obscure_ops.c: obscure.ops
-	$(OPS2C) C --dynamic obscure.ops
+src/dynoplibs/obscure_ops_switch.h: src/dynoplibs/obscure_ops_switch.c
 
-obscure_ops_switch$(LOAD_EXT): obscure_ops_switch$(O)
-	$(LD) @ld_out at obscure_ops_switch$(LOAD_EXT) obscure_ops_switch$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
-
-obscure_ops_switch$(O): obscure_ops_switch.c
-	$(CC) -c @cc_o_out at obscure_ops_switch$(O) $(INCLUDES) $(CFLAGS) obscure_ops_switch.c
+src/dynoplibs/obscure_ops_switch.c: src/dynoplibs/obscure.ops $(BUILD_TOOLS_DIR)/ops2c.pl
+	$(PERL) $(BUILD_TOOLS_DIR)/ops2c.pl CSwitch --dynamic $<
 
-obscure_ops_switch.c: obscure.ops
-	$(OPS2C) CSwitch --dynamic obscure.ops
-
-obscure_ops_cg$(LOAD_EXT): obscure_ops_cg$(O)
-	$(LD) @ld_out at obscure_ops_cg$(LOAD_EXT) obscure_ops_cg$(O) $(LINKARGS)
+$(DYNEXT_DIR)/obscure_ops_cg$(LOAD_EXT): src/dynoplibs/obscure_ops_cg$(O) $(LIBPARROT)
+	$(LD) @ld_out@$@ $< $(LINKFLAGS)
 #IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
+#IF(cygwin or hpux):	$(CHMOD) 0775 $@
 
-obscure_ops_cg$(O): obscure_ops_cg.c
-	$(CC) -c @cc_o_out at obscure_ops_cg$(O) $(INCLUDES) $(CFLAGS) obscure_ops_cg.c
+src/dynoplibs/obscure_ops_cg$(O): include/pmc/pmc_parrotlibrary.h include/pmc/pmc_callcontext.h src/dynoplibs/obscure_ops_cg.c $(PARROT_H_HEADERS)
 
-obscure_ops_cg.c: obscure.ops
-	$(OPS2C) CGoto --dynamic obscure.ops
+src/dynoplibs/obscure_ops_cg.h: src/dynoplibs/obscure_ops_cg.c
 
-obscure_ops_cgp$(LOAD_EXT): obscure_ops_cgp$(O)
-	$(LD) @ld_out at obscure_ops_cgp$(LOAD_EXT) obscure_ops_cgp$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
+src/dynoplibs/obscure_ops_cg.c: src/dynoplibs/obscure.ops $(BUILD_TOOLS_DIR)/ops2c.pl
+	$(PERL) $(BUILD_TOOLS_DIR)/ops2c.pl CGoto --dynamic $<
 
-obscure_ops_cgp$(O): obscure_ops_cgp.c
-	$(CC) -c @cc_o_out at obscure_ops_cgp$(O) $(INCLUDES) $(CFLAGS) obscure_ops_cgp.c
-
-obscure_ops_cgp.c: obscure.ops
-	$(OPS2C) CGP --dynamic obscure.ops
-
-math_ops$(LOAD_EXT): math_ops$(O)
-	$(LD) @ld_out at math_ops$(LOAD_EXT) math_ops$(O) $(LINKARGS)
+$(DYNEXT_DIR)/obscure_ops_cgp$(LOAD_EXT): src/dynoplibs/obscure_ops_cgp$(O) $(LIBPARROT)
+	$(LD) @ld_out@$@ $< $(LINKFLAGS)
 #IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
+#IF(cygwin or hpux):	$(CHMOD) 0775 $@
 
-math_ops$(O): math_ops.c
-	$(CC) -c @cc_o_out at math_ops$(O) $(INCLUDES) $(CFLAGS) math_ops.c
+src/dynoplibs/obscure_ops_cgp$(O): include/pmc/pmc_parrotlibrary.h include/pmc/pmc_callcontext.h src/dynoplibs/obscure_ops_cgp.c $(PARROT_H_HEADERS)
 
-math_ops.c: math.ops
-	$(OPS2C) C --dynamic math.ops
+src/dynoplibs/obscure_ops_cgp.h: src/dynoplibs/obscure_ops_cgp.c
 
-math_ops_switch$(LOAD_EXT): math_ops_switch$(O)
-	$(LD) @ld_out at math_ops_switch$(LOAD_EXT) math_ops_switch$(O) $(LINKARGS)
+src/dynoplibs/obscure_ops_cgp.c: src/dynoplibs/obscure.ops $(BUILD_TOOLS_DIR)/ops2c.pl
+	$(PERL) $(BUILD_TOOLS_DIR)/ops2c.pl CGP --dynamic $<
+
+$(DYNEXT_DIR)/math_ops$(LOAD_EXT): src/dynoplibs/math_ops$(O) $(LIBPARROT)
+	$(LD) @ld_out@$@ $< $(LINKFLAGS)
 #IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
+#IF(cygwin or hpux):	$(CHMOD) 0775 $@
+
+src/dynoplibs/math_ops.c: src/dynoplibs/math.ops $(BUILD_TOOLS_DIR)/ops2c.pl
+	$(PERL) $(BUILD_TOOLS_DIR)/ops2c.pl C --dynamic $<
 
-math_ops_switch$(O): math_ops_switch.c
-	$(CC) -c @cc_o_out at math_ops_switch$(O) $(INCLUDES) $(CFLAGS) math_ops_switch.c
+src/dynoplibs/math_ops$(O): include/pmc/pmc_parrotlibrary.h include/pmc/pmc_callcontext.h src/dynoplibs/math_ops.c $(PARROT_H_HEADERS)
 
-math_ops_switch.c: math.ops
-	$(OPS2C) CSwitch --dynamic math.ops
+src/dynoplibs/math_ops.h: src/dynoplibs/math_ops.c
 
-math_ops_cg$(LOAD_EXT): math_ops_cg$(O)
-	$(LD) @ld_out at math_ops_cg$(LOAD_EXT) math_ops_cg$(O) $(LINKARGS)
+$(DYNEXT_DIR)/math_ops_switch$(LOAD_EXT): src/dynoplibs/math_ops_switch$(O) $(LIBPARROT)
+	$(LD) @ld_out@$@ $< $(LINKFLAGS)
 #IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
+#IF(cygwin or hpux):	$(CHMOD) 0775 $@
 
-math_ops_cg$(O): math_ops_cg.c
-	$(CC) -c @cc_o_out at math_ops_cg$(O) $(INCLUDES) $(CFLAGS) math_ops_cg.c
+src/dynoplibs/math_ops_switch$(O): include/pmc/pmc_parrotlibrary.h include/pmc/pmc_callcontext.h src/dynoplibs/math_ops_switch.c $(PARROT_H_HEADERS)
 
-math_ops_cg.c: math.ops
-	$(OPS2C) CGoto --dynamic math.ops
+src/dynoplibs/math_ops_switch.h: src/dynoplibs/math_ops_switch.c
 
-math_ops_cgp$(LOAD_EXT): math_ops_cgp$(O)
-	$(LD) @ld_out at math_ops_cgp$(LOAD_EXT) math_ops_cgp$(O) $(LINKARGS)
-#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
+src/dynoplibs/math_ops_switch.c: src/dynoplibs/math.ops $(BUILD_TOOLS_DIR)/ops2c.pl
+	$(PERL) $(BUILD_TOOLS_DIR)/ops2c.pl CSwitch --dynamic $<
 
-math_ops_cgp$(O): math_ops_cgp.c
-	$(CC) -c @cc_o_out at math_ops_cgp$(O) $(INCLUDES) $(CFLAGS) math_ops_cgp.c
+$(DYNEXT_DIR)/math_ops_cg$(LOAD_EXT): src/dynoplibs/math_ops_cg$(O) $(LIBPARROT)
+	$(LD) @ld_out@$@ $< $(LINKFLAGS)
+#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
+#IF(cygwin or hpux):	$(CHMOD) 0775 $@
 
-math_ops_cgp.c: math.ops
-	$(OPS2C) CGP --dynamic math.ops
+src/dynoplibs/math_ops_cg$(O): include/pmc/pmc_parrotlibrary.h include/pmc/pmc_callcontext.h src/dynoplibs/math_ops_cg.c $(PARROT_H_HEADERS)
 
-test : all
-	cd ../.. && $(PERL) -Ilib t/harness t/dynoplibs/*.t
+src/dynoplibs/math_ops_cg.h: src/dynoplibs/math_ops_cg.c
 
-testclean :
-	$(RM_F) "../../t/dynoplibs/*.pir" "../../t/dynoplibs/*.pasm"
+src/dynoplibs/math_ops_cg.c: src/dynoplibs/math.ops $(BUILD_TOOLS_DIR)/ops2c.pl
+	$(PERL) $(BUILD_TOOLS_DIR)/ops2c.pl CGoto --dynamic $<
 
-clean :
-	$(RM_F) $(CLEANUPS)
+$(DYNEXT_DIR)/math_ops_cgp$(LOAD_EXT): src/dynoplibs/math_ops_cgp$(O) $(LIBPARROT)
+	$(LD) @ld_out@$@ $< $(LINKFLAGS)
+#IF(win32):	if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2
+#IF(cygwin or hpux):	$(CHMOD) 0775 $@
 
-realclean:
-	$(RM_F) $(CLEANUPS) Makefile
+src/dynoplibs/math_ops_cgp$(O): include/pmc/pmc_parrotlibrary.h include/pmc/pmc_callcontext.h src/dynoplibs/math_ops_cgp.c $(PARROT_H_HEADERS)
 
-distclean: realclean
+src/dynoplibs/math_ops_cgp.h: src/dynoplibs/math_ops_cgp.c
 
-# Local variables:
-#   mode: makefile
-# End:
-# vim: ft=make:
+src/dynoplibs/math_ops_cgp.c: src/dynoplibs/math.ops $(BUILD_TOOLS_DIR)/ops2c.pl
+	$(PERL) $(BUILD_TOOLS_DIR)/ops2c.pl CGP --dynamic $<


More information about the parrot-commits mailing list