Commits

Anonymous committed d63a260

Michal's spec-file example repo

  • Participants
  • Parent commits a62e9e2

Comments (0)

Files changed (9)

File spec-files/.pkgtoolrc

+# tarballdirs [string]: colon (:) separated list of directories where source tarballs are searched for
+tarballdirs:   /sgnome/tarballs/gnome2.30:/sgnome/tarballs/gnome2.28:/sgnome/tarballs/gnome2.26:/sgnome/tarballs/gnome2.24:/sgnome/tarballs/gnome2.22:/sgnome/tarballs/gnome2.20:/sgnome/tarballs/gnome2.18:/sgnome/tarballs/gnome2.15:/sgnome/tarballs/gnome2.14:/sgnome/tarballs/moz-evo:${MYDIR}/manpages/sun-manpage-tarballs:${MYDIR}/manpages-roff/sun-manpage-tarballs:${MYDIR}/po-sun/po-sun-tarballs:${tarballdirs}:/jds/packages/SOURCES
+
+# logdir [string]: the directory for saving log files
+# logdir:	/tmp
+
+# patchdirs [string]: colon (:) separated list of directories where source patches are searched for
+patchdirs:	${MYDIR}/patches
+
+# specdirs [string]: colon (:) separated list of directories where spec files are searched for
+specdirs:	${MYDIR}:${MYDIR}/include:${MYDIR}/base-specs:${MYDIR}/indiana
+
+# sourcedirs [string]: colon (:) separated list of directories where extra sources (not tarballs) are searched for
+sourcedirs:	${MYDIR}/ext-sources:${MYDIR}/copyright

File spec-files/copyright/less.copyright

+Less copyright file...

File spec-files/include/Solaris.inc

