5/packages: Add curl and update all packages with RTEMS 5 and LibBSD

- Update rtems-bsp support to correctly handle hosts for BSP.
- Clean up the options for a BSP.
- Check all RTEMS 5 packages and add 5/rtems-packages for all that build.
- Update download locations and checksum of all packages.

- The work requires the kernel and Libbsd hacve the same prefix.
This commit is contained in:
Chris Johns 2019-07-06 19:20:09 +10:00
parent bcfb2108a0
commit c799e04a8f
30 changed files with 335 additions and 74 deletions

View File

@ -0,0 +1,24 @@
#
# RTEMS Packages that build for this release.
#
#
# Databases
#
databases/sqlite
#
# Graphics
#
graphics/freetype2
graphics/libjpeg
graphics/libpng
graphics/libtiff
graphics/t1lib
#
# Networking
#
ftp/curl
net/lwip
net/protobuf

View File

@ -19,7 +19,7 @@
%define sqlite_src_version 3080801 %define sqlite_src_version 3080801
%define sqlite_src_year 2015 %define sqlite_src_year 2015
%hash md5 sqlite-src-%{sqlite_src_version}.zip 9dde57c312da00cbe791bcba42d1e96a %hash sha512 sqlite-src-%{sqlite_src_version}.zip 4f09228cb0c9c608e492da6e480afe3d27a63e27ccdcf33a88d5e56427f0846efab8930c81026b8e608f1bbb8d63e8d937dd26571deb828617f7efa27a765950
# #
# Sqlite configuration # Sqlite configuration

View File

@ -0,0 +1,21 @@
#
# Curl 7.65.1
#
%if %{release} == %{nil}
%define release 1
%endif
%include %{_configdir}/rtems-bsp.cfg
#
# Curl Version
#
%define curl_version 7.65.1
%hash sha512 curl-%{curl_version}.tar.xz aba2d979a416d14a0f0852d595665e49fc4f7bff3bee31f3a52b90ba9dc5ffdb09c092777f124215470b72c47ebca7ddb47844cbf5c0e9142099272b6ac55df4
#
# Curl Build configuration
#
%include %{_configdir}/curl-1.cfg

View File

@ -0,0 +1,20 @@
#
# Build set for Curl
#
%define release 1
#
# RTEMS Version
#
%define rtems_version 5
#
# The RTEMS URL paths.
#
%include rtems-urls.bset
#
# Build Curl
#
ftp/curl-7.65.1-1

View File

@ -13,7 +13,7 @@
# #
%define freetype_version 2.4.10 %define freetype_version 2.4.10
%hash md5 freetype-%{freetype_version}.tar.gz 4f255c6ee5d5cc2b5c3d423a07386fcb %hash sha512 freetype-%{freetype_version}.tar.gz 507d1c03d394b695b5a96041ad7ee03b375964c89f007678db864a7e5bd2ee69d83e6c638f4aadaf348c921d37c16741a03ef9bee03196bda2b94ceea409b688
# #
# freetype Build configuration # freetype Build configuration

View File

@ -2,8 +2,11 @@
# All RTEMS Graphics Build Sets # All RTEMS Graphics Build Sets
# #
graphics/freetype2
graphics/libjpeg graphics/libjpeg
graphics/libpng graphics/libpng
graphics/libtiff graphics/libtiff
graphics/t1lib graphics/t1lib
graphics/microwindows.bset
# Remove as microwindows does not build. Please fix and provide a patch.
# graphics/microwindows

View File

@ -13,7 +13,7 @@
# #
%define libjpeg_version 9a %define libjpeg_version 9a
%hash md5 jpegsrc.v%{libjpeg_version}.tar.gz 3353992aecaee1805ef4109aadd433e7 %hash sha512 jpegsrc.v%{libjpeg_version}.tar.gz 9b21cc115e22c68bea46db462263c5c7a0d10beb192a919ecccbd801a25982b518ce44d8c301dd582ecaba1850e0e0f20e322be82b0e24ae917b9949b4f10d3b
# #
# libjpeg Build configuration # libjpeg Build configuration

View File

@ -0,0 +1,21 @@
#
# libpng 1.6.37
#
%if %{release} == %{nil}
%define release 1
%endif
%include %{_configdir}/rtems-bsp.cfg
#
# libpng Version
#
%define libpng_version 1.6.37
%hash sha512 libpng-%{libpng_version}.tar.xz 59e8c1059013497ae616a14c3abbe239322d3873c6ded0912403fc62fb260561768230b6ab997e2cccc3b868c09f539fd13635616b9fa0dd6279a3f63ec7e074
#
# libpng Build configuration
#
%include %{_configdir}/libpng-1.cfg

View File

@ -12,4 +12,4 @@
# #
# Build libpng. # Build libpng.
# #
graphics/libpng-1.6.21-1.cfg graphics/libpng-1.6.37-1.cfg

View File

@ -0,0 +1,21 @@
#
# libtiff 4.0.10
#
%if %{release} == %{nil}
%define release 1
%endif
%include %{_configdir}/rtems-bsp.cfg
#
# tiff Version
#
%define tiff_version 4.0.10
%hash sha512 tiff-%{tiff_version}.tar.gz d213e5db09fd56b8977b187c5a756f60d6e3e998be172550c2892dbdb4b2a8e8c750202bc863fe27d0d1c577ab9de1710d15e9f6ed665aadbfd857525a81eea8
#
# tiff Build configuration
#
%include %{_configdir}/libtiff-1.cfg

