[mingw-filesystem: 8/73] - Rewrite mingw32-scripts to run in the current shell - (Re-add mingw32-make) - Removed by RWMJ. - A
Kalev Lember
kalev at fedoraproject.org
Thu Feb 23 19:13:18 UTC 2012
commit 1ea30e613c918c23971ce46ea937e87108a39522
Author: Richard W.M. Jones <rjones at fedoraproject.org>
Date: Sat Dec 6 14:33:41 2008 +0000
- Rewrite mingw32-scripts to run in the current shell
- (Re-add mingw32-make) - Removed by RWMJ.
- Add mingw32-env to mingw32.sh
mingw32-filesystem.spec | 20 ++++++++++-----
mingw32-macros.mingw32 | 61 ++++++++++++++++++++++++++++++-----------------
mingw32-scripts.sh | 8 ++----
mingw32.sh | 2 +
4 files changed, 57 insertions(+), 34 deletions(-)
---
diff --git a/mingw32-filesystem.spec b/mingw32-filesystem.spec
index 755f104..20b88e0 100644
--- a/mingw32-filesystem.spec
+++ b/mingw32-filesystem.spec
@@ -1,8 +1,8 @@
%define debug_package %{nil}
Name: mingw32-filesystem
-Version: 39
-Release: 3%{?dist}
+Version: 40
+Release: 2%{?dist}
Summary: MinGW base filesystem and environment
Group: Development/Libraries
@@ -13,7 +13,7 @@ BuildArch: noarch
Source0: mingw32-COPYING
Source1: mingw32-macros.mingw32
-#Source2: mingw32.sh
+Source2: mingw32.sh
#Source3: mingw32.csh
Source4: mingw32-find-requires.sh
Source5: mingw32-find-provides.sh
@@ -75,13 +75,14 @@ install -m 755 %{SOURCE6} $RPM_BUILD_ROOT%{_libexecdir}/mingw32-scripts
mkdir -p $RPM_BUILD_ROOT%{_bindir}
pushd $RPM_BUILD_ROOT%{_bindir}
-for i in mingw32-configure; do
+for i in mingw32-configure ; do
ln -s %{_libexecdir}/mingw32-scripts $i
done
popd
-#mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
-#install -m 644 %{SOURCE2} %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/profile.d/
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
+install -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/profile.d/
+#install -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/profile.d/
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/rpm
install -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros.mingw32
@@ -133,7 +134,7 @@ rm -rf $RPM_BUILD_ROOT
%defattr(-,root,root,-)
%doc COPYING
%config(noreplace) %{_sysconfdir}/rpm/macros.mingw32
-#%config(noreplace) %{_sysconfdir}/profile.d/mingw32.sh
+%config(noreplace) %{_sysconfdir}/profile.d/mingw32.sh
#%config(noreplace) %{_sysconfdir}/profile.d/mingw32.csh
%{_bindir}/mingw32-configure
%{_libexecdir}/mingw32-scripts
@@ -142,6 +143,11 @@ rm -rf $RPM_BUILD_ROOT
%changelog
+* Sat Dec 6 2008 Levente Farkas <lfarkas at lfarkas.org> - 40-2
+- Rewrite mingw32-scripts to run in the current shell
+- (Re-add mingw32-make) - Removed by RWMJ.
+- Add mingw32-env to mingw32.sh
+
* Mon Nov 24 2008 Richard W.M. Jones <rjones at redhat.com> - 39-3
- Unify mingw32-filesystem packages from all three branches again, and test.
- Fix mingw32-scripts so it can handle extra parameters correctly.
diff --git a/mingw32-macros.mingw32 b/mingw32-macros.mingw32
index 87e34ea..ada3b08 100644
--- a/mingw32-macros.mingw32
+++ b/mingw32-macros.mingw32
@@ -1,7 +1,9 @@
# RPM macros for Fedora MinGW.
+%_mingw32_target i686-pc-mingw32
+
# Paths.
-%_mingw32_sysroot %{_prefix}/i686-pc-mingw32/sys-root
+%_mingw32_sysroot %{_prefix}/%{_mingw32_target}/sys-root
%_mingw32_prefix %{_mingw32_sysroot}/mingw
%_mingw32_exec_prefix %{_mingw32_prefix}
%_mingw32_bindir %{_mingw32_exec_prefix}/bin
@@ -18,22 +20,33 @@
%_mingw32_includedir %{_mingw32_prefix}/include
# Build macros.
-%_mingw32_host i686-pc-mingw32
-%_mingw32_target i686-pc-mingw32
+%_mingw32_host %{_mingw32_target}
%_mingw32_cflags -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -mms-bitfields
-%_mingw32_cc i686-pc-mingw32-gcc
-%_mingw32_cpp i686-pc-mingw32-gcc -E
-%_mingw32_ar i686-pc-mingw32-ar
-%_mingw32_as i686-pc-mingw32-as
-%_mingw32_dlltool i686-pc-mingw32-dlltool
-%_mingw32_ranlib i686-pc-mingw32-ranlib
-%_mingw32_strip i686-pc-mingw32-strip
-%_mingw32_objdump i686-pc-mingw32-objdump
-%_mingw32_nm i686-pc-mingw32-nm
-%_mingw32_windres i686-pc-mingw32-windres
-%_mingw32_cxx i686-pc-mingw32-g++
+%_mingw32_cc %{_mingw32_target}-gcc
+%_mingw32_cxx %{_mingw32_target}-g++
+%_mingw32_cpp %{_mingw32_target}-gcc -E
+%_mingw32_addr2line %{_mingw32_target}-addr2line
+%_mingw32_ar %{_mingw32_target}-ar
+%_mingw32_as %{_mingw32_target}-as
+%_mingw32_c++ %{_mingw32_target}-c++
+%_mingw32_c++filt %{_mingw32_target}-c++filt
+%_mingw32_dlltool %{_mingw32_target}-dlltool
+%_mingw32_dllwrap %{_mingw32_target}-dllwrap
+%_mingw32_gcov %{_mingw32_target}-gcov
+%_mingw32_gprof %{_mingw32_target}-gprof
+%_mingw32_ld %{_mingw32_target}-ld
+%_mingw32_nm %{_mingw32_target}-nm
+%_mingw32_objcopy %{_mingw32_target}-objcopy
+%_mingw32_objdump %{_mingw32_target}-objdump
+%_mingw32_ranlib %{_mingw32_target}-ranlib
+%_mingw32_readelf %{_mingw32_target}-readelf
+%_mingw32_size %{_mingw32_target}-size
+%_mingw32_strings %{_mingw32_target}-strings
+%_mingw32_strip %{_mingw32_target}-strip
+%_mingw32_windmc %{_mingw32_target}-windmc
+%_mingw32_windres %{_mingw32_target}-windres
%_mingw32_cache mingw32-config.cache
@@ -41,19 +54,23 @@
%_mingw32_findrequires /usr/lib/rpm/mingw32-find-requires.sh
%_mingw32_env HOST_CC=gcc; export HOST_CC; \
- AS="%{_mingw32_as}"; export AS; \
- AR="%{_mingw32_ar}"; export AR; \
- NM="%{_mingw32_nm}"; export NM; \
- OBJDUMP="%{_mingw32_objdump}"; export OBJDUMP; \
PKG_CONFIG_PATH="%{_mingw32_libdir}/pkgconfig"; export PKG_CONFIG_PATH; \
CC="${MINGW32_CC:-%_mingw32_cc}"; export CC; \
CXX="${MINGW32_CXX:-%_mingw32_cxx}"; export CXX; \
CFLAGS="${MINGW32_CFLAGS:-%_mingw32_cflags}"; export CFLAGS; \
CXXFLAGS="${MINGW32_CXXFLAGS:-%_mingw32_cflags}"; export CXXFLAGS; \
- for i in `ls %{_mingw32_bindir}|grep -- "-config\$"` ; do \
- CONFIG_NAME=`echo $i|tr "a-z-" "A-Z_"`; \
- declare -x $CONFIG_NAME="%{_mingw32_bindir}/$i" ; export $CONFIG_NAME; \
- done
+ _PREFIX="%{_bindir}/%{_mingw32_target}-"; \
+ for i in `ls ${_PREFIX}*|egrep -v "gcc-"`; do \
+ x=`echo $i|sed "s,${_PREFIX},,"|tr "a-z+-" "A-ZX_"`; \
+ declare -x $x="$i" ; export $x; \
+ done; \
+ unset _PREFIX; \
+ for i in `ls %{_mingw32_bindir}/*|grep -- "-config\$"` ; do \
+ x=`basename $i|tr "a-z+-" "A-ZX_"`; \
+ declare -x $x="$i" ; export $x; \
+ done; \
+ unset x i
+
%_mingw32_configure %{_mingw32_env} ; \
./configure --cache-file=%{_mingw32_cache} \\\
diff --git a/mingw32-scripts.sh b/mingw32-scripts.sh
index 4362ed3..24af47a 100755
--- a/mingw32-scripts.sh
+++ b/mingw32-scripts.sh
@@ -1,6 +1,6 @@
#!/bin/sh -
-# mingw32-configure
+# mingw32-scripts
# Copyright (C) 2008 Red Hat Inc., Richard W.M. Jones.
# Copyright (C) 2008 Levente Farkas
#
@@ -21,7 +21,5 @@
# This is a useful command-line script through which one can use the
# macros from mingw32-macros.mingw32 cross-compilation.
-# XXX This doesn't handle quoting of extra parameters which contain
-# spaces correctly.
-
-rpm --eval "%{_"`basename $0|tr "-" "_"`"} $@"|sh
+NAME="_`basename $0|tr -- - _`"
+eval "`rpm --eval "%{$NAME}"`" "$@"
diff --git a/mingw32.sh b/mingw32.sh
index 89d8b66..94e4dec 100644
--- a/mingw32.sh
+++ b/mingw32.sh
@@ -1 +1,3 @@
# Environment variables for MinGW.
+
+alias mingw32-env='eval `rpm --eval %{_mingw32_env}`'
More information about the scm-commits
mailing list