+#
+# Macro definitions for Solaris packages
+#
+# Copyright 2008 Sun Microsystems, Inc.
+#
+
+%include prod.inc
+%include options.inc
+
+SUNW_Pkg_AllZones:         false
+SUNW_Pkg_Hollow:           false
+SUNW_Pkg_ThisZone:         false
+
+%define cc_is_gcc %(test "x`basename $CC`" = xgcc && echo 1 || echo 0)
+
+%define is_nevada %(test `uname -r` = 5.11 && echo 1 || echo 0)
+%define is_s10    %(test `uname -r` = 5.10 && echo 1 || echo 0)
+%define _patch_options --fuzz=0 --unified
+
+SUNW_Category:             %{default_category}
+SUNW_HotLine:              Please contact your local service provider
+SUNW_MaxInst:              1000
+SUNW_Rev:		   110.0.4.%(date +%Y.%m.%d.%H.%M)
+# no such file so this will break the build if the package
+# does not specify a copyright file:
+SUNW_Copyright:            error-no-copyright
+
+%define _libexecdir        %{_prefix}/lib
+%define _mandir		   %{_datadir}/man
+
+# by default we don't build optimised versions
+%define opt_sparcv9 0
+%define opt_amd64   0
+%define opt_sse2    0
+# opt_arch64 means opt_sparcv9 or opt_amd64
+%define opt_arch64  0
+# can_isaexec gets redefined to 1 if multiple isas are built
+%define can_isaexec 0
+%ifarch sparc
+%define base_isa sparcv7
+%define base_arch sparc
+%else
+%define base_isa i86
+%define base_arch i386
+%endif
+
+%if %option_with_gnu_iconv
+%define arch_ldadd -Wl,-zignore -R/usr/gnu/lib -lgnuintl -lgnuiconv
+%else
+%define arch_ldadd
+%endif
+%define ldadd
+
+%if %debug_build
+%define _ldflags           %arch_ldadd %ldadd ${EXTRA_LDFLAGS}
+%else
+%define _ldflags           %arch_ldadd %ldadd -Wl,-zignore -Wl,-zcombreloc -Wl,-Bdirect ${EXTRA_LDFLAGS}
+%endif
+
+%define gcc_picflags -fPIC -DPIC
+%define suncc_picflags -KPIC
+
+# ifarch doesn't support checking for sse2
+# this macros allows you to use %if %arch_sse2 instead
+%define arch_sse2 %(isainfo -x | grep sse2 > /dev/null && echo 1 || echo 0)
+
+# temporary, until all spec files are converted to the new multi-isa build
+# technique
+%ifarch amd64 sparcv9
+%include arch64.inc
+%endif
+
+%include base.inc
+
+%define _basedir           /usr
+%define _subdir            
+%define _prefix		   %{_basedir}
+%define _sysconfdir	   /etc
+%define _localstatedir	   /var
+%define _localedir	   %{_datadir}/locale
+%define _pkg_config_path   %{_libdir}/pkgconfig:%{_datadir}/pkgconfig
+
+# ChangeLog:
+# 2009-12-30  Halton Huo <halton.huo@sun.com>
+# - Remove cc_is_ssxx macros since we use ss12 always
+# 2008-10-29  Laszlo (Laca) Peter  <laca@sun.com>
+# - respect $CC when checking compiler version
+# 2008-04-18  Laszlo (Laca) Peter  <laca@sun.com>
+# - set default copyright to "error-no-copyright" which is not the name
+#   of a file, so it will break the build if a package has no copyright file
+# 2008-03-30  Laszlo (Laca) Peter  <laca@sun.com>
+# - define cc_is_ss11 and cc_is_ss12
+# 2007-09-28  Laszlo (Laca) Peter  <laca@sun.com>
+# - copy arch_ldadd definition from base.inc
+# 2007-09-27  Laszlo (Laca) Peter  <laca@sun.com>
+# - move configurable build options to options.inc and include
+#   options.inc
+# 2007-04-05  Laszlo (Laca) Peter  <laca@sun.com>
+# - fix _ldflags so that it includes the architecture specific flags
+# 2007-03-15  Laszlo (Laca) Peter  <laca@sun.com>
+# - move product specific tags and macros to prod.inc
+# - define can_isaexec, base_isa, base_arch
+# - define arch_sse2
+# - move 32-bit compiler flags to base.inc and include base.inc
+# - move 64-bit compiler flags to arch64.inc and include it temporarily,
+#   but it will not be needed once all spec files that build 64-bit are
+#   rewritten to the new style
+# 2007-01-28  Laszlo Peter  <laca@sun.com>
+# - define %is_s10
+# 2006-12-06  Damien Carbery  <damien.carbery@sun.com>
+# - Bump SUNW_ProdVers and default_pkg_version to 2.17.3.
+# 2006-11-23  Damien Carbery  <damien.carbery@sun.com>
+# - Bump SUNW_ProdVers and default_pkg_version to 2.17.1.
+# 2006-11-03  Laszlo Peter  <laca@sun.com>
+# - define %gtk_doc_option, lets the user disable building gtk-docs
+#   using --without-gtk-doc; also added comments about usage
+# 2006-10-03  Laszlo Peter  <laca@sun.com>
+# - define %_patch_options, this specifies extra options for gpatch when
+#   using pkgbuild 1.1.1 or later
+# 2006-10-03  Damien Carbery <damien.carbery@sun.com>
+# - Bump SUNW_ProdVers and default_pkg_version to 2.16.1.
+# 2006-09-18  Laszlo Peter  <laca@sun.com>
+# - define cxx_optflags64
+# 2006-08-23  Laszlo Peter  <laca@sun.com>
+# - define _localstatedir
+# 2006-06-02  Laszlo Peter  <laca@sun.com>
+# - add the date string back into REV
+# 2005-11-28  Laszlo Peter  <laca@sun.com>
+# - add -z combreloc and -Bdirect to the LDFLAGS
+# 2005-10-23  Laszlo Peter  <laca@sun.com>
+# - define debug_build (if --with-debug is used) and build_l10n
+#   (when --with-l10n is used)  build_l10n will disable building
+#   the l10n packages but needs changes in the spec files to work;
+#   debug_build is already functional: replaces the optimisation flags
+#   with -g and disables stripping the binaries. (Yay!)
+# 2005-10-14  Laszlo Peter  <laca@sun.com>
+# - define _ldflags
+# 2005-09-19  Laszlo Peter  <laca@sun.com>
+# - add -xregs=no%frameptr (Sun CC) or -fomit-frame-pointers (gcc)
+#   flags to enable dtrace get stack traces
+# 2005-09-17  Laszlo Peter  <laca@sum.com>
+# - define %picflags and add them to the gcc CFLAGS otherwise most things
+#   seem to break
+# 2005-09-16  Laszlo Peter  <laca@sun.com>
+# - define cc_is_gcc and define gcc specific compiler flags
+# 2005-09-15  Brian Cameron  <brian.cameron@sun.com>
+# - Backout debug lines I accidently committed to this file.
+# 2005-07-14  Laszlo Peter  <laca@sun.com>
+# - update product version to 2.10
+# 2004-11-01  Laszlo Peter  <laca@sun.com>
+# - temporarily removed -O for amd64 to stop gtk-demo crashing
+# 2004-10-13  Laszlo Peter  <laca@sun.com>
+# - defined _pkg_config_path64
+# 2004-10-02  Laszlo Peter  <laca@sun.com>
+# - defined jds_version
+# 2004-10-02  Joseph Townsend <jan@eng.sun.com>
+# - Create 64bit libraries for Solaris
+# 2004-08-12  Shirley Woo  <shirley.woo@sun.com>
+# - Updated SUNW_Category for G2.6 packages to 2.6.0
+# 2004-07-23  Laszlo Peter  <laca@sun.com>
+# - Changed default copyright notice to default-copyright.txt
+# - Prefixed REV with 9.7.2
+# 2004-06-26  Shirley Woo  <shirley.woo@sun.com>
+# - Changed install location to /usr/...
+# 2004-06-21  Laszlo Peter  <laca@sun.com>
+# - descrease C++ optimisation level to xO3
+# - define _pkg_config_path
+# 2004-05-03  Laszlo Peter  <laca@sun.com>
+# - define _basedir
+# 2004-04-14  Laszlo Peter  <laca@sun.com>
+# - change CATEGORY to GNOME2,application,JDS3
+# 2004-02-28  Laszlo Peter  <laca@sun.com>
+# - add -mr and -xtrconst options, -xpentium on intel.
+# - define cxx_optflags for CC compilation

