Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

win32/vorbis.def lists symbols from vorbisenc #20

Open
ras0219-msft opened this issue Apr 15, 2017 · 4 comments
Open

win32/vorbis.def lists symbols from vorbisenc #20

ras0219-msft opened this issue Apr 15, 2017 · 4 comments

Comments

@ras0219-msft
Copy link

From microsoft/vcpkg#941:

Removes symbol duplication in vorbis.dll and vorbisenc.dll - upstream has a bug in which vorbis.def contains symbols of vorbisencmodule. Original port solved this by embedding related symbols in vorbis.dllbut that caused several functions to be defined in (and exported from) both modules. Now these symbols are simply removed from vorbis.def.

To fix this, the following symbols need to be removed from vorbis.def:

vorbis_encode_init
vorbis_encode_setup_managed
vorbis_encode_setup_vbr
vorbis_encode_init_vbr
vorbis_encode_setup_init
vorbis_encode_ctl
@evpobr
Copy link
Contributor

evpobr commented Apr 9, 2020

@rillian , this is weird. It was made to vorbis.def 17 years ago, i'm pretty sure we can remove it from VS projects and vorbis.def.

@rillian
Copy link
Contributor

rillian commented Apr 10, 2020

IIRC it was added, as they say, because people were putting both APIs in a single vorbis.dll. Or at least, when we noticed we were afraid to break someone by changing it, not having any win32 devs among the maintainers at the time.

If you think it's fine to undo now, That would be good enough for me.

@evpobr
Copy link
Contributor

evpobr commented Apr 10, 2020

I think all VS projects must be deleted. VS2005 and VS2010 are obsolete, i cannot even open it with VS2019. vorbisenc project builds application (encoder_example) with vorbisenc sources. No vorbisenc DLL project at all.

I will add modified cmake/vorbis.def to make proper CMake builds and leave projects untouched now.

evpobr added a commit to evpobr/vorbis that referenced this issue Apr 10, 2020
@mipac
Copy link

mipac commented Jul 28, 2020

with mingw we need to have LIBRARY field set with
libvorbis, and not vorbis or exe will lookfor vorbis.dll and not libvorbis.dll
cmake could add version number to that field

flac and opus don't use .def, and it works fine
is .def necessary?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants