# Tests by default. No tests: rpm -ba --define 'dotests 0' *.spec
%{!?dotests: %define dotests 1}

Summary:	Finds duplicate files in a given set of directories
Name:		fdupes
Version:	2.0.0
Release:	1
License:	MIT
Group:		Applications/File
URL:		http://netdial.caribe.net/~adrian2/fdupes.html
Source0:	http://netdial.caribe.net/~adrian2/programs/fdupes/%{name}-%{version}.tar.gz

Patch0:         %{name}-2.0.0-getopt.patch

Patch1:         %{name}-2.0.0-macro.patch

Patch2:         %{name}-2.0.0-md5.patch

Requires:	ncurses >= 6.1-2
Requires:       pcre2 >= 10.34-1

BuildRequires:	patch, coreutils, make

%description
FDUPES is a program for identifying duplicate files residing within specified
directories.


%prep
%setup -q
export PATH=/opt/freeware/bin:$PATH
%patch0
%patch1
%patch2

# Duplicate source for 32 & 64 bits
rm -rf /tmp/%{name}-%{version}-32bit
mkdir  /tmp/%{name}-%{version}-32bit
mv *   /tmp/%{name}-%{version}-32bit
mkdir 32bit
mv     /tmp/%{name}-%{version}-32bit/* 32bit
rm -rf /tmp/%{name}-%{version}-32bit
mkdir 64bit
cp -rp 32bit/* 64bit/


%build
# first build the 64-bit version
cd 64bit
export LDFLAGS="-Wl,-blibpath:/opt/freeware/lib64:/opt/freeware/lib:/usr/lib:/lib -L/opt/freeware/lib64 -L/opt/freeware/lib -lcurses -lncurses"
export CC="gcc"
export CFLAGS=" -maix64 -O2 -I/opt/freeware/include/ncurses"
export OBJECT_MODE=64
./configure \
   --prefix=%{_prefix} \
   --mandir=%{_mandir} 

gmake %{?_smp_mflags} COMPILER_OPTIONS="${CFLAGS}"
if [ "%{dotests}" == 1 ]
then
    (gmake -k check || true)
fi


# now build the 32-bit version
cd ../32bit
export LDFLAGS="-Wl,-blibpath:/opt/freeware/lib:/usr/lib:/lib -Wl,-bmaxdata:0x80000000 -L/opt/freeware/lib -lcurses -lncurses"
export CC="gcc"
export CFLAGS=" -maix32 -O2 -D_LARGE_FILES -I/opt/freeware/include/ncurses"
export OBJECT_MODE=32
./configure \
    --prefix=%{_prefix} \
    --mandir=%{_mandir}

gmake %{?_smp_mflags} COMPILER_OPTIONS="${CFLAGS}"
if [ "%{dotests}" == 1 ]
then
    (gmake -k check || true)
fi


%install
[ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf ${RPM_BUILD_ROOT}


cd 64bit

export AR="/usr/bin/ar -X64"
export OBJECT_MODE=64
make DESTDIR=${RPM_BUILD_ROOT} install
/usr/bin/strip ${RPM_BUILD_ROOT}%{_bindir}/* || :
(
    cd  ${RPM_BUILD_ROOT}/%{_prefix}/bin
    for fic in $(ls -1| grep -v -e _32 -e _64)
    do
        mv $fic "$fic"_64
    done
)

cd ../32bit
export AR="/usr/bin/ar -X32"
export OBJECT_MODE=32
make DESTDIR=${RPM_BUILD_ROOT} install
/usr/bin/strip ${RPM_BUILD_ROOT}%{_bindir}/* || :
(
    cd  ${RPM_BUILD_ROOT}/%{_prefix}/bin
    for fic in $(ls -1| grep -v -e _32 -e _64)
    do
        mv $fic "$fic"_32
        ln -sf "$fic"_64 $fic
    done
)


cd ${RPM_BUILD_ROOT}
mkdir -p usr/bin
cd usr/bin
ln -sf ../..%{_bindir}/* .

%check
cd 64bit
./%{name} testdir
./%{name} -r testdir
cd ../32bit
./%{name} testdir
./%{name} -r testdir


%clean
[ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf ${RPM_BUILD_ROOT}


%files
%defattr(-,root,system,-)
%doc 32bit/CHANGES 32bit/CONTRIBUTORS 32bit/README 32bit/INSTALL
%{_bindir}/*
%{_mandir}/man1/%{name}.1*
/usr/bin/*

%changelog
* Tue Mar 10 2020 Rishita Saha <risaha16@in.ibm.com> 2.0.0-1
- Update to version 2.0.0

* Wed May 25 2016 Ravi Hirekurabar <rhirekur@in.ibm.com> 1.51-1
- updated to version 1.51

* Wed Apr 13 2011 Michael Perzl <michael@perzl.org> - 1.50-1.PR2
- first version for AIX5L v5.1 and higher
