- Use PY_CFLAGS when compile modules that will be part of the interpreter.
- Put shared modules in the same place as object files.
diff --git a/Modules/makesetup b/Modules/makesetup
index 7f231a9..dcb19b0 100755
--- a/Modules/makesetup
+++ b/Modules/makesetup
@@ -216,9 +216,11 @@
 			*) src='$(srcdir)/'"$srcdir/$src";;
 			esac
 			case $doconfig in
-			no)	cc="$cc \$(CCSHARED)";;
+			no)	cc="$cc \$(CCSHARED) \$(CFLAGS)";;
+			*)
+				cc="$cc \$(PY_CFLAGS)";;
 			esac
-			rule="$obj: $src; $cc $cpps \$(CFLAGS) -c $src -o $obj"
+			rule="$obj: $src; $cc $cpps -c $src -o $obj"
 			echo "$rule" >>$rulesf
 		done
 		case $doconfig in
@@ -230,7 +232,7 @@
 			*$mod.o*)	base=$mod;;
 			*)		base=${mod}module;;
 			esac
-			file="$base\$(SO)"
+			file="$srcdir/$base\$(SO)"
 			case $doconfig in
 			no)	SHAREDMODS="$SHAREDMODS $file";;
 			esac