View File

@ -13,7 +13,7 @@
# #
%define tiff_version 4.0.6 %define tiff_version 4.0.6
%hash md5 tiff-%{tiff_version}.tar.gz d1d2e940dea0b5ad435f21f03d96dd72 %hash sha512 tiff-%{tiff_version}.tar.gz 2c8dbaaaab9f82a7722bfe8cb6fcfcf67472beb692f1b7dafaf322759e7016dad1bc58457c0f03db50aa5bd088fef2b37358fcbc1524e20e9e14a9620373fdf8
# #
# tiff Build configuration # tiff Build configuration

View File

@ -12,4 +12,4 @@
# #
# Build libtiff. # Build libtiff.
# #
graphics/libtiff-4.0.6-1.cfg graphics/libtiff-4.0.10-1.cfg

View File

@ -11,15 +11,17 @@
# #
# microwindows Version # microwindows Version
# #
%define microwindows_version 0.93-dev %define microwindows_version 56041759161132a94df3e575ae995e53d6b6e1d8
%define rtems_git_tools_4_11 %{rtems_http_git}/rtems-tools/plain/tools/4.11 %define rtems_git_tools_4_11 %{rtems_http_git}/rtems-tools/plain/tools/4.11
%source set microwindows git://github.com/ghaerr/microwindows.git %hash sha512 microwindows-%{microwindows_version}.tar.gz cf29a9d966a8a5b3926aab7f911c47890c9b1a589ff0ecf098e6be45ae1555958b0e437270fb26e353b8c58f261834a3a7f0fce84bea0fdb9138fc38c8703ddc
%patch add microwindows %{rtems_git_tools_4_11}/microwindows/microwindows-0.93-dev.diff %patch add microwindows %{rtems_git_tools_4_11}/microwindows/microwindows-0.93-dev.diff
%hash md5 microwindows-0.93-dev.diff 5b06e77d9ee42c8ff0032bba07d01c1a %hash sha512 microwindows-0.93-dev.diff 2f575f603ce9ccff5c98e9c434d72fb9952d1385903495bf818d50de6568c57c9ca1d3320388e3bae384388d192a389012baf4d734d2cc8481d56f231d2a93d0
%patch add microwindows %{rtems_git_tools_4_11}/microwindows/microwindows-0.93-dev-without-keyboard.diff
%hash md5 microwindows-0.93-dev-without-keyboard.diff a675f55750754e1cd82a17496f0e8fab #%patch add microwindows %{rtems_git_tools_4_11}/microwindows/microwindows-0.93-dev-without-keyboard.diff
#%hash sha512 microwindows-0.93-dev-without-keyboard.diff c235177fa80035ec70957aee1daa9232c9050abddac08e5f7b2977bd58703224367b4262a2ddc2999b1ac64b5ab838ad3ad740ee1490741293cffe7c16575fb2
# #
# microwindows Build configuration # microwindows Build configuration

View File

@ -13,13 +13,13 @@
# #
%define t1lib_version 5.1.2 %define t1lib_version 5.1.2
%hash md5 t1lib-%{t1lib_version}.tar.gz a5629b56b93134377718009df1435f3c %hash sha512 t1lib-%{t1lib_version}.tar.gz 9f424b19c6f35cc4f194ff7351a4c2352216462c7d1b1d9650ad3a05cf48c6e90c89ccbcda5ecc47a4169a39a850cf84a1fcbf88b3b15614860c27364b631ae3
# #
# Patch for RTEMS. # Patch for RTEMS.
# #
%patch add t1lib https://raw.githubusercontent.com/yangqiao/rtems-tools/graphics/tools/4.11/t1lib/t1lib-5.1.2.diff %patch add t1lib https://raw.githubusercontent.com/yangqiao/rtems-tools/graphics/tools/4.11/t1lib/t1lib-5.1.2.diff
%hash md5 t1lib-5.1.2.diff 98eeed85780227adf8525deab3679877 %hash sha512 t1lib-5.1.2.diff 1afd18182350d7d2426a910c61537f8532e149bf37c616f3a4a84ae0767c4549a2be857db6fd1b1994ed86f8a2e2d4cdfb2abdf67053c8ca1ee83893f4b56d23
# #
# t1lib Build configuration # t1lib Build configuration

View File

@ -13,7 +13,7 @@
# #
%define net_snmp_version 5.7.2.1 %define net_snmp_version 5.7.2.1
%hash md5 net-snmp-%{net_snmp_version}.tar.gz 7db683faba037249837b226f64d566d4 %hash sha512 net-snmp-%{net_snmp_version}.tar.gz 6c4dadd145cab9572e2559ad99d6794469685086771c6d757d3667da1a061ab86746d53c28d48381c59a90d92b1812b813f3176cff156c41929177fb585299d0
# #
# We need some special flags to build this version. # We need some special flags to build this version.
@ -23,8 +23,8 @@
# #
# Patch for RTEMS support. # Patch for RTEMS support.
# #
%patch add net-snmp %{rtems_git_tools}/net-snmp/rtems-net-snmp-5.7.2.1-20140623.patch %patch add net-snmp %{rtems_git_tools}/net-snmp/rtems-net-snmp-5.7.2.1-20190704.patch
%hash md5 rtems-net-snmp-5.7.2.1-20140623.patch 9a22fb4366a113f5df71ed2acd672b2b #%hash sha512 rtems-net-snmp-5.7.2.1-20140623.patch 4eb987d88c6414f2e07d725c2ebb3e88a40191c7befce879cae9ef67143dc25aa88942cfc525d36cd3683476d1cc0f5882d4a730d3bb9c53be2c7a079874d7dd
# #
# NetSNMP Build configuration # NetSNMP Build configuration