File spec-files/include/arch64.inc

+#
+# 64-bit platform settings for Solaris packages
+#
+# Copyright 2007 Sun Microsystems, Inc.
+#
+# Solaris.inc must be included before this file
+
+%ifarch amd64 sparcv9
+
+%ifarch amd64
+%define _arch64 amd64
+%else
+%define _arch64 sparcv9
+%endif
+
+%define opt_sse2 0
+%define opt_arch64 1
+%define can_isaexec 1
+%define gtk_doc_option --disable-gtk-doc
+
+%if %option_with_gnu_iconv
+%define arch_ldadd -L%{_libdir} -R%{_libdir} -Wl,-zignore -R/usr/gnu/lib/%{_arch64} -lgnuintl -lgnuiconv
+%else
+%define arch_ldadd -L%{_libdir} -R%{_libdir}
+%endif
+
+%ifarch amd64
+%define opt_amd64 1
+%define bld_arch	"amd64"
+%else
+%define opt_sparcv9 1
+%define bld_arch	"sparcv9"
+%endif
+
+%if %debug_build
+%define pkgbuild_postprocess /bin/true
+%define _cc64_opt_level      -g
+%define _cxx64_opt_level     -g
+%define _gcc64_opt_level      -g
+%define _gxx64_opt_level     -g
+%else
+%define _gcc64_opt_level      -O3
+%define _gxx64_opt_level     -O3
+%define _cc64_opt_level      -xO4 -xspace
+%define _cxx64_opt_level     -xO3 -xspace
+%endif
+
+%ifarch sparc
+%define gcc_optflags64           %_gcc64_opt_level -mcpu=ultrasparc -m64 -Xlinker -i %gcc_picflags
+%define gcc_cxx_optflags64       %gcc_optflags64
+%endif
+
+%ifarch i386
+%define gcc_optflags64           %_gcc64_opt_level -march=opteron -m64 -Xlinker -i -fno-omit-frame-pointer %gcc_picflags
+%define gcc_cxx_optflags64       %gcc_optflags64
+%endif
+
+%ifarch sparc
+%define suncc_optflags64           -i %_cc64_opt_level -xstrconst -xarch=v9 -xcode=pic32 -mr
+%define suncc_cxx_optflags64       -i %_cxx64_opt_level -xarch=v9 -xcode=pic32 -mr -norunpath
+%endif
+
+%ifarch i386
+%define suncc_optflags64           -i %_cc64_opt_level -xstrconst -m64 -Kpic -xregs=no%%frameptr
+%define suncc_cxx_optflags64       -i %_cxx64_opt_level -xarch=generic64 -Kpic -pentium -mr -norunpath -xregs=no%%frameptr
+%endif
+
+%if %cc_is_gcc
+
+%define picflags %gcc_picflags
+%define optflags64 %gcc_optflags64
+%define cxx_optflags64 %gcc_cxx_optflags64
+
+%else
+# cc is not gcc
+
+%define picflags %suncc_picflags
+%define optflags64 %suncc_optflags64
+%define cxx_optflags64 %suncc_cxx_optflags64
+
+%endif
+
+%define optflags %optflags64 ${EXTRA_CFLAGS}
+%define gcc_optflags %gcc_optflags64 ${EXTRA_CFLAGS}
+%define cxx_optflags %cxx_optflags64 ${EXTRA_CXXFLAGS}
+%define gcc_cxx_optflags %gcc_cxx_optflags64 ${EXTRA_CXXFLAGS}
+
+%define _bindir		 %{_prefix}/bin/%{bld_arch}
+%define _libdir		 %{_prefix}/lib/%{bld_arch}
+%define _libexecdir	 %{_prefix}/lib/%{bld_arch}
+%define _pkg_config_path %{_libdir}/pkgconfig:%{_datadir}/pkgconfig
+# obsolete, don't use:
+%define _pkg_config_path64 %{_prefix}/lib/%{_arch64}/pkgconfig:%{_datadir}/pkgconfig
+
+%endif
+
+# ChangeLog:
+# 2009-12-30  Halton Huo <halton.huo@sun.com>
+# - Remove cc_is_ssxx macros since we use ss12 always
+# 2008-06-20  Laszlo (Laca) Peter  <laca@sun.com>
+# - always define gcc_* macros, not only when cc_is_gcc, useful in spec
+#   files that force using gcc
+# 2008-03-30  Laszlo (Laca) Peter  <laca@sun.com>
+# - use -m64 with ss12
+# 2007-09-28  Laszlo (Laca) Peter  <laca@sun.com>
+# - add /usr/gnu/lib/%{_arch64} to RPATH and link with GNU libintl and libiconv
+#   when building with the --with-gnu-iconv option
+# 2007-03-20  Doug Scott <dougs@truemail.co.th>
+# - Added %_cc64_opt_level to suncc_optflags64 for i386
+# 2007-03-19  Doug Scott <dougs@truemail.co.th>
+# - Fixed -fno-omit-frame-pointer flag
+# 2007-03-15  Laszlo (Laca) Peter  <laca@sun.com>
+# - renamed from amd64.inc
+# - updated to work for either amd64 or sparcv9
+# 2007-03-12  Doug Scott  <dougs@truemail.co.th>

