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

[nsync] Add new port #7614

Closed
wants to merge 15 commits into from
Closed

Conversation

ehsan-mohammadi
Copy link
Contributor

@ehsan-mohammadi ehsan-mohammadi commented Aug 9, 2019

Related to #7602. Needed for #7568.

Add new port nsync.

@MVoz
Copy link
Contributor

MVoz commented Aug 9, 2019

in the previous port it was correct to delete empty folders
and add set(VCPKG_POLICY_EMPTY_PACKAGE enabled)

@ehsan-mohammadi
Copy link
Contributor Author

ehsan-mohammadi commented Aug 9, 2019

in the previous port it was correct to delete empty folders
and add set(VCPKG_POLICY_EMPTY_PACKAGE enabled)

@voskrese So, should I add these lines before set(VCPKG_POLICY_EMPTY_PACKAGE enabled)?

file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib)

@MVoz
Copy link
Contributor

MVoz commented Aug 9, 2019

it seems like it doesn't make any difference in the port

before or after

@ehsan-mohammadi
Copy link
Contributor Author

Ok, I'll add it.

@MVoz
Copy link
Contributor

MVoz commented Aug 9, 2019

error x64-windows-static- dbg

CMake Error at cmake_install.cmake:36 (file):
  file INSTALL cannot find
  "C:/vsts/_work/1/s/buildtrees/nsync/x64-windows-static-dbg/nsync.lib".

add

file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib)

hmm....

@MVoz
Copy link
Contributor

MVoz commented Aug 9, 2019

it seems easier to me through )))

file (COPY $ {SOURCE_PATH} / include

@ehsan-mohammadi
Copy link
Contributor Author

@voskrese I added file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug). So, should I add file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib)?

@MVoz
Copy link
Contributor

MVoz commented Aug 9, 2019

I hurried, then saw (REMOVE_RECURSE $ {CURRENT_PACKAGES_DIR} / debug)

@ehsan-mohammadi
Copy link
Contributor Author

Finally, it works for all platforms. Thanks to @voskrese and @amiremohamadi.

@ehsan-mohammadi ehsan-mohammadi changed the title Add port nsync [nsync] Add new port Aug 9, 2019
@dan-shaw dan-shaw self-assigned this Aug 9, 2019
Copy link
Contributor

@dan-shaw dan-shaw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for working on the PR!

I have a few questions (in the review, as well): nsync doesn't appear to be installing include headers and libraries for Linux and Windows (non-static). Was this intended?

@ehsan-mohammadi
Copy link
Contributor Author

Thanks for working on the PR!

I have a few questions (in the review, as well): nsync doesn't appear to be installing include headers and libraries for Linux and Windows (non-static). Was this intended?

@dan-shaw Thanks for reviewing this PR. I think I need to help to make this PR better. This wasn't intended. So, do you have any suggestion?

@ehsan-mohammadi
Copy link
Contributor Author

We should vcpkg_install_cmake for all architectures. If we call vcpkg_build_cmake, vcpkg won't install libraries and include files.

@dan-shaw When I remove if else statement and use vcpkg_install_cmake for all architectures, checks failed for some of them.

@ehsan-mohammadi
Copy link
Contributor Author

ehsan-mohammadi commented Aug 20, 2019

@ras0219-msft @cbezault @dan-shaw Finally, I think this PR can be merged into vcpkg. I'll be waiting for you.
Thanks!

@cbezault cbezault assigned grdowns and unassigned dan-shaw Aug 28, 2019
@dan-shaw dan-shaw self-assigned this Sep 3, 2019
@NancyLi1013
Copy link
Contributor

/azp run

@NancyLi1013
Copy link
Contributor

I noticed that it failed on all Windows triplets except for x64-windows-static.
Are those expected?
Could you please take a look and try to fix the regressions?

@ehsan-mohammadi
Copy link
Contributor Author