View File

@ -11,15 +11,19 @@
# #
# LWIP Version # LWIP Version
# #
%define lwip_version lwip-c2ebf5544b4268eac9b32c7f3a689ff646d96eef %define lwip_version c2ebf5544b4268eac9b32c7f3a689ff646d96eef
%hash sha512 lwip-%{lwip_version}.tar.gz bfa93e050133ca591c628f0e3a04f5082f55a655b099cdd49138ebf74494354a4cbbee56839f5939174b4c965b29ec648c24b7479c73393ac94ec536cb578b70
#Will be modified to be pointing to RTEMS repo #
# Will be modified to be pointing to RTEMS repo
#
%define rtems_ragu_git https://raw.githubusercontent.com/ragunath3252/lwip-nodrv/master %define rtems_ragu_git https://raw.githubusercontent.com/ragunath3252/lwip-nodrv/master
# #
# Patch for RTEMS support. # Patch for RTEMS support.
# #
%patch add lwip %{rtems_ragu_git}/rtems.patch %patch add lwip --rsb-file=lwip-nodrv-rtems.patch %{rtems_ragu_git}/rtems.patch
%hash md5 rtems.patch 489c0def3a89e538fb526a5396bf27ca %hash sha512 lwip-nodrv-rtems.patch ba49163e11069cb036280023db064625e5d1aed3a6cf3e51c64e59639580e9f758434e60853242fb924eb5cebc73b478f01ff51f24505e85d4c21bb1963415e1
# #
# LWIP Build configuration # LWIP Build configuration

View File

@ -13,13 +13,13 @@
# #
%define ntp_version 4.2.6p5 %define ntp_version 4.2.6p5
%hash md5 ntp-%{ntp_version}.tar.gz 00df80a84ec9528fcfb09498075525bc %hash sha512 ntp-%{ntp_version}.tar.gz 8d76fc7e92b2ea6dd5031e6030a7aba4ff6fb3e19d3bc0153852509861be5d0960e70604814163caedb81f8315a451d78371f99634a50b55cfe1cbd2c69e3046
# #
# Patch for RTEMS support. # Patch for RTEMS support.
# #
%patch add ntp %{rtems_git_tools}/ntp/rtems-ntp-4.2.6p5.diff %patch add ntp %{rtems_http_git}/rtems-tools/plain/tools/4.11/ntp/rtems-ntp-4.2.6p5.diff
%hash md5 rtems-ntp-4.2.6p5.diff 6fce685a73873f924a48b19d6b1700fc %hash sha512 rtems-ntp-4.2.6p5.diff 257223d207d0b77cde2b9d7add22e3b9d657b58998411d2e20d0b1adf36910be21f1277386c54c34f5d9616fccd29f721d007295708047ea7ae0270a00be25a0
# #
# NTP Build configuration # NTP Build configuration

View File

@ -13,7 +13,7 @@
# #
%define protobuf_version 2.6.1 %define protobuf_version 2.6.1
%hash md5 protobuf-%{protobuf_version}.tar.gz f3916ce13b7fcb3072a1fa8cf02b2423 %hash sha512 protobuf-%{protobuf_version}.tar.gz 818ac4ad24aca84d214d14ac860a75c14494528821af144d3cb603f69c94d4500512814be6d62cc82973804ebfa99eb94d9f034b309f53cadb622603a7886a3e
# #
# Protocol Buffers configuration # Protocol Buffers configuration

View File