File spec-files/include/base.inc

+#
+# Base (32-bit) platform settings for Solaris packages
+#
+# Copyright 2007 Sun Microsystems, Inc.
+#
+# Solaris.inc must be included before this file
+
+%ifarch sparc
+%define bld_arch        "sparc"
+%else
+%define bld_arch	"i386"
+%endif
+
+%define opt_arch64 0
+%define opt_sparcv9 0
+%define opt_amd64 0
+%define opt_sse2 0
+
+# use --without-gtk-doc to disable building gtk-docs (it takes quite
+# a while to build them)
+# default: build gtk-doc API docs
+%define gtk_doc_option %{?!_without_gtk_doc:--enable-gtk-doc}%{?_without_gtk_doc:--disable-gtk-doc}
+
+%if %option_with_gnu_iconv
+%define arch_ldadd -Wl,-zignore -R/usr/gnu/lib -lgnuintl -lgnuiconv
+%else
+%define arch_ldadd
+%endif
+
+%if %debug_build
+%define pkgbuild_postprocess /bin/true
+%define _cc_opt_level      -g
+%define _cxx_opt_level     -g
+%define _gcc_opt_level     -g
+%define _gxx_opt_level     -g
+%else
+%define _gcc_opt_level     -O3
+%define _gxx_opt_level     -O3
+%define _cc_opt_level      -xO4 -xspace
+%define _cxx_opt_level     -xO3 -xspace
+%endif
+
+%ifarch sparc
+%define gcc_optflags           %_gcc_opt_level -mv8plus -Xlinker -i %gcc_picflags
+%define gcc_cxx_optflags       %_gxx_opt_level -mv8plus -Xlinker -i %gcc_picflags
+%endif
+
+%ifarch i386
+%define gcc_optflags           %_gcc_opt_level -march=i586 -Xlinker -i -fno-omit-frame-pointer %gcc_picflags
+%define gcc_cxx_optflags       %_gxx_opt_level -march=i586 -Xlinker -i -fno-omit-frame-pointer %gcc_picflags
+%endif
+
+%ifarch sparc
+%define suncc_optflags           -i %_cc_opt_level -xstrconst -xarch=v8a -mr -xmemalign=4i
+%define suncc_cxx_optflags       -i %_cxx_opt_level -xarch=v8a -mr -norunpath -compat=5
+%endif
+
+%ifarch i386
+%define suncc_optflags           -i %_cc_opt_level -xstrconst -xpentium -mr -xregs=no%%frameptr
+%define suncc_cxx_optflags       -i %_cxx_opt_level -pentium -mr -norunpath -xregs=no%%frameptr -compat=5
+%endif
+
+%if %cc_is_gcc
+
+%define picflags %gcc_picflags
+%define optflags %gcc_optflags
+%define cxx_optflags %gcc_cxx_optflags
+
+%else
+# cc is not gcc
+
+%define picflags %suncc_picflags
+%define optflags %suncc_optflags ${EXTRA_CFLAGS}
+%define cxx_optflags %suncc_cxx_optflags ${EXTRA_CXXFLAGS}
+
+%endif
+
+%define _bindir		 %{_prefix}/bin
+%define _libdir		 %{_prefix}/lib
+%define _libexecdir	 %{_prefix}/lib
+%define _pkg_config_path %{_libdir}/pkgconfig:%{_datadir}/pkgconfig
+%define _sysconfdir      /etc
+
+# ChangeLog:
+# 2008-09-13  Laszlo (Laca) Peter  <laca@sun.com>
+# - add -compat=5 option to Sun Studio CXXFLAGS as required by PSARC/2002/348
+# 2007-09-28  Laszlo (Laca) Peter  <laca@sun.com>
+# - add /usr/gnu/lib to the RUNPATH and link with GNU libintl and libiconv
+#   when building with the --with-gnu-iconv option
+# 2007-08-09  Laszlo (Laca) Peter  <laca@sun.com>
+# - delete cc_is_gcc conditional when setting _gcc_opt_level,
+#   because we want this set anyway so it can be used in spec
+#   files that force gcc
+# 2007-05-17  Laszlo (Laca) Peter  <laca@sun.com>
+# - add -xmemalign=4i for sparc builds for binary compatibility with
+#   apps compiled with earlier versions of Sun Studio, fixes 6457446
+# 2007-04-05  Laszlo (Laca) Peter  <laca@sun.com>
+# - fix cxx_optflags: use EXTRA_CXXFLAGS and not EXTRA_LDFLAGS
+# 2007-03-19  Doug Scott <dougs@truemail.co.th>
+# - Fixed -fno-omit-frame-pointer flag
+# 2007-03-15  Laszlo (Laca) Peter  <laca@sun.com>
+# - copied from x86_sse2.inc
+# - new include file that resets macros to their default (32-bit build)
+#   values
+# 2007-03-12  Doug Scott  <dougs@truemail.co.th>

