Both Limdep and Stata can do it also.
Limdep:
The command for the GLS estimator is:
SURE ; Lhs = y1, y2, ..., yM (Your list of Lhs variables)
; Eq1 = Rhs variables for first equation
; Eq2 = Rhs variables for second equation
; ...
; EqM = Rhs variables for M'th equation $
Maximum Likelihood Estimation of Constrained Systems
The following is for models in which the constraints are equalities of the parameters across (or within) equations. (For other types, use constrained FGLS.)
SURE ; Lhs = list of dependent variables
; Rhs = full list of independent variables
; Labels = labels to use for the parameters
; Pattern = the parameter matrix $
Stata:
sureg (depvar1 varlist1) (depvar2 varlist2) ... (depvarN varlistN) [ if] [in] [weight]