@ -3,13 +3,21 @@
# #
# #
# The RTEMS BSP support requires the host turple, the RTEMS BSP and the path to # The RTEMS BSP support requires the host tuple, the RTEMS BSP and the path to
# the tools. The prefix is set to an installed RTEMS. The built package is # the tools. The prefix is set to an installed RTEMS. The built package is
# installed into the prefix. # installed into the prefix.
# #
# Keeping the package's installed path in the RTEMS install path and separate # Keeping the package's installed path in the RTEMS install path and separate
# to the tools lets the tools version vary independently. If --rtems-tools # to the tools lets the tools version vary independently.
# (--with-tools) is not provided use the prefix. #
# Provide the path to the RTEMS tools is not in the prefix with the
# --with-tools option. If --with-tools is not provided use the prefix.
#
# Provide the path to the installed RTEMS kernel is not in the prefix with the
# --with-rtems option. If --with-rtems is not provided use the prefix.
#
# Note, only a single path (--with-rtems) for the RTEMS kernel and any other
# add on or 3rd party libraries is supported.
# #
# #
@ -23,14 +31,24 @@
%define rtems_bsp_error 1 %define rtems_bsp_error 1
%endif %endif
%if %{_target} == %{nil} && %{rtems_bsp_error} #
%error No RTEMS target specified: --rtems-bsp=arch/bsp (or --target=target) # The target is used by compilers or Cxc builds.
#
%if %{_target} != %{nil}
%error RTEMS BSP builds use --host and not --target
%endif %endif
%if %{_host} != %{_build} #
%error Canadian cross building for BSP is not supported. # We need a host from the user to specifiy the RTEMS architecture and major
# version.
#
%if %{_host} == %{nil} && %{rtems_bsp_error}
%error No RTEMS host or BSP specified: --host=<arch>-rtems<ver>
%endif %endif
#
# We need a BSP from the user.
#
%ifn %{defined with_rtems_bsp} %ifn %{defined with_rtems_bsp}
%if %{rtems_bsp_error} %if %{rtems_bsp_error}
%error No RTEMS BSP specified: --rtems-bsp=arch/bsp (or --with-rtems-bsp=bsp) %error No RTEMS BSP specified: --rtems-bsp=arch/bsp (or --with-rtems-bsp=bsp)
@ -38,14 +56,16 @@
%define with_rtems_bsp sparc/erc32 %define with_rtems_bsp sparc/erc32
%endif %endif
#
# If no tools or RTEMS provided use the prefix.
#
%ifn %{defined with_tools} %ifn %{defined with_tools}
%define with_tools %{_prefix} %define with_tools %{_prefix}
%endif %endif
# %ifn %{defined with_rtems}
# Set the host to the target. %define with_rtems %{_prefix}
# %endif
%define _host %{_target}
# #
# Set the path to the tools. # Set the path to the tools.
@ -57,27 +77,54 @@
# enable support when crosscompiling, and filter specific optimisation and # enable support when crosscompiling, and filter specific optimisation and
# warning from the flags that RTEMS exports. # warning from the flags that RTEMS exports.
# #
%{pkgconfig prefix %{_prefix}/lib/pkgconfig} %{pkgconfig prefix %{with_rtems}/lib/pkgconfig}
%{pkgconfig crosscompile yes} %{pkgconfig crosscompile yes}
%{pkgconfig filter-flags yes} %{pkgconfig filter-flags yes}
# #
# The RTEMS BSP Flags # The RTEMS BSP Flags
# #
%define rtems_bsp %{with_rtems_bsp} %define rtems_bsp %{with_rtems_bsp}
%define rtems_bsp_ccflags %{pkgconfig ccflags %{_host}-%{rtems_bsp}} %define rtems_bsp_ccflags %{pkgconfig ccflags %{_host}-%{rtems_bsp}}
%define rtems_bsp_cflags %{pkgconfig cflags %{_host}-%{rtems_bsp}} %define rtems_bsp_cflags %{pkgconfig cflags %{_host}-%{rtems_bsp}}
%define rtems_bsp_ldflags %{pkgconfig ldflags %{_host}-%{rtems_bsp}} %define rtems_bsp_ldflags %{pkgconfig ldflags %{_host}-%{rtems_bsp}}
%define rtems_bsp_libs %{pkgconfig libs %{_host}-%{rtems_bsp}} %define rtems_bsp_libs %{pkgconfig libs %{_host}-%{rtems_bsp}}
%if %{rtems_bsp_cflags} == %{nil} && %{rtems_bsp_error} %if %{rtems_bsp_cflags} == %{nil} && %{rtems_bsp_error}
%error No RTEMS target CFLAGS found; Please check the --rtems-bsp option. %error No RTEMS BSP CFLAGS found; Please check the --rtems-bsp option.
%endif %endif
%if %{rtems_bsp_ccflags} == %{nil} %if %{rtems_bsp_ccflags} == %{nil}
%define rtems_bsp_ccflags %{rtems_bsp_cflags} %define rtems_bsp_ccflags %{rtems_bsp_cflags}
%endif %endif
#
# RTEMS BSP paths
#
%define rtems_bsp_cc %{_host}-gcc
%define rtems_bsp_incpath %{with_rtems}/%{_host}/%{rtems_bsp}/include
%define rtems_bsp_libpath %{with_rtems}/%{_host}/%{rtems_bsp}/lib
#
# Check for installed libraries.
#
# - Check is LibBSD is install
# - Add librtemsdefaultconfig so configure scripts work.
#
# Note: default BSP flags include the standard RTEMS libraries.
#
%define rtems-dep-check %(%{_sbdir}/sb/rtems-build-dep -c %{with_tools}/bin/%{rtems_bsp_cc}
%define rtems-libbsd %{rtems-dep-check} -L %{rtems_bsp_libpath} -l libbsd.a)
%if %{rtems-libbsd} == found
%define rtems_bsp_libs %{rtems_bsp_libs} -lbsd -lm -lz
%endif
%define rtems-defaultconfig %{rtems-dep-check} -L %{rtems_bsp_libpath} -l librtemsdefaultconfig.a)
%if %{rtems-defaultconfig} == found
%define rtems_bsp_libs %{rtems_bsp_libs} -lrtemsdefaultconfig
%endif
# #
# Update the configure paths to be BSP specific. # Update the configure paths to be BSP specific.
# #