File spec-files/include/default-depend.inc

+#
+# Default system dependencies for GNOME packages on Solaris
+#
+# Copyright (c) 2003 Sun Microsystems, Inc.
+#
+Requires: SUNWcar
+Requires: SUNWkvm
+Requires: SUNWcsr
+Requires: SUNWcsu
+Requires: SUNWcsd
+Requires: SUNWcsl

File spec-files/include/options.inc

+#
+# Macro definitions for optional features
+#
+
+#
+# Option: --with-l10n
+#
+# use --with-l10n to build the SUNWfoo-l10n packages
+# default: no l10n packages
+#
+%define option_with_l10n %{?_with_l10n:1}%{?!_with_l10n:0}
+%define option_without_l10n %{!?_with_l10n:1}%{?_with_l10n:0}
+
+# obsolete:
+%define build_l10n %option_with_l10n
+
+#
+# Option: --with-debug
+#
+# use --with-debug to build binaries with debug info (-g) and not to strip
+# them.
+# default: don't include debug info and strip the binaries (strip -x)
+#
+%define option_with_debug %{?_with_debug:1}%{?!_with_debug:0}
+%define option_without_debug %{!?_with_debug:1}%{?_with_debug:0}
+
+# obsolete:
+%define debug_build %option_with_debug
+
+#
+# Option: --without-gtk-doc
+#
+# use --without-gtk-doc to disable building gtk-docs (it takes quite
+# a while to build them)
+# default: build gtk-doc API docs
+#
+%define option_with_gtk_doc %{?!_without_gtk_doc:1}%{?_without_gtk_doc:0}
+%define option_without_gtk_doc %{?_without_gtk_doc:1}%{?!_without_gtk_doc:0}
+
+# macro to use as a configure option:
+%define gtk_doc_option %{?!_without_gtk_doc:--enable-gtk-doc}%{?_without_gtk_doc:--disable-gtk-doc}
+
+#
+# Option: --with-fox
+#
+# use --with-fox to build JDS with the FOX project's X packages
+# instead of the nevada X packages
+# default: nevada
+#
+%define option_with_fox %{?_with_fox:1}%{?!_with_fox:0}
+%define option_without_fox %{!?_with_fox:1}%{?_with_fox:0}
+
+#
+# Option: --with-gnu-iconv
+#
+# use --with-gnu-iconv to build JDS with the GNU libiconv and
+# libintl implementations instead of the nevada libc implementations
+# default: libc
+#
+%define option_with_gnu_iconv %{?_with_gnu_iconv:1}%{?!_with_gnu_iconv:0}
+%define option_without_gnu_iconv %{!?_with_gnu_iconv:1}%{?_with_gnu_iconv:0}
+
+#
+# Option: --without-java
+#
+# use --without-java exclude the Java bits from the build and packages
+# default: build java
+#
+%define option_with_java %{?!_without_java:1}%{?_without_java:0}
+%define option_without_java %{?_without_java:1}%{?!_without_java:0}
+
+#
+# Option: --without-dt
+#
+# use --without-dt to remove dependency on /usr/dt "stuff" like dtlogin
+# default: depend on /usr/dt
+#
+%define option_with_dt %{?!_without_dt:1}%{?_without_dt:0}
+%define option_without_dt %{?_without_dt:1}%{?!_without_dt:0}
+
+#
+# Option: --with-sun-branding
+#
+# use --with-sun-branding to build JDS with Sun Solaris branding
+# default: no Sun branding
+#
+%define option_with_sun_branding %{?_with_sun_branding:1}%{?!_with_sun_branding:0}
+%define option_without_sun_branding %{!?_with_sun_branding:1}%{?_with_sun_branding:0}
+
+#
+# Option: --with-indiana-branding
+#
+# use --with-indiana-branding to build JDS with Indiana Solaris branding
+# default: no Indiana branding
+#
+%define option_with_indiana_branding %{?_with_indiana_branding:1}%{?!_with_indiana_branding:0}
+%define option_without_indiana_branding %{!?_with_indiana_branding:1}%{?_with_indiana_branding:0}
+
+%if %option_with_sun_branding
+%if %option_with_indiana_branding
+%error You cannot enable both Sun Solaris and Indiana branding
+%endif
+%endif
+
+#
+# Option: --without-blueprint
+#
+# use --without-blueprint if you do not with to include the blueprint theme
+# default: include blueprint
+#
+%define option_with_blueprint %{?!_without_blueprint:1}%{?_without_blueprint:0}
+%define option_without_blueprint %{?_without_blueprint:1}%{?!_without_blueprint:0}
+
+#
+# Option: --without-apoc-adapter
+#
+# use --with-apoc-adapter to enable apoc adapter for SUNWfirefox
+# default: not build apoc adapter
+%define option_with_apoc_adapter %{?_with_apoc_adapter:1}%{?!_with_apoc_adapter:0}
+%define option_without_apoc_adapter %{!?_with_apoc_adapter:1}%{?_with_apoc_adapter:0}
+
+#
+# Option: --with-moz-nss-nspr
+#
+# use --with-moz-nss-nspr to deliver Mozilla bundled nss, nspr libs
+# for SUNWfirefox
+# default: without Mozilla bundled nss, nspr libs
+%define option_without_moz_nss_nspr %{?!_with_moz_nss_nspr:1}%{?_with_moz_nss_nspr:0}
+
+#
+# Option: --without-lightning
+#
+# use --without-lightning to disable building lightning for SUNWthunderbird
+# default: build lightning
+%define option_with_lightning %{?!_without_lightning:1}%{?_without_lightning:0}
+
+# ChangeLog:
+# 2009-05-25  - ginn.chen@sun.com
+# - add option --without-lightning
+# 2009-05-21  - ginn.chen@sun.com
+# - add option --without-apoc-adapter, --with-moz-nss-nspr
+# 2009-03-23  - dave.lin@sun.com
+# - remove option --with-ff3
+# 2008-05-22  - dave.lin@sun.com
+# - add option --with-ff3 
+# 2007-09-27  Laszlo (Laca) Peter  <laca@sun.com>
+# - create

