Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-ports-gnome
Path: blob/main/java/eclipse/scripts/pre-patch
16130 views
#!/bin/sh
#
# Reorg source files, reusing Linux sources as the base for FreeBSD builds.
#
LINUX_DIRS="
	eclipse.platform.swt.binaries/bundles/org.eclipse.swt.gtk.linux.*
	eclipse.platform.resources/bundles/org.eclipse.core.filesystem.linux.*
	eclipse.platform.resources/bundles/org.eclipse.core.filesystem/natives/unix/linux
	eclipse.platform.team/bundles/org.eclipse.core.net.linux.*
	eclipse.platform.team/bundles/org.eclipse.core.net/natives/unix/linux
	rt.equinox.bundles/bundles/org.eclipse.equinox.security.linux.*
	rt.equinox.binaries/org.eclipse.equinox.launcher.gtk.linux.*
	rt.equinox.framework/bundles/org.eclipse.equinox.launcher.gtk.linux.*"

rename_arch ()
{
	# Rename to FreeBSD TARGET_ARCH names
	F=$(echo $1 | sed -e s/linux/freebsd/)
	case $F in
	*.arm)
		echo $(echo $F | sed -e 's/arm/armv7/');;
	*.ppc64le)
		echo $(echo $F | sed -e 's/ppc64le/powerpc64/');;
	*.x86)
		echo $(echo $F | sed -e 's/x86/i386/');;
	*.x86_64)
		echo $(echo $F | sed -e 's/x86_64/amd64/');;
	*)
		echo ${F};;
	esac
}

cd ${WRKSRC}

for D in ${LINUX_DIRS}
do
	if [ ! -e ${D} ]
	then
		echo "ERROR: ${D} not found"
		continue
	fi

	NEWNAME=$(rename_arch ${D})
	mv ${D} ${NEWNAME}
	case ${NEWNAME} in
	*.powerpc64)
		cp -rf ${NEWNAME} `echo ${NEWNAME} | sed -e 's/powerpc64/powerpc64le/'`;;
	esac
done

# Clean up binaries
rm -rf rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/linux