diff -uNr pacman-6.0.0/scripts/makepkg.sh.in pacman-termux/scripts/makepkg.sh.in
--- pacman-6.0.0/scripts/makepkg.sh.in	2021-05-20 06:38:45.954786500 +0300
+++ pacman-termux/scripts/makepkg.sh.in	2021-10-04 16:00:39.000000000 +0300
@@ -26,7 +26,7 @@
 
 # makepkg uses quite a few external programs during its execution. You
 # need to have at least the following installed for makepkg to function:
-#   awk, bsdtar (libarchive), bzip2, coreutils, fakeroot, file, find (findutils),
+#   awk, bsdtar (libarchive), bzip2, coreutils, file, find (findutils),
 #   gettext, gpg, grep, gzip, sed, tput (ncurses), xz
 
 # gettext initialization
@@ -59,7 +59,7 @@
 GENINTEG=0
 HOLDVER=0
 IGNOREARCH=0
-INFAKEROOT=0
+PKGCREATION=0
 INSTALL=0
 LOGGING=0
 NEEDED=0
@@ -105,7 +105,7 @@
 trap_exit() {
 	local signal=$1; shift
 
-	if (( ! INFAKEROOT )); then
+	if (( ! PKGCREATION )); then
 		echo
 		error "$@"
 	fi
@@ -123,7 +123,7 @@
 clean_up() {
 	local EXIT_CODE=$?
 
-	if (( INFAKEROOT )); then
+	if (( PKGCREATION )); then
 		# Don't clean up when leaving fakeroot, we're not done yet.
 		return 0
 	fi
@@ -179,9 +179,9 @@
 	fi
 }
 
-enter_fakeroot() {
-	msg "$(gettext "Entering %s environment...")" "fakeroot"
-	fakeroot -- bash -$- "${BASH_SOURCE[0]}" -F "${ARGLIST[@]}" || exit $?
+pkg_creation() {
+	msg "$(gettext "Package creation...")"
+	"${BASH_SOURCE[0]}" -F "${ARGLIST[@]}" || exit $?
 }
 
 # Automatically update pkgver variable if a pkgver() function is provided
@@ -237,10 +237,6 @@
 			else
 				cmd=("${PACMAN_AUTH[@]}" "${cmd[@]}")
 			fi
-		elif type -p sudo >/dev/null; then
-			cmd=(sudo "${cmd[@]}")
-		else
-			cmd=(su root -c "$cmdescape")
 		fi
 		local lockfile="$(pacman-conf DBPath)/db.lck"
 		while [[ -f $lockfile ]]; do
@@ -597,7 +593,6 @@
 	merge_arch_attrs
 
 	printf "# Generated by makepkg %s\n" "$makepkg_version"
-	printf "# using %s\n" "$(fakeroot -v)"
 
 	write_kv_pair "pkgname" "$pkgname"
 	write_kv_pair "pkgbase" "$pkgbase"
@@ -939,7 +934,7 @@
 
 run_single_packaging() {
 	local pkgdir="$pkgdirbase/$pkgname"
-	mkdir "$pkgdir"
+	mkdir -p "$terdir"
 	if [[ -n $1 ]] || (( PKGFUNC )); then
 		run_package $1
 	fi
@@ -1071,7 +1066,7 @@
 		-d|--nodeps)      NODEPS=1 ;;
 		-e|--noextract)   NOEXTRACT=1 ;;
 		-f|--force)       FORCE=1 ;;
-		-F)               INFAKEROOT=1 ;;
+		-F)               PKGCREATION=1 ;;
 		# generating integrity checks does not depend on architecture
 		-g|--geninteg)    BUILDPKG=0 GENINTEG=1 IGNOREARCH=1;;
 		--holdver)        HOLDVER=1 ;;
@@ -1186,17 +1181,10 @@
 	exit $E_FS_PERMISSIONS
 fi
 
-if (( ! INFAKEROOT )); then
-	if (( EUID == 0 )); then
-		error "$(gettext "Running %s as root is not allowed as it can cause permanent,\n\
+if (( EUID == 0 )); then
+	error "$(gettext "Running %s as root is not allowed as it can cause permanent,\n\
 catastrophic damage to your system.")" "makepkg"
-		exit $E_ROOT
-	fi
-else
-	if [[ -z $FAKEROOTKEY ]]; then
-		error "$(gettext "Do not use the %s option. This option is only for internal use by %s.")" "'-F'" "makepkg"
-		exit $E_INVALID_OPTION
-	fi
+	exit $E_ROOT
 fi
 
 unset pkgname "${pkgbuild_schema_strings[@]}" "${pkgbuild_schema_arrays[@]}"
@@ -1252,6 +1240,13 @@
 # set pkgdir to something "sensible" for (not recommended) use during build()
 pkgdir="$pkgdirbase/$pkgbase"
 
+# the second pkgdir but from the termux system directory
+terdir="$pkgdir/@TERMUX_BASE_DIR@"
+
+# adding home and prefix to compile correctly
+prefix="@TERMUX_PREFIX@"
+home="@TERMUX_HOME@"
+
 if (( GENINTEG )); then
 	mkdir -p "$srcdir"
 	chmod a-s "$srcdir"
@@ -1320,10 +1315,10 @@
 fi
 
 # Run the bare minimum in fakeroot
-if (( INFAKEROOT )); then
+if (( PKGCREATION )); then
 	if (( SOURCEONLY )); then
 		create_srcpackage
-		msg "$(gettext "Leaving %s environment.")" "fakeroot"
+		msg "$(gettext "Package creation.")"
 		exit $E_OK
 	fi
 
@@ -1338,7 +1333,7 @@
 
 	create_debug_package
 
-	msg "$(gettext "Leaving %s environment.")" "fakeroot"
+	msg "$(gettext "Package creation.")"
 	exit $E_OK
 fi
 
@@ -1365,7 +1360,7 @@
 	check_source_integrity all
 	cd_safe "$startdir"
 
-	enter_fakeroot
+	pkg_creation
 
 	if [[ $SIGNPKG = 'y' ]]; then
 		msg "$(gettext "Signing package...")"
@@ -1467,7 +1462,7 @@
 		cd_safe "$startdir"
 	fi
 
-	enter_fakeroot
+	pkg_creation
 
 	create_package_signatures || exit $E_PRETTY_BAD_PRIVACY
 fi
