Answer:
I believe He wept because of the people’s unbelief and because He felt the pain in the hearts of those He loved. A pain He could heal but only if they gave it to Him.
He wept much the same over the city of Jerusalem.
He certainly did not weep for Lazarus – He already knew a miracle was about to happen 🙂