View File

@ -0,0 +1,80 @@
#
# Curl (https://curl.haxx.se)
#
# This configuration file configure's, make's and install's libcurl.
#
%if %{release} == %{nil}
%define release 1
%endif
Name: curl-v%{curl_version}-%{_host}-%{release}
Summary: Curl provides libcurl, a package to manage http etc protocols.
Version: %{curl_version}
Release: %{release}
URL: https://curl.haxx.se
#
# Curl Source
#
%source set curl https://curl.haxx.se/download/curl-%{curl_version}.tar.xz
#
# Curl's configures requires includes are in the CPPFLAGS.
#
%define host_cflags_no_includes 1
#
# Prepare the source code.
#
%prep
build_top=$(pwd)
source_dir_curl="curl-%{curl_version}"
%source setup curl -q -n curl-%{curl_version}
cd ${build_top}
#
# Build the source code.
#
%build
build_top=$(pwd)
%{build_directory}
mkdir -p ${build_dir}
cd ${build_dir}
%{host_build_flags}
../${source_dir_curl}/configure \
--host=%{_host} \
--prefix=%{_prefix} \
--bindir=%{_bindir} \
--exec_prefix=%{_exec_prefix} \
--includedir=%{_includedir} \
--libdir=%{_libdir} \
--libexecdir=%{_libexecdir} \
--mandir=%{_mandir} \
--infodir=%{_infodir} \
--datadir=%{_datadir}
%{__make} %{?_smp_mflags} all
cd ${build_top}
%install
build_top=$(pwd)
%{__rmdir} ${SB_BUILD_ROOT}
cd ${build_dir}
%{__make} DESTDIR=${SB_BUILD_ROOT} install
cd ${build_top}
#
# Remove any executables created in the build
#
%{__rmdir} ${SB_BUILD_ROOT}/%{_bindir}
%{__rmdir} ${SB_BUILD_ROOT}/%{_mandir}/man1

View File

@ -17,7 +17,9 @@ URL: http://www.libpng.org/
# #
# libpng Source # libpng Source
# #
%source set libpng ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng%{libpng_src_dir_revision}/libpng-%{libpng_version}.tar.gz #%source set libpng ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng%{libpng_src_dir_revision}/libpng-%{libpng_version}.tar.gz
%source set libpng --rsb-file=libpng-%{libpng_version}.tar.xz http://prdownloads.sourceforge.net/libpng/libpng-%{libpng_version}.tar.xz?download
# #
# Prepare the source code. # Prepare the source code.

View File

@ -17,7 +17,7 @@ URL: http://www.libtiff.org/
# #
# libtiff Source # libtiff Source
# #
%source set libtiff ftp://ftp.remotesensing.org/pub/libtiff/tiff-%{tiff_version}.tar.gz %source set libtiff http://download.osgeo.org/libtiff/tiff-%{tiff_version}.tar.gz
# #
# Prepare the source code. # Prepare the source code.

View File

@ -17,15 +17,16 @@ URL: http://git.savannah.gnu.org/cgit/lwip.git
# #
# LWIP Source # LWIP Source
# #
%source set lwip git://git.sv.gnu.org/lwip.git?fetch?reset=hard?branch=master?checkout=c2ebf5544b4268eac9b32c7f3a689ff646d96eef %source set lwip http://git.savannah.gnu.org/cgit/lwip.git/snapshot/lwip-%{lwip_version}.tar.gz
# #
# Prepare the source code. # Prepare the source code.
# #
%prep %prep
build_top=$(pwd) build_top=$(pwd)
source_dir_lwip="%{lwip_version}" source_dir_lwip="lwip-%{lwip_version}"
%source setup lwip -q -n %{lwip_version} %source setup lwip -q -n lwip-%{lwip_version}
%patch setup lwip -p1 %patch setup lwip -p1
cd ${build_top} cd ${build_top}
@ -40,13 +41,13 @@ URL: http://git.savannah.gnu.org/cgit/lwip.git
%{host_build_flags} %{host_build_flags}
cd ${build_top}/%{lwip_version} cd ${build_top}/lwip-%{lwip_version}
export RTEMS_MAKEFILE_PATH=%{_exec_prefix} export RTEMS_MAKEFILE_PATH=%{_exec_prefix}
%{__make} all %{__make} all
# cd ${build_top} # cd ${build_top}
#%install #%install
build_top=$(pwd)/%{lwip_version} build_top=$(pwd)/lwip-%{lwip_version}
%{__make} install %{__make} install

View File

@ -8,16 +8,16 @@
%define release 1 %define release 1
%endif %endif
Name: microwindows-v%{microwindows_version}-%{_host}-%{release} Name: microwindows-%{microwindows_version}-%{_host}-%{release}
Summary: microwindows is an Open Source Window System Summary: microwindows is an Open Source Window System
Version: %{microwindows_version} Version: %{microwindows_version}
Release: %{release} Release: %{release}
URL: http://www.microwindows.org/ URL: http://www.microwindows.org/
# #
# microwindows Source # microwindows Source
# #
%source set microwindows ftp://microwindows.censoft.com/pub/microwindows/microwindows-src-%{microwindows_version}.tar.gz %source set microwindows --rsb-file=microwindows-%{microwindows_version}.tar.gz https://codeload.github.com/ghaerr/microwindows/tar.gz/%{microwindows_version}
# #
# Prepare the source code. # Prepare the source code.
@ -25,8 +25,8 @@ URL: http://www.microwindows.org/
%prep %prep
build_top=$(pwd) build_top=$(pwd)
source_dir_microwindows="microwin" source_dir_microwindows="microwindows-%{microwindows_version}"
%source setup microwindows -q -n microwin %source setup microwindows -q -n microwindows-%{microwindows_version}
%patch setup microwindows -p1 %patch setup microwindows -p1
cd ${build_top} cd ${build_top}

