[Vm-dev] [commit][3095] Hack-fix platform-specific file selection for the IA32ABI and BitBltPlugin

commits at squeakvm.org commits at squeakvm.org
Fri Oct 3 21:49:28 UTC 2014


Revision: 3095
Author:   eliot
Date:     2014-10-03 14:49:26 -0700 (Fri, 03 Oct 2014)
Log Message:
-----------
Hack-fix platform-specific file selection for the IA32ABI and BitBltPlugin
plugins on unix.  Merge Doug McPherson's upgrade to mkmf to be able to compile
.s as well as .S.

Doug, apologies for the conflicts between your platforms/unix/plugins/BitBltPlugin/Makefile.in
and my   platforms/unix/plugins/BitBltPlugin/{Makefile.inc,acinclude.m4}.
Hitting the ball back to you for your input.

Modified Paths:
--------------
    branches/Cog/platforms/unix/config/configure
    branches/Cog/platforms/unix/config/make.cfg.in
    branches/Cog/platforms/unix/config/mkmf

Added Paths:
-----------
    branches/Cog/platforms/unix/plugins/BitBltPlugin/Makefile.inc
    branches/Cog/platforms/unix/plugins/BitBltPlugin/acinclude.m4
    branches/Cog/platforms/unix/plugins/IA32ABI/
    branches/Cog/platforms/unix/plugins/IA32ABI/Makefile.inc
    branches/Cog/platforms/unix/plugins/IA32ABI/acinclude.m4

Property Changed:
----------------
    branches/Cog/platforms/Cross/vm/sqSCCSVersion.h


Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
   - Fri Oct  3 09:35:18 PDT 2014
   + Fri Oct  3 14:48:56 PDT 2014

Modified: branches/Cog/platforms/unix/config/configure
===================================================================
--- branches/Cog/platforms/unix/config/configure	2014-10-03 20:44:16 UTC (rev 3094)
+++ branches/Cog/platforms/unix/config/configure	2014-10-03 21:49:26 UTC (rev 3095)
@@ -463,7 +463,7 @@
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='NM LD SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS cogit topdir cfgdir vmmdir vmpdir vmmcfg blddir SQ_MAJOR SQ_MINOR SQ_UPDATE SQ_VERSION VM_MAJOR VM_MINOR VM_RELEASE VM_VERSION imgdir expanded_relative_imgdir plgdir build build_cpu build_vendor build_os host host_cpu host_vendor host_os SET_MAKE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT WFLAGS AS RANLIB ac_ct_RANLIB INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN CPP EGREP SED LN_S ECHO AR ac_ct_AR STRIP ac_ct_STRIP CXX CXXFLAGS ac_ct_CXX CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL INCLUDES HAVE_INTERP_H ALLOCA INTERP AWK VM_APP_ICONS npsqueak install_nps uninstall_nps SQ_LIBDIR int_modules ext_modules HAVE_LANGINFO_CODESET HAVE_NANOSLEEP X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS X_CPPFLAGS X_INCLUDES LIBM_CFLAGS LIB_UUID int_plugins ext_plugins LIBOBJS LTLIBOBJS'
+ac_subst_vars='NM LD SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS cogit topdir cfgdir vmmdir vmpdir vmmcfg blddir SQ_MAJOR SQ_MINOR SQ_UPDATE SQ_VERSION VM_MAJOR VM_MINOR VM_RELEASE VM_VERSION imgdir expanded_relative_imgdir plgdir build build_cpu build_vendor build_os host host_cpu host_vendor host_os SET_MAKE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT WFLAGS AS RANLIB ac_ct_RANLIB INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN CPP EGREP SED LN_S ECHO AR ac_ct_AR STRIP ac_ct_STRIP CXX CXXFLAGS ac_ct_CXX CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL INCLUDES HAVE_INTERP_H ALLOCA INTERP AWK VM_APP_ICONS npsqueak install_nps uninstall_nps SQ_LIBDIR int_modules ext_modules HAVE_LANGINFO_CODESET HAVE_NANOSLEEP X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS X_CPPFLAGS X_INCLUDES BITBLT_OBJS LIBM_CFLAGS IA32ABI_OBJS LIB_UUID int_plugins ext_plugins LIBOBJS LTLIBOBJS'
 ac_subst_files='make_cfg make_int make_ext make_prg Makefile_install Makefile_dist Makefile_rpm Makefile_deb'
 
 # Initialize some variables set by options.
