From 13c912a9cececc36dca004aafa5e4164a63071cc Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Mon, 1 Jul 2013 11:53:54 -0500 Subject: Build only widechar libraries --- cygwin-ncurses.spec | 198 +++++++++++++++++++++++++--------------------------- 1 file changed, 94 insertions(+), 104 deletions(-) diff --git a/cygwin-ncurses.spec b/cygwin-ncurses.spec index 3d476ca..02bf712 100644 --- a/cygwin-ncurses.spec +++ b/cygwin-ncurses.spec @@ -1,18 +1,16 @@ -%global __strip %{_cygwin_strip} -%global __objdump %{_cygwin_objdump} -%global _use_internal_dependency_generator 0 -%global __find_requires %{_cygwin_findrequires} -%global __find_provides %{_cygwin_findprovides} +%{?cygwin_package_header} + +# built separately due to mismatched versions +%global cygwin_build_64bit 0 Name: cygwin-ncurses Version: 5.7 -Release: 1 +Release: 2 Summary: Ncurses library for Cygwin toolchain Group: Development/Libraries License: MIT URL: http://invisible-island.net/ncurses/ -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch Source0: ftp://invisible-island.net/ncurses/ncurses-%{version}.tar.gz @@ -25,21 +23,30 @@ Patch5: ftp://invisible-island.net/ncurses/%{version}/ncurses-%{version}-2009 Patch6: ftp://invisible-island.net/ncurses/%{version}/ncurses-%{version}-20091219.patch.gz Patch7: ftp://invisible-island.net/ncurses/%{version}/ncurses-%{version}-20091226.patch.gz Patch8: ftp://invisible-island.net/ncurses/%{version}/ncurses-%{version}-20091227.patch.gz -Patch9: ncurses-5.7-17.extra.patch -Patch10: ncurses-5.7-18.src.patch - +Patch100: ncurses-5.7-17.extra.patch +Patch101: ncurses-5.7-18.src.patch -BuildRequires: autoconf automake cygwin-libtool -BuildRequires: cygwin-filesystem -BuildRequires: cygwin-binutils -BuildRequires: cygwin-gcc -BuildRequires: cygwin-gcc-c++ -BuildRequires: cygwin -BuildRequires: gcc +BuildRequires: cygwin32-filesystem +BuildRequires: cygwin32-binutils +BuildRequires: cygwin32-gcc +BuildRequires: cygwin32-gcc-c++ +BuildRequires: cygwin32-libtool +BuildRequires: cygwin32 %description -Ncurses library for Cygwin toolchain +Ncurses library for Cygwin toolchains + +%package -n cygwin32-ncurses +Summary: Ncurses library for Cygwin toolchain +Group: Development/Libraries +Provides: %{name} = %{version}-%{release} +Obsoletes: %{name} < %{version}-%{release} + +%description -n cygwin32-ncurses +Ncurses library for Cygwin i686 toolchain + +%{?cygwin_debug_package} %prep @@ -53,36 +60,15 @@ Ncurses library for Cygwin toolchain %patch6 -p1 %patch7 -p1 %patch8 -p1 -%patch9 -p2 -%patch10 -p2 +%patch100 -p2 +%patch101 -p2 %build -mkdir -p build-narrowc -pushd build-narrowc -%{_cygwin_configure} --with-libtool=%{_bindir}/%{_cygwin_target}-libtool \ - --includedir=%{_cygwin_includedir}/ncurses \ - --with-install-prefix=$RPM_BUILD_ROOT \ - --without-debug --disable-relink --disable-rpath \ - --with-ticlib --without-termlib \ - --enable-ext-mouse --enable-sp-funcs --enable-reentrant \ - --with-abi-version=10 --with-wrap-prefix=ncwrap_ \ - --enable-sigwinch --enable-colorfgbg --enable-tcap-names \ - --disable-termcap --disable-mixed-case --enable-symlinks \ - --with-pkg-config --enable-pc-files \ - --with-manpage-format=normal --with-manpage-aliases \ - --with-default-terminfo-dir=/usr/share/terminfo \ - --enable-echo - -sed -i -e 's%^\(LIBRARIES[ \t]*=\).*$%\1 ../lib/libncurses.la ../lib/libtic.la%' ncurses/Makefile -make -popd - -mkdir -p build-widec -pushd build-widec -%{_cygwin_configure} --with-libtool=%{_bindir}/%{_cygwin_target}-libtool \ +%cygwin32_configure \ --with-build-cflags=-D_XOPEN_SOURCE_EXTENDED \ - --includedir=%{_cygwin_includedir}/ncursesw \ + --with-libtool=%{_bindir}/%{cygwin32_target}-libtool \ + PKG_CONFIG_LIBDIR=%{cygwin32_libdir}/pkgconfig \ --with-install-prefix=$RPM_BUILD_ROOT \ --without-debug --disable-relink --disable-rpath \ --with-ticlib --without-termlib --enable-widec --enable-ext-colors \ @@ -97,80 +83,84 @@ pushd build-widec sed -i -e 's%^\(LIBRARIES[ \t]*=\).*$%\1 ../lib/libncursesw.la ../lib/libticw.la%' ncurses/Makefile make -popd %install -rm -rf $RPM_BUILD_ROOT - -pushd build-narrowc -make install.libs install.includes DESTDIR=$RPM_BUILD_ROOT -popd -pushd build-widec make install.libs install.includes DESTDIR=$RPM_BUILD_ROOT -popd -ln -s ncurses/curses.h $RPM_BUILD_ROOT%{_cygwin_includedir}/ncurses.h - -pushd $RPM_BUILD_ROOT/%{_cygwin_bindir} -mv ncurses10-config ncurses5-config +pushd $RPM_BUILD_ROOT%{cygwin32_bindir} mv ncursesw10-config ncursesw5-config -sed -i -e 's|echo "10"|echo "6"|' ncurses*5-config +ln -s ncursesw5-config ncurses5-config +sed -i -e 's|echo "10"|echo "6"|' ncursesw5-config popd -# We intentionally don't ship *.la files -rm -f $RPM_BUILD_ROOT%{_cygwin_libdir}/*.la +mkdir -p $RPM_BUILD_ROOT%{cygwin32_includedir}/ncurses{,w} +pushd $RPM_BUILD_ROOT%{cygwin32_includedir}/ncurses +ln -s ../*.h . +popd +pushd $RPM_BUILD_ROOT%{cygwin32_includedir}/ncursesw +ln -s ../*.h . +popd +pushd $RPM_BUILD_ROOT%{cygwin32_libdir} +for f in *.a +do + ln -s ${f} ${f/w/} +done -%clean -rm -rf $RPM_BUILD_ROOT +pushd $RPM_BUILD_ROOT%{cygwin32_libdir}/pkgconfig +for f in *.pc +do + ln -s ${f} ${f/w/} +done + +# We intentionally don't ship *.la files +find $RPM_BUILD_ROOT -name '*.la' -delete -%files -%defattr(-,root,root,-) +%files -n cygwin32-ncurses %doc ANNOUNCE AUTHORS NEWS README -%{_cygwin_bindir}/cygform-10.dll -%{_cygwin_bindir}/cygformw-10.dll -%{_cygwin_bindir}/cygmenu-10.dll -%{_cygwin_bindir}/cygmenuw-10.dll -%{_cygwin_bindir}/cygncurses-10.dll -%{_cygwin_bindir}/cygncursesw-10.dll -%{_cygwin_bindir}/cygncurses++-10.dll -%{_cygwin_bindir}/cygncurses++w-10.dll -%{_cygwin_bindir}/cygpanel-10.dll -%{_cygwin_bindir}/cygpanelw-10.dll -%{_cygwin_bindir}/cygtic-10.dll -%{_cygwin_bindir}/cygticw-10.dll -%{_cygwin_bindir}/ncurses5-config -%{_cygwin_bindir}/ncursesw5-config -%{_cygwin_includedir}/ncurses.h -%{_cygwin_includedir}/ncurses/ -%{_cygwin_includedir}/ncursesw/ -%{_cygwin_libdir}/libform.dll.a -%{_cygwin_libdir}/libformw.dll.a -%{_cygwin_libdir}/libmenu.dll.a -%{_cygwin_libdir}/libmenuw.dll.a -%{_cygwin_libdir}/libncurses.dll.a -%{_cygwin_libdir}/libncursesw.dll.a -%{_cygwin_libdir}/libncurses++.dll.a -%{_cygwin_libdir}/libncurses++w.dll.a -%{_cygwin_libdir}/libpanel.dll.a -%{_cygwin_libdir}/libpanelw.dll.a -%{_cygwin_libdir}/libtic.dll.a -%{_cygwin_libdir}/libticw.dll.a -%{_cygwin_libdir}/pkgconfig/form.pc -%{_cygwin_libdir}/pkgconfig/formw.pc -%{_cygwin_libdir}/pkgconfig/menu.pc -%{_cygwin_libdir}/pkgconfig/menuw.pc -%{_cygwin_libdir}/pkgconfig/ncurses.pc -%{_cygwin_libdir}/pkgconfig/ncursesw.pc -%{_cygwin_libdir}/pkgconfig/ncurses++.pc -%{_cygwin_libdir}/pkgconfig/ncurses++w.pc -%{_cygwin_libdir}/pkgconfig/panel.pc -%{_cygwin_libdir}/pkgconfig/panelw.pc -%{_cygwin_libdir}/pkgconfig/tic.pc -%{_cygwin_libdir}/pkgconfig/ticw.pc +%{cygwin32_bindir}/cygformw-10.dll +%{cygwin32_bindir}/cygmenuw-10.dll +%{cygwin32_bindir}/cygncursesw-10.dll +%{cygwin32_bindir}/cygncurses++w-10.dll +%{cygwin32_bindir}/cygpanelw-10.dll +%{cygwin32_bindir}/cygticw-10.dll +%{cygwin32_bindir}/ncurses5-config +%{cygwin32_bindir}/ncursesw5-config +%{cygwin32_includedir}/*.h +%{cygwin32_includedir}/ncurses/ +%{cygwin32_includedir}/ncursesw/ +%{cygwin32_libdir}/libform.dll.a +%{cygwin32_libdir}/libformw.dll.a +%{cygwin32_libdir}/libmenu.dll.a +%{cygwin32_libdir}/libmenuw.dll.a +%{cygwin32_libdir}/libncurses.dll.a +%{cygwin32_libdir}/libncursesw.dll.a +%{cygwin32_libdir}/libncurses++.dll.a +%{cygwin32_libdir}/libncurses++w.dll.a +%{cygwin32_libdir}/libpanel.dll.a +%{cygwin32_libdir}/libpanelw.dll.a +%{cygwin32_libdir}/libtic.dll.a +%{cygwin32_libdir}/libticw.dll.a +%{cygwin32_libdir}/pkgconfig/form.pc +%{cygwin32_libdir}/pkgconfig/formw.pc +%{cygwin32_libdir}/pkgconfig/menu.pc +%{cygwin32_libdir}/pkgconfig/menuw.pc +%{cygwin32_libdir}/pkgconfig/ncurses.pc +%{cygwin32_libdir}/pkgconfig/ncursesw.pc +%{cygwin32_libdir}/pkgconfig/ncurses++.pc +%{cygwin32_libdir}/pkgconfig/ncurses++w.pc +%{cygwin32_libdir}/pkgconfig/panel.pc +%{cygwin32_libdir}/pkgconfig/panelw.pc +%{cygwin32_libdir}/pkgconfig/tic.pc +%{cygwin32_libdir}/pkgconfig/ticw.pc + %changelog +* Mon Jul 01 2013 Yaakov Selkowitz - 5.7-2 +- Rebuild for new Cygwin packaging scheme. +- Build only widechar libraries. + * Thu Mar 22 2012 Yaakov Selkowitz - 5.7-1 - Initial RPM release. -- cgit