ehsan-mohammadi commented Jan 21, 2020

I noticed that it failed on all Windows triplets except for x64-windows-static.
Are those expected?
Could you please take a look and try to fix the regressions?

@NancyLi1013 I tried to install nsync on each non-static windows triplets. I found out this error occurs because of EXPAT_LINKAGE. I've got these errors:

atm_log.c.obj : error LNK2019: unresolved external symbol nsync_pthread_key_create referenced in function do_once
atm_log.c.obj : error LNK2019: unresolved external symbol nsync_pthread_getspecific referenced in function nsync_atm_log_
atm_log.c.obj : error LNK2019: unresolved external symbol nsync_pthread_setspecific referenced in function nsync_atm_log_
atm_log.c.obj : error LNK2019: unresolved external symbol nsync_init_callback_ referenced in function nsync_atm_log_
testing.c.obj : error LNK2019: unresolved external symbol nsync_mu_lock referenced in function testing_base_exit
testing.c.obj : error LNK2019: unresolved external symbol nsync_mu_unlock referenced in function testing_base_exit
testing.c.obj : error LNK2019: unresolved external symbol nsync_time_now referenced in function testing_stop_timer
time_extra.c.obj : error LNK2001: unresolved external symbol nsync_time_now
testing.c.obj : error LNK2019: unresolved external symbol nsync_time_sleep referenced in function testing_is_uniprocessor
time_extra.c.obj : error LNK2001: unresolved external symbol nsync_time_sleep
testing.c.obj : error LNK2019: unresolved external symbol nsync_time_add referenced in function testing_start_timer
testing.c.obj : error LNK2019: unresolved external symbol nsync_time_sub referenced in function testing_start_timer
time_extra.c.obj : error LNK2001: unresolved external symbol nsync_time_sub
testing.c.obj : error LNK2019: unresolved external symbol nsync_time_cmp referenced in function testing_stop_timer
time_extra.c.obj : error LNK2001: unresolved external symbol nsync_time_cmp
testing.c.obj : error LNK2019: unresolved external symbol nsync_time_ms referenced in function testing_is_uniprocessor
testing.c.obj : error LNK2019: unresolved external symbol nsync_mu_wait referenced in function testing_base_exit
testing.c.obj : error LNK2019: unresolved external symbol nsync_dll_init_ referenced in function testing_run_
testing.c.obj : error LNK2019: unresolved external symbol nsync_dll_remove_ referenced in function finish_run
testing.c.obj : error LNK2019: unresolved external symbol nsync_dll_make_last_in_list_ referenced in function testing_run_
testing.c.obj : error LNK2019: unresolved external symbol nsync_panic_ referenced in function testing_panic
testing.c.obj : error LNK2001: unresolved external symbol nsync_time_zero
time_extra.c.obj : error LNK2001: unresolved external symbol nsync_time_zero
time_extra.c.obj : error LNK2019: unresolved external symbol nsync_time_s_ns referenced in function nsync_time_from_dbl
nsync_test.dll : fatal error LNK1120: 19 unresolved externals

@NancyLi1013
Copy link
Contributor

/azp run

@NancyLi1013
Copy link
Contributor

@ehsan-mohammadi thanks for your feedback.
I will re run it and let's wait for the new test result.

@NancyLi1013
Copy link
Contributor

/azp run

@NancyLi1013
Copy link
Contributor

It seems that -DNSYNC_ENABLE_TESTS=OFF doesn't take effect.
The test part still was added to built.
Could you please check it again?

@NancyLi1013
Copy link
Contributor

Hi @ehsan-mohammadi
Could you please look int the regressions?

@NancyLi1013
Copy link
Contributor

@ehsan-mohammadi
Is work still being done for this PR?

@NancyLi1013
Copy link
Contributor

Closing this PR. Since it seems that no progress is being made. Please reopen if work is still being done.

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

Successfully merging this pull request may close these issues.

6 participants