The way I choose to answer is wholly dependent on my own political views and what I personally think should be done to combat discrimination. It's very possible that you have a different opinion on these matters.
I firmly believe that civil rights should be full and equal for all individuals or members of identifiable groups, and that these rights should be under an umbrella of basic / constitutional rights that are inalienable. I believe that there can't be civil rights for one group and not another - for practical purposes, all groups and individual are in the same boat, and there can't be full rights for LGBT people if there aren't full rights for others and vice versa. This means that for example Saudi Arabia, where women's suffrage to the sham parliament was awarded only recently, probably won't further rights for LGBT people anytime soon, simply because there's no foundation for meaningful civil rights for anyone. All forms of civil rights are interdependent.
I think that the way to further LGBT rights is to further civil rights in general, preferably through a constitution that guarantees rights for all, which will then be implemented by legislators and courts. The US is a good example of this, where there are individual states that actively try to discriminate against LGBT people, but their attempts get thwarted because there is a constitution guaranteeing these rights. I know that the situation in Saudi Arabia is far from being acceptable, but all we can do is to constantly point out that what they do is wrong, and lean on them heavily to stop them from doing it, while at the same time try to promote civil rights.
A blanket boycott of Saudi Arabia wouldn't be meaningful because it's not specific enough, and it wouldn't help to promote civil rights. It's the same thing with Uganda, even though the discrimination of LGBT people there is more specific.