@@ -27694,6 +27694,26 @@
   done
   echo ${llibs} > ${plugin}.lib
 fi
+plugin="BitBltPlugin"
+plibs=""
+rm -f BitBltPlugin.sub BitBltPlugin.lib
+case $host_cpu in
+arm*)
+bitblt_objs="BitBltPlugin$o BitBltArm$o BitBltArmLinux$o BitBltArmOther$o BitBltArmSimd$o BitBltDispatch$o BitBltGeneric$o BitBltArmSimdAlphaBlend$o BitBltArmSimdBitLogical$o BitBltArmSimdPixPaint$o BitBltArmSimdSourceWord$o"
+;;
+*)
+bitblt_objs="BitBltPlugin.o"
+esac
+
+BITBLT_OBJS=$bitblt_objs
+
+if test "${plibs}"; then
+  llibs="${LIBS}"
+  for l in ${plibs}; do
+  llibs="${llibs} -l${l}"
+  done
+  echo ${llibs} > ${plugin}.lib
+fi
 plugin="FloatMathPlugin"
 plibs=""
 rm -f FloatMathPlugin.sub FloatMathPlugin.lib
@@ -27719,6 +27739,26 @@
   done
   echo ${llibs} > ${plugin}.lib
 fi
+plugin="IA32ABI"
+plibs=""
+rm -f IA32ABI.sub IA32ABI.lib
+ia32abi_objs="IA32ABI.o AlienSUnitTestProcedures.o ia32abicc.o"
+
+case $host_cpu in
+powerpc|ppc)
+ia32abi_objs="IA32ABI.o AlienSUnitTestProcedures.o ppcia32abicc.o"
+;;
+esac
+
+IA32ABI_OBJS=$ia32abi_objs
+
+if test "${plibs}"; then
+  llibs="${LIBS}"
+  for l in ${plibs}; do
+  llibs="${llibs} -l${l}"
+  done
+  echo ${llibs} > ${plugin}.lib
+fi
 plugin="MIDIPlugin"
 plibs=""
 rm -f MIDIPlugin.sub MIDIPlugin.lib
@@ -29475,7 +29515,9 @@
 s, at X_EXTRA_LIBS@,$X_EXTRA_LIBS,;t t
 s, at X_CPPFLAGS@,$X_CPPFLAGS,;t t
 s, at X_INCLUDES@,$X_INCLUDES,;t t
+s, at BITBLT_OBJS@,$BITBLT_OBJS,;t t
 s, at LIBM_CFLAGS@,$LIBM_CFLAGS,;t t
+s, at IA32ABI_OBJS@,$IA32ABI_OBJS,;t t
 s, at LIB_UUID@,$LIB_UUID,;t t
 s, at int_plugins@,$int_plugins,;t t
 s, at ext_plugins@,$ext_plugins,;t t

Modified: branches/Cog/platforms/unix/config/make.cfg.in
===================================================================
--- branches/Cog/platforms/unix/config/make.cfg.in	2014-10-03 20:44:16 UTC (rev 3094)
+++ branches/Cog/platforms/unix/config/make.cfg.in	2014-10-03 21:49:26 UTC (rev 3095)
@@ -91,6 +91,8 @@
 WFLAGS=		@WFLAGS@
 LDFLAGS=	@LDFLAGS@
 SOFLAGS=	@SOFLAGS@
+BITBLT_OBJS=	@BITBLT_OBJS@
+IA32ABI_OBJS=	@IA32ABI_OBJS@
 LIBM_CFLAGS=	@LIBM_CFLAGS@
 
 LIBS=		@LIBS@

Modified: branches/Cog/platforms/unix/config/mkmf
===================================================================
--- branches/Cog/platforms/unix/config/mkmf	2014-10-03 20:44:16 UTC (rev 3094)
+++ branches/Cog/platforms/unix/config/mkmf	2014-10-03 21:49:26 UTC (rev 3095)
@@ -111,16 +111,16 @@
     # in the platform plugin dir)
     echo "" > ${objs}
     for c in ${srcs}; do