View File

@ -43,6 +43,7 @@ URL: http://www.net-snmp.org/
CFLAGS="${CFLAGS} %{net_snmp_cflags}" CFLAGS="${CFLAGS} %{net_snmp_cflags}"
LIBS="-lbsd -lm -lz -lrtemsdefaultconfig" \
../${source_dir_net_snmp}/configure \ ../${source_dir_net_snmp}/configure \
--host=%{_host} \ --host=%{_host} \
--prefix=%{_prefix} \ --prefix=%{_prefix} \

View File

@ -17,7 +17,7 @@ URL: http://www.t1lib.org/
# #
# t1lib Source # t1lib Source
# #
%source set t1lib ftp://ftp.netbsd.org/pub/pkgsrc/distfiles/t1lib-%{t1lib_version}.tar.gz %source set t1lib http://ftp.netbsd.org/pub/pkgsrc/distfiles/t1lib-%{t1lib_version}.tar.gz
# #
# Prepare the source code. # Prepare the source code.

View File

@ -64,14 +64,16 @@ _uid: none, convert, '%(%{__id_u} -n)'
# Default flags that can be overridded to supply specific host or build # Default flags that can be overridded to supply specific host or build
# flags and include paths to the tools. The host is the final platform # flags and include paths to the tools. The host is the final platform
# the tools will run on and build is the host building the tools. # the tools will run on and build is the host building the tools.
host_cflags: none, convert, '-O2 -pipe' host_cflags: none, convert, '-O2 -g -pipe'
host_cxxflags: none, convert, '-O2 -pipe' host_cxxflags: none, convert, '-O2 -g -pipe'
host_ldflags: none, convert, '' host_ldflags: none, convert, ''
host_includes: none, convert, '' host_includes: none, convert, ''
build_cflags: none, convert, '-O2 -pipe' host_libs: none, convert, ''
build_cxxflags: none, convert, '-O2 -pipe' build_cflags: none, convert, '-O2 -g -pipe'
build_cxxflags: none, convert, '-O2 -g -pipe'
build_ldflags: none, convert, '' build_ldflags: none, convert, ''
build_includes: none, convert, '' build_includes: none, convert, ''
build_libs: none, convert, ''
# Extra path a platform can override. # Extra path a platform can override.
_extra_path: none, none, '%{_sbdir}' _extra_path: none, none, '%{_sbdir}'
@ -203,19 +205,22 @@ SB_SOURCE_DIR="%{_sourcedir}"
SB_BUILD_DIR="%{_builddir}" SB_BUILD_DIR="%{_builddir}"
# host == build, use build; host != build, host uses host and build uses build # host == build, use build; host != build, host uses host and build uses build
SB_HOST_CPPFLAGS="%{host_includes}" SB_HOST_CPPFLAGS="%{host_includes}"
SB_HOST_CFLAGS="%{host_cflags} %{host_includes}" # Optionally do not add includes to c/cxx flags as newer configure's complain
SB_HOST_CXXFLAGS="%{host_cxxflags} %{host_includes}" SB_HOST_CFLAGS="%{host_cflags} %{!?host_cflags_no_includes %{host_includes}}"
SB_HOST_CXXFLAGS="%{host_cxxflags} %{!?host_cflags_no_includes %{host_includes}}"
SB_HOST_LDFLAGS="%{host_ldflags} %{?_tmproot:-L%{_tmproot}/${SB_PREFIX_CLEAN}/lib}" SB_HOST_LDFLAGS="%{host_ldflags} %{?_tmproot:-L%{_tmproot}/${SB_PREFIX_CLEAN}/lib}"
SB_HOST_LIBS="%{host_libs}"
SB_BUILD_CFLAGS="%{build_cflags} %{?_tmproot:-I%{_tmproot}/${SB_PREFIX_CLEAN}/include}" SB_BUILD_CFLAGS="%{build_cflags} %{?_tmproot:-I%{_tmproot}/${SB_PREFIX_CLEAN}/include}"
SB_BUILD_CXXFLAGS="%{build_cxxflags} %{?_tmproot:-I%{_tmproot}/${SB_PREFIX_CLEAN}/include}" SB_BUILD_CXXFLAGS="%{build_cxxflags} %{?_tmproot:-I%{_tmproot}/${SB_PREFIX_CLEAN}/include}"
SB_BUILD_LDFLAGS="%{build_ldflags} %{?_tmproot:-L%{_tmproot}/${SB_PREFIX_CLEAN}/lib}" SB_BUILD_LDFLAGS="%{build_ldflags} %{?_tmproot:-L%{_tmproot}/${SB_PREFIX_CLEAN}/lib}"
SB_BUILD_LBS="%{build_libs}"
SB_CFLAGS="${SB_BUILD_CFLAGS} %{build_includes}" SB_CFLAGS="${SB_BUILD_CFLAGS} %{build_includes}"
SB_CXXFLAGS="${SB_BUILD_CXXFLAGS} %{build_includes}" SB_CXXFLAGS="${SB_BUILD_CXXFLAGS} %{build_includes}"
SB_ARCH="%{_arch}" SB_ARCH="%{_arch}"
SB_OS="%{_os}" SB_OS="%{_os}"
export SB_SOURCE_DIR SB_BUILD_DIR SB_ARCH SB_OS export SB_SOURCE_DIR SB_BUILD_DIR SB_ARCH SB_OS
export SB_HOST_CPPFLAGS SB_HOST_CFLAGS SB_HOST_CXXFLAGS SB_HOST_LDFLAGS export SB_HOST_CPPFLAGS SB_HOST_CFLAGS SB_HOST_CXXFLAGS SB_HOST_LDFLAGS SB_HOST_LIBS
export SB_BUILD_CFLAGS SB_BUILD_CXXFLAGS SB_BUILD_LDFLAGS export SB_BUILD_CFLAGS SB_BUILD_CXXFLAGS SB_BUILD_LDFLAGS SB_BUILD_LIBS
export SB_CFLAGS SB_CXXFLAGS export SB_CFLAGS SB_CXXFLAGS
# Documentation # Documentation
SB_DOC_DIR="%{_docdir}" SB_DOC_DIR="%{_docdir}"
@ -326,11 +331,13 @@ if test "%{_build}" != "%{_host}" ; then
CFLAGS="${SB_HOST_CFLAGS}" CFLAGS="${SB_HOST_CFLAGS}"
CXXFLAGS="${SB_HOST_CXXFLAGS}" CXXFLAGS="${SB_HOST_CXXFLAGS}"
LDFLAGS="${SB_HOST_LDFLAGS}" LDFLAGS="${SB_HOST_LDFLAGS}"
LIBS="${SB_HOST_LIBS}"
# Host # Host
CPPFLAGS_FOR_HOST="${SB_HOST_CPPFLAGS}" CPPFLAGS_FOR_HOST="${SB_HOST_CPPFLAGS}"
CFLAGS_FOR_HOST="${SB_HOST_CFLAGS}" CFLAGS_FOR_HOST="${SB_HOST_CFLAGS}"
CXXFLAGS_FOR_HOST="${SB_HOST_CXXFLAGS}" CXXFLAGS_FOR_HOST="${SB_HOST_CXXFLAGS}"
LDFLAGS_FOR_HOST="${SB_HOST_LDFLAGS}" LDFLAGS_FOR_HOST="${SB_HOST_LDFLAGS}"
LIBS_FOR_HOST="${SB_HOST_LIBS}"
CXXFLAGS_FOR_HOST="${SB_HOST_CFLAGS}" CXXFLAGS_FOR_HOST="${SB_HOST_CFLAGS}"
CC_FOR_HOST=$(echo "%{_host_cc} ${SB_HOST_CFLAGS}" | sed -e 's,-std=gnu99 ,,') CC_FOR_HOST=$(echo "%{_host_cc} ${SB_HOST_CFLAGS}" | sed -e 's,-std=gnu99 ,,')
CXX_FOR_HOST=$(echo "%{_host_cxx} ${SB_HOST_CXXFLAGS}" | sed -e 's,-std=gnu99 ,,') CXX_FOR_HOST=$(echo "%{_host_cxx} ${SB_HOST_CXXFLAGS}" | sed -e 's,-std=gnu99 ,,')
@ -338,30 +345,33 @@ if test "%{_build}" != "%{_host}" ; then
CFLAGS_FOR_BUILD="${SB_BUILD_CFLAGS}" CFLAGS_FOR_BUILD="${SB_BUILD_CFLAGS}"
CXXFLAGS_FOR_BUILD="${SB_BUILD_CXXFLAGS}" CXXFLAGS_FOR_BUILD="${SB_BUILD_CXXFLAGS}"
LDFLAGS_FOR_BUILD="${SB_BUILD_LDFLAGS}" LDFLAGS_FOR_BUILD="${SB_BUILD_LDFLAGS}"
LIBS_FOR_BUILD="${SB_BUILD_LIBS}"
CXXFLAGS_FOR_BUILD="${SB_BUILD_CFLAGS}" CXXFLAGS_FOR_BUILD="${SB_BUILD_CFLAGS}"
CC_FOR_BUILD=$(echo "%{__cc} ${SB_BUILD_CFLAGS}" | sed -e 's,-std=gnu99 ,,') CC_FOR_BUILD=$(echo "%{__cc} ${SB_BUILD_CFLAGS}" | sed -e 's,-std=gnu99 ,,')
CXX_FOR_BUILD=$(echo "%{__cxx} ${SB_BUILD_CXXFLAGS}" | sed -e 's,-std=gnu99 ,,') CXX_FOR_BUILD=$(echo "%{__cxx} ${SB_BUILD_CXXFLAGS}" | sed -e 's,-std=gnu99 ,,')
else else
LDFLAGS="${SB_BUILD_LDFLAGS}" LDFLAGS="${SB_BUILD_LDFLAGS}"
LIBS="${SB_BUILD_LIBS}"
CC=$(echo "%{__cc} ${SB_BUILD_CFLAGS}" | sed -e 's,-std=gnu99 ,,') CC=$(echo "%{__cc} ${SB_BUILD_CFLAGS}" | sed -e 's,-std=gnu99 ,,')
CXX=$(echo "%{__cxx} ${SB_BUILD_CXXFLAGS}" | sed -e 's,-std=gnu99 ,,') CXX=$(echo "%{__cxx} ${SB_BUILD_CXXFLAGS}" | sed -e 's,-std=gnu99 ,,')
CC_FOR_BUILD=${CC} CC_FOR_BUILD=${CC}
CXX_FOR_BUILD=${CXX} CXX_FOR_BUILD=${CXX}
fi fi
export CC CXX CPPFLAGS CFLAGS CXXFLAGS LDFLAGS export CC CXX CPPFLAGS CFLAGS CXXFLAGS LDFLAGS LIBS
export CC_FOR_HOST CXX_FOR_HOST CPPFLAGS_FOR_HOST CFLAGS_FOR_HOST CXXFLAGS_FOR_HOST LDFLAGS_FOR_HOST export CC_FOR_HOST CXX_FOR_HOST CPPFLAGS_FOR_HOST CFLAGS_FOR_HOST CXXFLAGS_FOR_HOST LDFLAGS_FOR_HOST LIBS_FOR_HOST
export CC_FOR_BUILD CXX_FOR_BUILD CFLAGS_FOR_BUILD CXXFLAGS_FOR_BUILD LDFLAGS_FOR_BUILD''' export CC_FOR_BUILD CXX_FOR_BUILD CFLAGS_FOR_BUILD CXXFLAGS_FOR_BUILD LDFLAGS_FOR_BUILD LIBS_FOR_BUILS'''
# Build/build flags. # Build/build flags.
build_build_flags: none, none, ''' build_build_flags: none, none, '''
# Build and build flags means force build == host # Build and build flags means force build == host
# gcc is not ready to be compiled with -std=gnu99 # gcc is not ready to be compiled with -std=gnu99
LDFLAGS="${SB_HOST_LDFLAGS}" LDFLAGS="${SB_HOST_LDFLAGS}"
LIBS="${SB_HOST_LIBS}"
CC=$(echo "%{__cc} ${SB_CFLAGS}" | sed -e 's,-std=gnu99 ,,') CC=$(echo "%{__cc} ${SB_CFLAGS}" | sed -e 's,-std=gnu99 ,,')
CXX=$(echo "%{__cxx} ${SB_CXXFLAGS}" | sed -e 's,-std=gnu99 ,,') CXX=$(echo "%{__cxx} ${SB_CXXFLAGS}" | sed -e 's,-std=gnu99 ,,')
CC_FOR_BUILD=${CC} CC_FOR_BUILD=${CC}
CXX_FOR_BUILD=${CXX} CXX_FOR_BUILD=${CXX}
export CC CXX CC_FOR_BUILD CXX_FOR_BUILD CFLAGS LDFLAGS''' export CC CXX CC_FOR_BUILD CXX_FOR_BUILD CFLAGS LDFLAGS LIBS'''
# Default package settings # Default package settings
_forced_static: none, none, '-Xlinker -Bstatic ${LIBS_STATIC} -Xlinker -Bdynamic' _forced_static: none, none, '-Xlinker -Bstatic ${LIBS_STATIC} -Xlinker -Bdynamic'