File spec-files/include/prod.inc

+#
+# Default settings for GNOME packages on Solaris
+#
+# Copyright 2009 Sun Microsystems, Inc.
+#
+SUNW_ProdName:             GNOME
+SUNW_ProdVers:             2.29.91
+
+%define default_pkg_version 2.29.91
+%define default_python_version 2.6
+
+%{?sf_download:#}%define sf_download http://downloads.sourceforge.net
+
+%{?jds_version:#}%define jds_version JDSosol
+%define default_category   GNOME2,application,%{jds_version}
+%{?support_level:#}%define support_level      unsupported
+
+Vendor:			   Sun Microsystems, Inc.
+
+%define                    pkg_prefix SUNW
+
+%define                    restart_fmri $BASEDIR/share/desktop-cache/restart_fmri
+
+# ChangeLog:
+# 2009-10-08  Laszlo (Laca) Peter  <laca@sun.com>
+# - define default_python_version
+# 2009-04-03  Laszlo (Laca) Peter  <laca@sun.com>
+# - define restart_fmri
+# 2007-09-27  Laszlo (Laca) Peter  <laca@sun.com>
+# - move tjds build option to options.inc
+# 2007-03-15  Laszlo (Laca) Peter  <laca@sun.com>
+# - create by moving product specific stuff out of Solaris.inc

File spec-files/less.spec

+#
+# spec file for package less
+#
+# includes module(s): less
+#
+%include Solaris.inc
+
+%define	src_name less
+%define src_url http://src.opensolaris.org/source/raw/sfw/usr/src/cmd
+
+# The system doesn't support package names such as:
+# text/less
+
+Name:                less
+Summary:             less - opposite of more
+License:             GPL
+Group:               Editor
+Distribution:        OpenSolaris
+Version:             436
+Source:              %{src_url}/%{src_name}/%{src_name}-%{version}.tar.gz
+SUNW_BaseDir:        %{_basedir}
+SUNW_Copyright:      %{name}.copyright
+BuildRoot:           %{_tmppath}/%{name}-%{version}-build
+%include default-depend.inc
+
+# OpenSolaris IPS Manifest Fields
+Meta(info.upstream):            Less Person
+Meta(info.maintainer):          Less Maintainer 
+Meta(info.repository_url):      svn://svn.example.org/less/trunk
+Meta(pkg.summary):              The GNU pager (less)
+
+%description
+Less is a program similar to more (1), but which allows backward
+movement in the file as well as forward movement.
+
+# Examples only:
+Requires:            SUNWglib2
+BuildRequires:       SUNWglib2-devel
+
+%prep
+%setup -q -n %{src_name}-%version
+
+%build
+sh configure
+make
+
+%install
+rm -rf $RPM_BUILD_ROOT
+make install DESTDIR=$RPM_BUILD_ROOT
+rm -f $RPM_BUILD_ROOT%{_libdir}/lib*.*a
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr (-, root, bin)
+%dir %attr (0755, root, bin) /usr/local
+/usr/local/bin/*
+%dir %attr (0755, root, sys) /usr/local/share
+/usr/local/share/man/*
+
+%changelog
+* Thu 7 April 2010 - Michal.Pryc@Oracle.Com
+- Initial spec