$zic->AddDirResourceFile('src/timezone');
        $zic->AddReference($libpgcommon, $libpgport);
 
-       if ($solution->{options}->{xml})
-       {
-               $contrib_extraincludes->{'pgxml'} = [
-                       $solution->{options}->{xml} . '/include',
-                       $solution->{options}->{xslt} . '/include',
-                       $solution->{options}->{iconv} . '/include' ];
-
-               $contrib_extralibs->{'pgxml'} = [
-                       $solution->{options}->{xml} . '/lib/libxml2.lib',
-                       $solution->{options}->{xslt} . '/lib/libxslt.lib' ];
-       }
-       else
+       if (!$solution->{options}->{xml})
        {
                push @contrib_excludes, 'xml2';
        }
                push @contrib_excludes, 'sslinfo';
        }
 
-       if ($solution->{options}->{uuid})
-       {
-               $contrib_extraincludes->{'uuid-ossp'} =
-                 [ $solution->{options}->{uuid} . '/include' ];
-               $contrib_extralibs->{'uuid-ossp'} =
-                 [ $solution->{options}->{uuid} . '/lib/uuid.lib' ];
-       }
-       else
+       if (!$solution->{options}->{uuid})
        {
                push @contrib_excludes, 'uuid-ossp';
        }
 
          unless exists $options->{float8byval};
        die "float8byval not permitted on 32 bit platforms"
          if $options->{float8byval} && $bits == 32;
-       if ($options->{xml})
+       if ($options->{xslt} && !$options->{xml})
        {
-               if (!($options->{xslt} && $options->{iconv}))
-               {
-                       die "XML requires both XSLT and ICONV\n";
-               }
+               die "XSLT requires XML\n";
        }
        $options->{blocksize} = 8
          unless $options->{blocksize};    # undef or 0 means default
                $proj->AddIncludeDir($self->{options}->{xslt} . '\include');
                $proj->AddLibrary($self->{options}->{xslt} . '\lib\libxslt.lib');
        }
+       if ($self->{options}->{uuid})
+       {
+               $proj->AddIncludeDir($self->{options}->{uuid} . '\include');
+               $proj->AddLibrary($self->{options}->{uuid} . '\lib\uuid.lib');
+       }
        return $proj;
 }