Summary: The Motif runtime components. Name: motif Version: 2.3.8 Release: 12%{?dist}2a Prefix: /opt/X11 BuildRoot: %{_tmppath}/%{name}-%{version}-root License: GNU LESSER GENERAL PUBLIC LICENSE Group: User Interface/X Url: http://sourceforge.net/projects/motif/ #Source: ftp://ftp.ics.com/pub/Products/Motif/om2.2.3/src/openMotif-%{version}.tar.gz Source: motif-%{version}.tar.gz Patch0: motif-2.3.6-osx.patch Patch1: motif-2.3.4-bindings.patch Patch2: motif-2.3.8-macosx12.patch #BuildPrereq: build-essential XOrg-devel flex byacc Obsoletes: %{name}-devel < 2.2.2-0vl5 Obsoletes: openMotif <= 2.3.3 Conflicts: lesstif-clients lesstif-mwm #BuildPrereq: automake14 Provides: openMotif = %{version}-%{release} BuildArch: fat Vendor: OSX WorkShop Distribution: OSX WorkShop %description The base package for the industry standard user interface toolkit for the X Window System as enhanced by ICS and others for better integration with GNOME and KDE desktop environments. The base package consists of the Open Motif runtime components -- shared libraries and mwm (Motif Window Manager). %package devel Summary: The Open Motif development libraries and tools. Group: Development/Libraries Requires(pre,post): %{name} = %{version}-%{release} Obsoletes: openMotif-devel <= 2.3.3 Conflicts: lesstif lesstif-devel lesstif-static Provides: openMotif-devel = %{version}-%{release} %description devel The development package includes all of the Open Motif header files, archive libraries, the UIL (User Interface Language) compiler, examples and ICS enhancements for greater integration with GNOME and KDE desktop environments. #%package demos #Summary: Open Motif example code and demo programs. #Group: Development/Libraries #Requires: %{name} = %{version}-%{release} # #%description demos #This is the Open Motif example code and demo programs. %prep %setup -q -c %{name}-%{version} mv %{name}-%{version} ARM64 pushd ARM64 #%patch0 -p0 -b .osx for i in `grep -rl -e"-fno-tree-ter" *` do perl -pi -e 's@ -fno-tree-ter@@g' $i done glibtoolize --force --automake aclocal -I . autoconf autoheader automake --foreign --include-deps --add-missing %patch1 -p1 -b .bindings %patch2 -p1 -b .macosx12 popd cp -a ARM64 X86_64 %build pushd ARM64 export CPPFLAGS="-O3 -arch arm64 -I%{_includedir} -I/opt/X11/include" export CFLAGS="-O3 -arch arm64 -Wno-error=implicit-function-declaration -I%{_includedir}" export LDFLAGS="-arch arm64 -L%{_libdir} -L/opt/X11/lib" export CXXFLAGS="$CFLAGS" export FFLAGS="$CFLAGS" %configure \ --host=%{_rpm_platform_arm64} \ --build=%{_rpm_platform_arm64} \ --target=%{_rpm_platform_arm64} \ --prefix=%{prefix} \ --libdir=%{prefix}/%{_lib} \ --mandir=%{_datadir}/man \ --enable-xft \ --enable-jpeg --enable-png # do not use rpath perl -pi -e 's|hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=\"-L\\\$libdir\"|g;' libtool perl -pi -e 's@-dynamiclib@-dynamiclib -arch arm64@g' libtool export DYLD_LIBRARY_PATH=`pwd`/lib/Mrm/.libs:`pwd`/lib/Xm/.libs make clean make %{?_smp_mflags} popd pushd x86_64 export CPPFLAGS="-O3 -arch x86_64 -I%{_includedir} -I/opt/X11/include" export CFLAGS="-O3 -arch x86_64 -Wno-error=implicit-function-declaration -I%{_includedir}" export LDFLAGS="-arch x86_64 -L%{_libdir} -L/opt/X11/lib" export CXXFLAGS="$CFLAGS" export FFLAGS="$CFLAGS" %configure \ --host=%{_rpm_platform_x86_64} \ --build=%{_rpm_platform_x86_64} \ --target=%{_rpm_platform_x86_64} \ --prefix=%{prefix} \ --libdir=%{prefix}/%{_lib} \ --mandir=%{_datadir}/man \ --enable-xft \ --enable-jpeg --enable-png # do not use rpath perl -pi -e 's|hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=\"-L\\\$libdir\"|g;' libtool perl -pi -e 's@-dynamiclib@-dynamiclib -arch x86_64@g' libtool export DYLD_LIBRARY_PATH=`pwd`/lib/Mrm/.libs:`pwd`/lib/Xm/.libs make clean make %{?_smp_mflags} popd %install rm -rf %{buildroot} PWD=`pwd` pushd ARM64 rm -rf ${PWD}-root mkdir -p ${PWD}-root export LD_LIBRARY_PATH=`pwd`/lib/Mrm/.libs:`pwd`/lib/Xm/.libs make DESTDIR=${PWD}-root prefix=%{_prefix} install popd pushd x86_64 rm -rf ${PWD}-root mkdir -p ${PWD}-root export LD_LIBRARY_PATH=`pwd`/lib/Mrm/.libs:`pwd`/lib/Xm/.libs make DESTDIR=${PWD}-root prefix=%{_prefix} install cp -p BUGREPORT COPYING ChangeLog INSTALL.configure README RELEASE RELNOTES .. popd ## Make Universal Binaries filelist=$(find ./ARM64-root -type f | xargs file | sed -e 's,^\./ARM64-root/,,g' | \ grep -E \(Mach-O\)\|\(ar\ archive\) |sed -e 's,:.*,,g' -e '/\for\ architecture/d') for i in $filelist do /usr/bin/lipo -create ARM64-root/$i X86_64-root/$i -output `basename $i` && \ (cp -f `basename $i` ARM64-root/$i) || : done # check header files for i in `find ARM64-root -name "*.h" -type f` do TARGET=`echo $i | sed -e "s,.*ARM64-root,,"` TEMP=`diff -u ARM64-root/$TARGET X86_64-root/$TARGET > /dev/null || echo different` if [ -n "$TEMP" ]; then mv X86_64-root/$TARGET ARM64-root/${TARGET%.*}-x86_64.h mv ARM64-root/$TARGET ARM64-root/${TARGET%.*}-arm64.h FILE=${TARGET##*/} FILE=${FILE%.*} cat < ARM64-root/$TARGET #if defined (__arm64__) #include "${FILE}-arm64.h" #elif defined( __x86_64__ ) #include "${FILE}-x86_64.h" #endif EOF fi done # install mkdir -p %{buildroot} tar cf - -C ARM64-root . | tar xpf - -C %{buildroot} mkdir -p %{buildroot}%{prefix}/include pushd %{buildroot}%{prefix}/include ln -s %{_includedir}/Xm . ln -s %{_includedir}/Mrm . ln -s %{_includedir}/uil . popd rm -f %{buildroot}%{_libdir}/lib*.la rm -f %{buildroot}%{prefix}/lib/lib*.la rm -rf %{buildroot}%{_mandir}/manm rm -rf %{buildroot}%{_datadir}/Xm %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-, root,wheel) %doc BUGREPORT COPYING ChangeLog INSTALL.configure README RELEASE RELNOTES #%{prefix}/bin/mwm #%{prefix}/bin/xmbind #%{prefix}/bin/uil %{_bindir}/mwm %{_bindir}/xmbind %{_bindir}/uil %{_includedir}/X11/bitmaps/* %{prefix}/share/X11/bindings %{prefix}/lib/libMrm.*.dylib %{prefix}/lib/libUil.*.dylib %{prefix}/lib/libXm.*.dylib %{prefix}/lib/X11/system.mwmrc %{_mandir}/man1/mwm.* %{_mandir}/man1/xmbind.* %{_mandir}/man4/* %files devel %defattr(-, root, wheel) %{prefix}/lib/libXm.dylib %{prefix}/lib/libMrm.dylib %{prefix}/lib/libUil.dylib %{prefix}/lib/*.a %{prefix}/include/Mrm %{prefix}/include/Xm %{prefix}/include/uil %{_includedir}/Xm %{_includedir}/Mrm %{_includedir}/uil %{_mandir}/man1/uil.* %{_mandir}/man3/* %{_mandir}/man5/* #%files demos #%defattr(-,root,wheel) #%{prefix}/bin/DNDDemo #%{prefix}/bin/airport #%{prefix}/bin/autopopups #%{prefix}/bin/bboxdemo #%{prefix}/bin/colordemo #%{prefix}/bin/column #%{prefix}/bin/draw #%{prefix}/bin/dropdown #%{prefix}/bin/earth #%{prefix}/bin/filemanager #%{prefix}/bin/fileview #%{prefix}/bin/fontsel #%{prefix}/bin/getsubres #%{prefix}/bin/helloint #%{prefix}/bin/hellomotif #%{prefix}/bin/i18ninput #%{prefix}/bin/iconbuttondemo #%{prefix}/bin/multilist #%{prefix}/bin/outline #%{prefix}/bin/paned #%{prefix}/bin/panner #%{prefix}/bin/periodic #%{prefix}/bin/piano #%{prefix}/bin/sampler2_0 #%{prefix}/bin/setDate #%{prefix}/bin/simpledrop #%{prefix}/bin/tabstack #%{prefix}/bin/todo #%{prefix}/bin/tooltips #%{prefix}/bin/tree #%{prefix}/bin/wsm #%{prefix}/bin/xmanimate #%{_datadir}/Xm/* %changelog * Fri Apr 8 2022 Keisuke FUJII 2.3.8-2a - 3rd build on MacOS 12 for M1 & Intel (fat) Macs - built with OSXWS 12beta and clang * Sat Feb 26 2022 Keisuke FUJII 2.3.8-1b - 2nd build on MacOS 12 for M1 Macs - built with libXt.6.0.0.dylib hand-built for arm64 - built with OSXWS 12beta and clang * Fri Jan 28 2022 Keisuke FUJII 2.3.8-1a - 1st build on MacOS 12 for M1 Macs - built with libXt.6.0.0.dylib hand-built for arm64 - built with OSXWS 11 and clang * Sun Dec 22 2019 KOBAYASHI Taizo 2.3.8-1 - new upstream release * Thu Dec 22 2016 KOBAYASHI Taizo 2.3.6-1 - new upstream release * Thu May 29 2014 KOBAYASHI Taizo 2.3.4-1 - first build