Well,
For Windows Server 2012 Standard
One Windows Server 2012 Standard license can be use to :
Set up one physical instance and two virtual instances on the same physical server
If you use an other hypervisor, then you can set up two virtual instances on the same physical server.
For example : let's say you use VMware ESXi and you have 2 physical servers, then you only need 2 Windows server license to run 4 Windows servers 2012 Standard.
Plus : One Windows Server 2012 Datacenter can be use to set up as many Windows server as you want on the same physical server.
For SharePoint
You will need one license for each SharePoint server.
CAL requirements :
Scenario 1 - Intranet Deployment
- Internal users : one CAL per user/device
Scenario 2 - Extranet Deployment
- Internal users : one CAL per user/device
- External users : no CALs required
Scenario 3 - Internet Deployment
- Internal users : no CALs required
- External users : no CALs required
For SQL
Standard edition :
- Server + CAL license
- Core-based license
Enterprise edition :
For SQL, what you need to know is whether you set up the Standard or Enterprise edition.
If you go for the Standard edition, then you need one SQL CAL per user plus one Server license per SQL server.
If you go for the Enterprise edition, then you need one license per core and no CALs.