Witam

Właśnie mi się udało wysmażyć, jeszcze gorący :)

Zmiany:

a) patch qboosha uproszczony i przerobiony do wersji 9.4.3
b) dodany dodatkowy pakiet icon-ipl zawierający wszystko co potrzebne
developerowi (czyli źródła funkcji, programy, pakiety i tak dalej - tego
mi zawsze brakowało w PLD i zawsze ściągałem z Arizony). Nie dołączałem
ipl dla mt-icona.

Pewnie zgodnie z duchem PLD icon-ipl powinien być podzielony na co
najmniej trzynaście pakietów ale stwierdziłem, że jeśli komuś jest
potrzebny IPL to raczej w całości :)

Może ktoś zerknąć okiem?

Tak przy okazji - jak zbudować jednym specem dwie wersje pakietu (z
grafiką i bez)? Bo w rzeczywistości powinny być icon-nox i icon - tak mi
się wydaje, bo np. po co komu na serwerze libX11?

ethanak
# $Revision: 1.8 $, $Date: 2007/02/13 08:06:35 $
#
%bcond_without  x       # without X11 graphics support
#
Summary:        Icon programming language
Summary(pl.UTF-8):      Język programowania Icon
Name:           icon
Version:        9.4.3
%define sver    %(echo %{version} | tr -d .)
Release:        1
License:        Public Domain (see README)
Group:          Development/Languages
Source0:        
http://www.cs.arizona.edu/icon/ftp/packages/unix/%{name}.v%{sver}src.tgz
# Source0-md5:  4740b1fc5caf2fe7409367923dffe607
Patch0:         %{name}-native-Xpm.patch
URL:            http://www.cs.arizona.edu/icon/
%if %{with x}
BuildRequires:  xorg-lib-libXt-devel
BuildRequires:  xorg-lib-libXpm-devel
%endif
BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)

%description
Icon is a very high level general-purpose programming language with
extensive features for processing strings (text) and data structures.
Icon is an imperative, procedural language with a syntax that is
reminiscent of C and Pascal, but with semantics at a much higher
level.

%description -l pl.UTF-8
Icon to język programowania ogólnego przeznaczenia bardzo wysokiego
poziomu z dużymi możliwościami przetwarzania łańcuchów (tekstu) i
struktur danych. Icon jest imperatywnym, proceduralnym językiem ze
składnią przypominającą C i Pascala, ale z semantyką na dużo wyższym
poziomie.

%package ipl
Summary: Icon Program Library
Summary(pl.UTF-8): Biblioteka Programów Icona
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}

%description ipl
Icon Program Library.

%description ipl -l pl.UTF-8
Biblioteka Programów Icona.

%prep
%setup -q -n %{name}.v%{sver}src
%patch0 -p1

%build
%{__make} %{?with_x:X-}Configure \
        name=linux

%{__make} \
        CC="%{__cc}" \
        CFLAGS="%{rpmcflags}" \
        XLIBS="-L/usr/X11R6/%{_lib} -lX11"

%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/icon/{bin,lib},\
%{_datadir}/icon/ipl/{cfuncs,data,docs,incl,progs,procs,\
gdata,gdocs,gprocs,gprogs,gincl,packs/{euler,ibpag2,\
idol,itweak,loadfunc,skeem,tcll1},gpacks/{carpets,drawtree,ged,htetris,\
tiger,vib,weaving,xtiles}}}

