Southern Homemade Carrot Cake

3 large eggs
2 cups sugar
¾ cup vegetable oil
¾ cup buttermilk
2 teaspoons vanilla extract
2 cups all-purpose flour
2 teaspoons baking soda
1/2 teaspoon salt
2 teaspoons ground cinnamon
2 cups grated carrot
1 (8-ounce) can crushed pineapple, drained
¾ cup  flaked coconut
1 cup chopped pecans or walnuts
Beat eggs and sugar and then add vegetable oil, buttermilk and vanilla and beat until smooth.
Combine flour, baking soda, salt and cinnamon.
Add flour mixture, beating at low speed until blended. Fold in carrot and next 3 ingredients. Pour batter into prepared cake pans.
Bake at 350° for 25 to 30 minutes or until a wooden pick inserted in center comes out clean. Drizzle Buttermilk Glaze evenly over layers; cool in pans on wire racks 15 minutes. Remove from pans, and cool completely on wire racks. Spread Cream Cheese Frosting between layers and on top and sides of cake. Sprinkle with additional chopped walnuts or pecans. Keep refrigerated until ready to serve.
Buttermilk Glaze
1 cup sugar
1 1/2 teaspoons baking soda
1/2 cup buttermilk
1/2 cup butter 
1 tablespoon light corn syrup
1 teaspoon vanilla extract
Bring first 5 ingredients to a boil in a saucepan over medium-high heat. Boil, stirring often for five minutes. Remove from heat, and stir in vanilla.
Cream Cheese Frosting
3/4 cup butter or margarine, softened 
1 (250 grams or 8 oz) package cream cheese, softened 
1 (125 grams  or 4 oz) package cream cheese, softened 
3 cups sifted powdered sugar
1 1/2 teaspoons vanilla extract
Beat butter and cream cheese at medium speed with an electric mixer until creamy. Add powdered sugar and vanilla; beat until smooth,