View File

@ -420,10 +420,14 @@ class command_line:
_host = self.defaults.expand('%{_host}') _host = self.defaults.expand('%{_host}')
_build = self.defaults.expand('%{_build}') _build = self.defaults.expand('%{_build}')
_target = self.defaults.expand('%{_target}') _target = self.defaults.expand('%{_target}')
if len(_target): #
return len(_host) and len(_build) and (_target) and \ # This has been removed to fix how RTEMS 3rd party libraries
_host != _build and _host != _target # are built. This may break Cxc tools builds.
return len(_host) and len(_build) and _host != _build #
# if len(_target):
# return len(_host) and len(_build) and (_target) and \
# _host != _build and _host != _target
return len(_target) and len(_host) and len(_build) and _host != _build
def user_macros(self): def user_macros(self):
# #

View File

@ -141,7 +141,7 @@ fi
# Library file # Library file
# #
if [ ${op} = "library" ]; then if [ ${op} = "library" ]; then
if [ "${OS}" = "Windows_NT" -a "${OSTYPE}" -ne "cygwin" ]; then if [ "${OS}" = "Windows_NT" -a "${OSTYPE}" != "cygwin" ]; then
sep=';' sep=';'
else else
sep=':' sep=':'

View File

@ -413,7 +413,7 @@ class buildset:
# Dump post build macros. # Dump post build macros.
# #
log.trace('_bset: macros post-build') log.trace('_bset: macros post-build')
log.trace(str(macros)) log.trace(str(b.macros))
else: else:
raise error.general('invalid config type: %s' % (configs[s])) raise error.general('invalid config type: %s' % (configs[s]))
except error.general as gerr: except error.general as gerr: