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

ICU-10464 Make installation of icu-config optional #13

Merged
merged 1 commit into from
Jul 24, 2018

Conversation

hughmcmaster
Copy link
Contributor

@hughmcmaster hughmcmaster commented Jul 19, 2018

Make installation of icu-config optional.

Users who do not want to install icu-config must pass either --disable-icu-config or --enable-icu-config=no to configure.

From version 64.1, icu-config will not be installed by default.

Signed-off-by: Hugh McMaster hugh.mcmaster@outlook.com

@CLAassistant
Copy link

CLAassistant commented Jul 19, 2018

CLA assistant check
All committers have signed the CLA.

@@ -169,7 +171,11 @@ all-local: $(srcdir)/configure $(LOCAL_BUILT_FILES) $(INSTALLED_BUILT_FILES)
ifndef VERBOSE
@echo "Note: rebuild with \"$(MAKE) VERBOSE=1 $(MAKECMDGOALS)\" to show all compiler parameters."
endif
ifeq ($(INSTALL_ICU_CONFIG),true)
install-local: install-icu install-manx
Copy link
Member

Choose a reason for hiding this comment

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

Minor, I see what this is trying to do, but could it instead conditionalize the line 69:

ifeq  ($(INSTALL_ICU_CONFIG),true)
MANX_FILES += config/icu-config.$(SECTION)
endif

then manx-files becomes a no-op but the mechanism is still there if other man files show up (it could happen…)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Fine by me.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Actually, this doesn't work. make install fails because /usr/bin/install expects a file as an argument. We can solve this by checking whether MANX_FILES is set.

ifneq ($(MANX_FILES),)
        $(INSTALL_DATA) $? $(DESTDIR)$(mandir)/man$(SECTION)
endif

Is this acceptable?

Copy link
Member

Choose a reason for hiding this comment

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

@hughmcmaster sounds good. thanks.

@@ -187,7 +193,9 @@ install-icu: $(INSTALLED_BUILT_FILES)
@$(MKINSTALLDIRS) $(DESTDIR)$(libdir)/pkgconfig
$(INSTALL_DATA) $(ALL_PKGCONFIG_FILES) $(DESTDIR)$(libdir)/pkgconfig/
$(INSTALL_DATA) $(top_srcdir)/../LICENSE $(DESTDIR)$(pkgdatadir)/LICENSE
ifeq ($(INSTALL_ICU_CONFIG),true)
Copy link
Member

Choose a reason for hiding this comment

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

👍 this is a good way to conditionalize, because we need icu-config to stay buildable.

@@ -100,6 +100,16 @@ UCONFIG_CPPFLAGS=""
# such as -std
UCONFIG_CFLAGS=""

# Check whether to install icu-config
Copy link
Member

Choose a reason for hiding this comment

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

sadly, our configure script actually gets checked into the repo. (Maybe we should change that…) Can you run autoreconf || (aclocal && autoconf) ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

No problem.

@hughmcmaster hughmcmaster force-pushed the master branch 2 times, most recently from c7e221d to 9a80f40 Compare July 21, 2018 07:57
@hughmcmaster hughmcmaster changed the title ICU-20030 icu4c: Make installation of icu-config optional ICU-20030 Make installation of icu-config optional Jul 21, 2018
@hughmcmaster
Copy link
Contributor Author

@srl295 I've pushed the requested changes to this PR.

Copy link
Member

@srl295 srl295 left a comment

Choose a reason for hiding this comment

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

otherwise LGTM - but think we should default this to enabled for compatibility (at least for one release)

yes) enable_icu_config=true ;;
no) enable_icu_config=false ;;
*) AC_MSG_ERROR([bad value '${enableval}' for --enable-icu-config]) ;;
esac], [enable_icu_config=false])
Copy link
Member

Choose a reason for hiding this comment

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

sorry, one thing- can we make this default to true for now and announce that it will be false in the future?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Not a problem. If I change the default case to true, icu-config will be installed by default and users won’t need to specify any configure flags for this.

@srl295
Copy link
Member

srl295 commented Jul 23, 2018

@hughmcmaster please note that we are still defining some parts of our process. In particular, the JIRA ticket needs to be committee accepted before this merged. Thanks for your patience- you are one of the first few contributors via PR!

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
@hughmcmaster
Copy link
Contributor Author

@srl295 I've made that change. Users must now pass either --enable-icu-config=no or --disable-icu-config to configure to prevent icu-config from being installed. If no icu-config-related flags are passed to configure, the script is installed by default.

Copy link
Member

@srl295 srl295 left a comment

Choose a reason for hiding this comment

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

LGTM. We will want to mention this in the release notes, and turn this off later.

@srl295 srl295 changed the title ICU-20030 Make installation of icu-config optional ICU-10464 Make installation of icu-config optional Jul 24, 2018
@srl295
Copy link
Member

srl295 commented Jul 24, 2018

going to land this under the accepted ICU-10464 instead of ICU-20030

@srl295 srl295 self-assigned this Jul 24, 2018
@srl295 srl295 merged commit 76168da into unicode-org:master Jul 24, 2018
sffc referenced this pull request in sffc/icu Sep 26, 2018
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Originally ICU-20030
sffc referenced this pull request in sffc/icu Sep 27, 2018
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Originally ICU-20030
sffc referenced this pull request in sffc/icu Sep 27, 2018
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Originally ICU-20030
sffc referenced this pull request in sffc/icu Sep 27, 2018
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Originally ICU-20030
hugovdm pushed a commit to hugovdm/icu that referenced this pull request Jan 20, 2020
ICU-20920 Add new MeasureUnit functions to units-staging
hugovdm pushed a commit to hugovdm/icu that referenced this pull request Mar 25, 2020
GerHobbelt pushed a commit to GerHobbelt/icu that referenced this pull request Mar 11, 2024
Missed updating the conan version number. This resulted in 69 reporting as 68. This is resolved via this patch.
FrankYFTang added a commit to FrankYFTang/icu that referenced this pull request Sep 25, 2024
# This is the 1st commit message:

ICU-22767 Fix GCC warning and turn warning to errors

# This is the commit message #2:

ICU-22716 use pre-existing task

# This is the commit message #3:

ICU-22716 Fix

# This is the commit message #4:

ICU-22716 Fix unitialization

# This is the commit message unicode-org#5:

Update icu4c/source/common/ushape.cpp

Co-authored-by: Fredrik Roubert <fredrik@roubert.name>
# This is the commit message unicode-org#6:

ICU-22716 change macro

# This is the commit message unicode-org#7:

ICU-22716 Add document about the macro

# This is the commit message unicode-org#8:

ICU-22716 Addres review feedback

# This is the commit message unicode-org#9:

ICU-22767 Fix GCC warning and turn warning to errors

# This is the commit message unicode-org#10:

ICU-22716 use pre-existing task

# This is the commit message unicode-org#11:

ICU-22716 Fix

# This is the commit message unicode-org#12:

ICU-22716 Fix unitialization

# This is the commit message unicode-org#13:

Update icu4c/source/common/ushape.cpp

Co-authored-by: Fredrik Roubert <fredrik@roubert.name>
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.

3 participants