About 500 people demonstrated outside a Cape Town venue where Pharrell Williams was due to perform on Monday, in protest against the US pop star's promotional deal with South African retailer Woolworths and its trade ties with Israel.
The Grammy award-winning producer and performer's concert was scheduled to go ahead despite the protest, launched by the South African branch of the international Boycott, Divestment and Sanctions against Israel (BDS) movement.
"By working with Woolworths, Pharrell supports Israel, a country that supports the oppression of Palestine, a country that is the new apartheid state," said Ashraf Salie, standing amongst a crowd waving Palestinian flags at the entrance to the GrandWest Casino where Williams was performing.
Pro-Palestinian marches often attract large crowds in South Africa, especially in Cape Town which has a large Muslim community.
Some passing motorists hooted support to protesters, who held up placards saying "Pharrell is welcome if Gaza is free" and "Pharrell and Woolworths have blood on their hands" as local musicians and artists entertained the crowd from a stage.
Protesters were allowed to gather under a heavy police presence after the City of Cape Town lost a court case seeking to limit attendance to 150 protesters.
Williams is collaborating with Woolworths as its style director on several fashion projects as well as fundraising for education.
Woolworths has said it does not source produce from the Israeli-occupied Palestinian territories, less than 0.1 percent of its food comes from Israel and that it clearly labels every product's country of origin.