In a large stockpot over medium heat, lightly cook onion, carrots, celery, and garlic in olive oil until onions become translucent. Add the remaining ingredients and bring to a boil, then reduce heat and simmer 1-½ hours. Taste the stock; for a richer flavor, heat 1 hour longer or more. As the stock simmers, skim off any foam that appears on the surface and discard.
Remove the stock from the heat and discard the chicken bones, then strain the liquid through a fine strainer. Let the stock come to room temperature, then cover and refrigerate. Any fat in the stock will rise to the surface and can be easily removed with a spoon. Use or freeze extra.