Soak the eggplant cubes in salt water for 30 mins.
Meanwhile, mash tofu and beans with a fork and set aside.
Heat oil in a medium saucepan over medium heat. Add onion, carrot and celery. Cover and cook for about 10min, stirring occasionally, until softened. Add garlic and bay leaf, cook for about 30 seconds while stirring. Add previously soaked eggplant.
Add wine after increasing heat to high and boil until most of the liquid evaporates, 3 to 4 minutes. Add tomato (without the juice), basil, beans and tofu (both previously mashed with a fork) . Bring to a lively simmer and cook uncovered, stirring occasionally, until thickened, about 5-7 minutes.
Meanwhile, cook pasta in boiling water until “al dente” or 1-2 minutes less than the package directions. Drain it, add 2 tbsp olive oil. Remove the bay leaf and cloves from the sauce and add the sauce to the cooked pasta, mix.
Sprinkle with grated parmesan cheese.