install bin/* $RPM_BUILD_ROOT%{_libdir}/icon/bin
install lib/* $RPM_BUILD_ROOT%{_libdir}/icon/lib

for d in data docs incl progs procs gdata gdocs gincl gprogs gprocs; do
        install ipl/$d/* $RPM_BUILD_ROOT%{_datadir}/icon/ipl/$d
done

install ipl/README $RPM_BUILD_ROOT%{_datadir}/icon/ipl
install ipl/packs/README $RPM_BUILD_ROOT%{_datadir}/icon/ipl/packs
install ipl/gpacks/README $RPM_BUILD_ROOT%{_datadir}/icon/ipl/gpacks

for d in euler ibpag2 idol itweak loadfunc skeem tcll1 ; do
        install ipl/packs/$d/* $RPM_BUILD_ROOT%{_datadir}/icon/ipl/packs/$d
done

for d in carpets drawtree ged htetris tiger vib weaving xtiles ; do
        install ipl/gpacks/$d/* $RPM_BUILD_ROOT%{_datadir}/icon/ipl/gpacks/$d
done

install ipl/cfuncs/README ipl/cfuncs/*.c ipl/cfuncs/Makefile ipl/cfuncs/*.icn \
        ipl/cfuncs/*.sh $RPM_BUILD_ROOT%{_datadir}/icon/ipl/cfuncs
        
for f in icon icont iconx vib ; do
        ln -sf %{_libdir}/icon/bin/$f $RPM_BUILD_ROOT%{_bindir}/$f
done

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(644,root,root,755)
%doc README doc/*.{txt,htm,css,gif,jpg}
%attr(755,root,root) %{_bindir}/*
%dir %{_libdir}/icon
%dir %{_libdir}/icon/bin
%attr(755,root,root) %{_libdir}/icon/bin/[!r]*
%attr(755,root,root) %{_libdir}/icon/bin/rtt
%{_libdir}/icon/bin/rt.h
%{_libdir}/icon/lib

%files ipl
%defattr(644,root,root,755)
%dir %{_datadir}/icon
%dir %{_datadir}/icon/ipl
%{_datadir}/icon/ipl/*

%define date    %(echo `LC_ALL="C" date +"%a %b %d %Y"`)
%changelog
* %{date} PLD Team <[EMAIL PROTECTED]>
All persons listed below can be reached at <cvs_login>@pld-linux.org

$Log: icon.spec,v $
Revision 1.8  2007/02/13 08:06:35  glen
- tabs in preamble

Revision 1.7  2007/02/12 00:48:56  baggins
- converted to UTF-8

Revision 1.6  2006/08/08 14:38:10  sparky
- mass attack: s/%patch /%patch0 / -- usefull for overloaded %patch macro

Revision 1.5  2004/01/24 18:33:24  undefine
- fix build on amd64, release 2

Revision 1.4  2004/01/21 22:29:08  qboosh
- new-style bcond

Revision 1.3  2003/05/28 12:59:08  malekith
- massive attack: source-md5

Revision 1.2  2003/05/25 05:48:49  misi3k
- massive attack s/pld.org.pl/pld-linux.org/

Revision 1.1  2002/12/28 16:26:08  qboosh
- new, patched to use system libXpm
diff -urN icon.v943src.orig/config/setup.sh icon.v943src/config/setup.sh
--- icon.v943src.orig/config/setup.sh	2003-12-20 18:29:00.000000000 +0100
+++ icon.v943src/config/setup.sh	2007-04-23 09:21:27.825655466 +0200
@@ -12,7 +12,7 @@
 
 # check parameters
 case "$GPX" in
-   Graphics)	XL='-L../../bin -lIgpx $(XLIBS)';;
+   Graphics)	XL='-lXpm $(XLIBS)';;
    NoGraphics)	XL= ;;
    *)		echo "$USAGE" 1>&2; exit 1;;
 esac
diff -urN icon.v943src.orig/src/common/Makefile icon.v943src/src/common/Makefile
--- icon.v943src.orig/src/common/Makefile	2003-07-05 19:30:35.000000000 +0200
+++ icon.v943src/src/common/Makefile	2007-04-23 09:10:48.149618946 +0200
@@ -18,8 +18,6 @@
 		-if [ "x$(XL)" != "x" ]; then $(MAKE) $(GDIR); fi
 
 xpm:
-		cd ../xpm; $(MAKE) libXpm.a
-		cp -p ../xpm/libXpm.a ../../bin/libIgpx.a
 
 wincap:		
 		cd ../wincap; $(MAKE) libWincap.a
diff -urN icon.v943src.orig/src/common/xwindow.c icon.v943src/src/common/xwindow.c
--- icon.v943src.orig/src/common/xwindow.c	2002-04-12 02:48:44.000000000 +0200
+++ icon.v943src/src/common/xwindow.c	2007-04-23 09:11:30.176730517 +0200
@@ -11,7 +11,7 @@
 } stringint, *siptr;
 
 #ifdef XpmFormat
-   #include "../xpm/xpm.h"
+   #include <X11/xpm.h>
 #else					/* XpmFormat */
    #include <X11/Xlib.h>
    #include <X11/Xutil.h>
diff -urN icon.v943src.orig/src/h/sys.h icon.v943src/src/h/sys.h
--- icon.v943src.orig/src/h/sys.h	2002-08-09 01:15:33.000000000 +0200
+++ icon.v943src/src/h/sys.h	2007-04-23 09:10:23.411319152 +0200
@@ -58,7 +58,7 @@
  */
 #ifdef XWindows
    #ifdef HaveXpmFormat
-      #include "../xpm/xpm.h"
+      #include <X11/xpm.h>
    #else				/* HaveXpmFormat */
       #include <X11/Xlib.h>
    #endif				/* HaveXpmFormat */
diff -urN icon.v943src.orig/src/iconc/ccomp.c icon.v943src/src/iconc/ccomp.c
--- icon.v943src.orig/src/iconc/ccomp.c	2002-08-09 00:01:49.000000000 +0200
+++ icon.v943src/src/iconc/ccomp.c	2007-04-23 09:23:02.239166641 +0200
@@ -75,9 +75,7 @@
       }
 
 #ifdef Graphics
-   lib_sz += strlen(" -L") +
-             strlen(refpath) +
-	     strlen(" -lIgpx ");
+   lib_sz += strlen(" -lXpm ");
    lib_sz += strlen(ICONC_XLIB);
 #endif					/* Graphics */
 
@@ -109,9 +107,7 @@
       }
 
 #ifdef Graphics
-   strcpy(s," -L");
-   strcat(s, refpath);
-   strcat(s," -lIgpx ");
+   strcpy(s," -lXpm ");
    strcat(s, ICONC_XLIB);
    s += strlen(s);
 #endif					/* Graphics */
_______________________________________________
pld-devel-pl mailing list
pld-devel-pl@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-devel-pl

Odpowiedź listem elektroniczym