-      o=`basename ${c} | sed 's,\.cp*,$o,;s,\.m,$o,;s,\.S,$o,;s,\.s,$o,'`
+      o=`basename ${c} | sed 's,\.cp*,$o,;s,\.[msS],$o,'`
       grep -qs "^$o$" ${excluded} || grep -qs "^$o$" ${objs} || targets="${targets} ${o}"
       echo "$o" >>${objs}
-      echo												               >> ${make_targets}
-      echo "${o} : ${c}"								            >> ${make_targets}
+      echo												>> ${make_targets}
+      echo "${o} : ${c}"								>> ${make_targets}
       case ${c} in
         *.cpp|*.cc)	echo '	$(COMPILE.cpp) '"${o} ${c}"	>> ${make_targets}
 					makefile_plg=Makefile.cpp-plg.in;;
-        *.s|*.S)	   echo '	$(AS) '"${o} ${c}"	         >> ${make_targets};;
-        *)		      echo '	$(COMPILE) '"${o} ${c}"			>> ${make_targets}
+        *.s|*.S)	echo '	$(AS) '"${o} ${c}"	        >> ${make_targets};;
+        *)		echo '	$(COMPILE) '"${o} ${c}"			>> ${make_targets}
       esac
     done
     rm -f ${objs} ${excluded}

Added: branches/Cog/platforms/unix/plugins/BitBltPlugin/Makefile.inc
===================================================================
--- branches/Cog/platforms/unix/plugins/BitBltPlugin/Makefile.inc	                        (rev 0)
+++ branches/Cog/platforms/unix/plugins/BitBltPlugin/Makefile.inc	2014-10-03 21:49:26 UTC (rev 3095)
@@ -0,0 +1 @@
+OBJS = $(BITBLT_OBJS)

Added: branches/Cog/platforms/unix/plugins/BitBltPlugin/acinclude.m4
===================================================================
--- branches/Cog/platforms/unix/plugins/BitBltPlugin/acinclude.m4	                        (rev 0)
+++ branches/Cog/platforms/unix/plugins/BitBltPlugin/acinclude.m4	2014-10-03 21:49:26 UTC (rev 3095)
@@ -0,0 +1,9 @@
+case $host_cpu in
+arm*)
+bitblt_objs="BitBltPlugin$o BitBltArm$o BitBltArmLinux$o BitBltArmOther$o BitBltArmSimd$o BitBltDispatch$o BitBltGeneric$o BitBltArmSimdAlphaBlend$o BitBltArmSimdBitLogical$o BitBltArmSimdPixPaint$o BitBltArmSimdSourceWord$o"
+;;
+*)
+bitblt_objs="BitBltPlugin.o"
+esac
+
+AC_SUBST(BITBLT_OBJS, $bitblt_objs)

Added: branches/Cog/platforms/unix/plugins/IA32ABI/Makefile.inc
===================================================================
--- branches/Cog/platforms/unix/plugins/IA32ABI/Makefile.inc	                        (rev 0)
+++ branches/Cog/platforms/unix/plugins/IA32ABI/Makefile.inc	2014-10-03 21:49:26 UTC (rev 3095)
@@ -0,0 +1 @@
+OBJS = $(IA32ABI_OBJS)

Added: branches/Cog/platforms/unix/plugins/IA32ABI/acinclude.m4
===================================================================
--- branches/Cog/platforms/unix/plugins/IA32ABI/acinclude.m4	                        (rev 0)
+++ branches/Cog/platforms/unix/plugins/IA32ABI/acinclude.m4	2014-10-03 21:49:26 UTC (rev 3095)
@@ -0,0 +1,11 @@
+ia32abi_objs="IA32ABI.o AlienSUnitTestProcedures.o"
+
+case $host_cpu in
+ia32abi_objs="IA32ABI.o AlienSUnitTestProcedures.o ia32abicc.o"
+;;
+powerpc|ppc)
+ia32abi_objs="IA32ABI.o AlienSUnitTestProcedures.o ppcia32abicc.o"
+;;
+esac
+
+AC_SUBST(IA32ABI_OBJS, $ia32abi_objs)



More information about the Vm-dev mailing list