http://code.google.com/p/decnum-dynpmcs/source/detail?r=188
Added:
/trunk/build
Deleted:
/trunk/cfg/src
Modified:
/trunk/Configure.pir
/trunk/cfg/Makefile.in
/trunk/src/pmc/decint.pmc
/trunk/src/pmc/decintcontext.pmc
/trunk/src/pmc/decnum.pmc
/trunk/src/pmc/decnumcontext.pmc
=======================================
--- /trunk/Configure.pir Fri Sep 25 14:15:47 2009
+++ /trunk/Configure.pir Thu Oct 15 17:55:26 2009
@@ -26,10 +26,6 @@
$I0 = spawnw runcmd
say runcmd
- runcmd = cmd . "cfg/src/pmc/Makefile.in src/pmc/Makefile"
- $I0 = spawnw runcmd
- say runcmd
-
.local pmc opts
opts = getopts.'get_options'(argv)
=======================================
--- /trunk/cfg/Makefile.in Thu Sep 24 10:32:16 2009
+++ /trunk/cfg/Makefile.in Thu Oct 15 17:55:26 2009
@@ -20,6 +20,7 @@
CHMOD := @chmod@
MKPATH := @mkpath@
CP := @cp@
+MV := @mv@
CC := @cc@ -c
LD := @ld@
LDFLAGS := @ldflags@ @ld_debug@
@@ -34,7 +35,8 @@
#IF(parrot_is_shared):LIBPARROT := @inst_libparrot_ldflags@
#ELSE:LIBPARROT :=
-PMC2C_INCLUDES := --include $(SRC_DIR) --include $(SRC_DIR)/pmc
+PMC2C_INCLUDES := --include $(SRC_DIR) --include $(SRC_DIR)/pmc \
+ --include $(STAGING_DIR)
PMC2C := $(PERL) $(LIB_DIR)/tools/build/pmc2c.pl
PMC2CD := $(PMC2C) --dump $(PMC2C_INCLUDES)
PMC2CC := $(PMC2C) --c $(PMC2C_INCLUDES)
@@ -43,28 +45,103 @@
LINKARGS := $(LDFLAGS) $(LD_LOAD_FLAGS) $(LIBPARROT)
PMC_DEPS := \
- $(PMC_DIR)/decbase.pmc \
- $(PMC_DIR)/decnumcontext.pmc \
- $(PMC_DIR)/decnum.pmc
+ $(STAGING_DIR)/decbase.pmc \
+ $(STAGING_DIR)/decnumcontext.pmc \
+ $(STAGING_DIR)/decnum.pmc \
+ $(STAGING_DIR)/decintcontext.pmc \
+ $(STAGING_DIR)/decint.pmc
# the default target
-all: pmc $(STAGING_DIR)
-
-$(STAGING_DIR):
- $(MKPATH) $(STAGING_DIR)
-
-pmc: $(PMC_DEPS) $(STAGING_DIR)/decContext$(O) \
- $(STAGING_DIR)/decNumber$(O) $(STAGING_DIR)
- $(MAKE) $(PMC_DIR)
+all: $(STAGING_DIR)/decnum_group$(LOAD_EXT)
+
+$(PMC_DEPS):
+ $(CP) $(PMC_DIR)/*pmc $(STAGING_DIR)
+
+$(STAGING_DIR)/decnum_group.c: $(PMC_DEPS) $(STAGING_DIR)/decContext$(O) \
+ $(STAGING_DIR)/decNumber$(O)
+ $(PMC2C) --library decnum_group --c \
+ $(STAGING_DIR)/decintcontext.pmc $(STAGING_DIR)/decint.pmc \
+ $(STAGING_DIR)/decnumcontext.pmc $(STAGING_DIR)/decnum.pmc \
+ $(STAGING_DIR)/decbase.pmc
+ $(MV) decnum_group* $(STAGING_DIR)
+
+$(STAGING_DIR)/lib-decnum_group$(O): $(STAGING_DIR)/decnum_group.c
+ $(CC) $(CC_OUT)$(STAGING_DIR)/lib-decnum_group$(O) $(INCLUDES) \
+ $(CFLAGS) $(STAGING_DIR)/decnum_group.c
+
+$(STAGING_DIR)/decnum_group$(LOAD_EXT): $(STAGING_DIR)/decbase$(O) \
+ $(STAGING_DIR)/decNumber$(O) $(STAGING_DIR)/decContext$(O) \
+ $(STAGING_DIR)/decnumcontext$(O) $(STAGING_DIR)/decnum$(O) \
+ $(STAGING_DIR)/decintcontext$(O) $(STAGING_DIR)/decint$(O) \
+ $(STAGING_DIR)/lib-decnum_group$(O) $(DECNUM_OBJS)
+ $(LD) $(LD_OUT)$(STAGING_DIR)/decnum_group$(LOAD_EXT) \
+ $(STAGING_DIR)/decNumber$(O) $(STAGING_DIR)/decContext$(O) \
+ $(STAGING_DIR)/decintcontext$(O) $(STAGING_DIR)/decint$(O) \
+ $(STAGING_DIR)/decnumcontext$(O) $(STAGING_DIR)/decnum$(O) \
+ $(STAGING_DIR)/lib-decnum_group$(O) \
+ $(STAGING_DIR)/decbase$(O) $(LINKARGS)
+
+$(STAGING_DIR)/decintcontext.dump: $(STAGING_DIR)/decintcontext.pmc \
+ $(STAGING_DIR)/decnumcontext$(O)
+ $(PMC2CD) $(STAGING_DIR)/decintcontext.pmc
+
+$(STAGING_DIR)/decintcontext.c: $(STAGING_DIR)/decintcontext.dump
+ $(PMC2CC) $(STAGING_DIR)/decintcontext.pmc
+
+$(STAGING_DIR)/decintcontext$(O): $(STAGING_DIR)/decintcontext.c
+ $(CC) $(CC_OUT)$(STAGING_DIR)/decintcontext$(O) $(INCLUDES) \
+ $(CFLAGS) $(STAGING_DIR)/decintcontext.c
+
+$(STAGING_DIR)/decint.dump: $(STAGING_DIR)/decint.pmc \
+ $(STAGING_DIR)/decnum$(O)
+ $(PMC2CD) $(STAGING_DIR)/decint.pmc
+
+$(STAGING_DIR)/decint.c: $(STAGING_DIR)/decint.dump
+ $(PMC2CC) $(STAGING_DIR)/decint.pmc
+
+$(STAGING_DIR)/decint$(O): $(STAGING_DIR)/decint.c
+ $(CC) $(CC_OUT)$(STAGING_DIR)/decint$(O) $(INCLUDES) \
+ $(CFLAGS) $(STAGING_DIR)/decint.c
+
+$(STAGING_DIR)/decnumcontext.dump: $(STAGING_DIR)/decnumcontext.pmc \
+ $(STAGING_DIR)/decbase$(O)
+ $(PMC2CD) $(STAGING_DIR)/decnumcontext.pmc
+
+$(STAGING_DIR)/decnumcontext.c: $(STAGING_DIR)/decnumcontext.dump
+ $(PMC2CC) $(STAGING_DIR)/decnumcontext.pmc
+
+$(STAGING_DIR)/decnumcontext$(O): $(STAGING_DIR)/decnumcontext.c
+ $(CC) $(CC_OUT)$(STAGING_DIR)/decnumcontext$(O) $(INCLUDES) \
+ $(CFLAGS) $(STAGING_DIR)/decnumcontext.c
+
+$(STAGING_DIR)/decnum.dump: $(STAGING_DIR)/decnum.pmc \
+ $(STAGING_DIR)/decbase$(O)
+ $(PMC2CD) $(STAGING_DIR)/decnum.pmc
+
+$(STAGING_DIR)/decnum.c: $(STAGING_DIR)/decnum.dump
+ $(PMC2CC) $(STAGING_DIR)/decnum.pmc
+
+$(STAGING_DIR)/decnum$(O): $(STAGING_DIR)/decnum.c
+ $(CC) $(CC_OUT)$(STAGING_DIR)/decnum$(O) $(INCLUDES) \
+ $(CFLAGS) $(STAGING_DIR)/decnum.c
+
+$(STAGING_DIR)/decbase.dump: $(STAGING_DIR)/decbase.pmc
+ $(PMC2CD) $(STAGING_DIR)/decbase.pmc
+
+$(STAGING_DIR)/decbase.c: $(STAGING_DIR)/decbase.dump
+ $(PMC2CC) $(STAGING_DIR)/decbase.pmc
+
+$(STAGING_DIR)/decbase$(O): $(STAGING_DIR)/decbase.c
+ $(CC) $(CC_OUT)$(STAGING_DIR)/decbase$(O) $(INCLUDES) \
+ $(CFLAGS) $(STAGING_DIR)/decbase.c
$(STAGING_DIR)/decContext$(O): $(DECNUMBER_DIR)/decContext.c \
- $(DECNUMBER_DIR)/decContext.h $(STAGING_DIR)
+ $(DECNUMBER_DIR)/decContext.h
$(CC) $(CFLAGS) $(CC_OUT)$(STAGING_DIR)/decContext$(O) \
$(DECNUMBER_DIR)/decContext.c
$(STAGING_DIR)/decNumber$(O): $(DECNUMBER_DIR)/decNumber.c \
- $(DECNUMBER_DIR)/decNumber.h \
- $(DECNUMBER_DIR)/decContext.h
+ $(DECNUMBER_DIR)/decNumber.h $(DECNUMBER_DIR)/decContext.h
$(CC) $(CFLAGS) $(CC_OUT)$(STAGING_DIR)/decNumber$(O) \
$(DECNUMBER_DIR)/decNumber.c
@@ -73,40 +150,38 @@
@echo ""
@echo "Following targets are available for the user:"
@echo ""
- @echo " pmc: Build the dynpmcs."
+ @echo " all: Build the dynpmcs."
@echo " This is the default."
- @echo " install: Install the installable targets and docs."
+ @echo " install: Install the installable targets."
+ @echo " uninstall: Un-install the above targets."
@echo ""
@echo "Testing:"
@echo " test: Run the test suite."
- @echo " testclean: Clean up test results."
@echo ""
@echo "Cleaning:"
@echo " clean: Basic cleaning up."
- @echo " realclean: Removes also files generated
by 'Configure.pl'"
+ @echo " realclean: Removes also files generated
by 'Configure.pir'"
@echo ""
@echo "Misc:"
@echo " help: Print this help message."
@echo ""
-test: pmc
+test: all
$(PERL) t/harness
-install: pmc
-#IF(cygwin or hpux): CHMOD 0775 "*$(LOAD_EXT)"
- $(CP) "$(STAGING_DIR)/decnum_group$(LOAD_EXT)" $(INSTALL_DIR)
- $(CP) "inc/decnum.pasm" $(LIB_DIR)/include
+install: all
+#IF(cygwin or hpux): CHMOD 0775 $(STAGING_DIR)/decnum_group$(LOAD_EXT)
+ $(CP) $(STAGING_DIR)/decnum_group$(LOAD_EXT) $(INSTALL_DIR)
+ $(CP) inc/decnum.pasm $(LIB_DIR)/include
uninstall:
$(RM_F) $(INSTALL_DIR)/decnum_group$(LOAD_EXT)
$(RM_F) $(LIB_DIR)/include/decnum.pasm
clean:
- $(MAKE) $(PMC_DIR) clean
- $(RM_RF) $(STAGING_DIR)
+ $(RM_RF) $(STAGING_DIR)/*
realclean: clean
- $(MAKE) $(PMC_DIR) realclean
$(RM_F) Makefile aux/decTest/Makefile
# Local variables:
=======================================
--- /trunk/src/pmc/decint.pmc Fri Sep 25 14:15:47 2009
+++ /trunk/src/pmc/decint.pmc Thu Oct 15 17:55:26 2009
@@ -25,8 +25,8 @@
#include <string.h>
#include "parrot/parrot.h"
-#include "../decNumber/decNumber.h"
-#include "definitions.h"
+#include "../src/decNumber/decNumber.h"
+#include "../src/pmc/definitions.h"
#define ROUND(pmc) do { \
decNumberToIntegralValue(PARROT_DECINT((pmc))->number, \
=======================================
--- /trunk/src/pmc/decintcontext.pmc Fri Sep 25 14:15:47 2009
+++ /trunk/src/pmc/decintcontext.pmc Thu Oct 15 17:55:26 2009
@@ -25,8 +25,8 @@
#include <string.h>
#include "parrot/parrot.h"
-#include "../decNumber/decNumber.h"
-#include "definitions.h"
+#include "../src/decNumber/decNumber.h"
+#include "../src/pmc/definitions.h"
#define MAX_DIGITS DECNUMDIGITS
#define MIN_DIGITS 1
=======================================
--- /trunk/src/pmc/decnum.pmc Fri Sep 25 14:15:47 2009
+++ /trunk/src/pmc/decnum.pmc Thu Oct 15 17:55:26 2009
@@ -25,8 +25,8 @@
#include <string.h>
#include "parrot/parrot.h"
-#include "../decNumber/decNumber.h"
-#include "definitions.h"
+#include "../src/decNumber/decNumber.h"
+#include "../src/pmc/definitions.h"
static void
check_flags_and_throw(PARROT_INTERP, decContext *ctx, INTVAL exceptions) {
=======================================
--- /trunk/src/pmc/decnumcontext.pmc Fri Sep 25 14:15:47 2009
+++ /trunk/src/pmc/decnumcontext.pmc Thu Oct 15 17:55:26 2009
@@ -25,8 +25,8 @@
#include <string.h>
#include "parrot/parrot.h"
-#include "../decNumber/decNumber.h"
-#include "definitions.h"
+#include "../src/decNumber/decNumber.h"
+#include "../src/pmc/definitions.h"
#define MAX_DIGITS DECNUMDIGITS
#define MIN_DIGITS 1