Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-11790

WITHOUT_SERVER installs server-only files

Details

    Description

      When source is configured with

      -DWITHOUT_SERVER=1

      the binary `bin/mysqld_safe_helper` is installed. As this is a utility for the server only it should be excluded from client-only builds.

      Attachments

        Issue Links

          Activity

            A much longer list from MDEV-14986:

            * bin/mysql_convert_table_format
            * bin/mysql_install_db
            * bin/mysql_plugin
            * bin/mysql_secure_installation
            * bin/mysql_upgrade
            * bin/mysqld_safe_helper
            * bin/mysqlhotcopy
            * bin/mysqltest
            * man/man1/galera_new_cluster.1.gz
            * man/man1/galera_recovery.1.gz
            * man/man1/innochecksum.1.gz
            * man/man1/mariadb-service-convert.1.gz
            * man/man1/my_safe_process.1.gz
            * man/man1/mysql.server.1.gz
            * man/man1/mysql_client_test.1.gz
            * man/man1/mysql_client_test_embedded.1.gz
            * man/man1/mysql_convert_table_format.1.gz
            * man/man1/mysql_fix_extensions.1.gz
            * man/man1/mysql_install_db.1.gz
            * man/man1/mysql_secure_installation.1.gz
            * man/man1/mysqld_multi.1.gz
            * man/man1/mysqld_safe.1.gz
            * man/man1/mysqld_safe_helper.1.gz
            * man/man1/mysqlhotcopy.1.gz
            * man/man1/mysqltest.1.gz
            * man/man1/mysqltest_embedded.1.gz
            * man/man1/resolve_stack_dump.1.gz
            * share/mysql/wsrep.cnf
            * share/mysql/wsrep_notify
            * local/share/mysql/binary-configure
            * local/share/mysql/fill_help_tables.sql
            * local/share/mysql/magic
            * local/share/mysql/maria_add_gis_sp.sql
            * local/share/mysql/maria_add_gis_sp_bootstrap.sql
            * local/share/mysql/mysql-log-rotate
            * local/share/mysql/mysql.server
            * local/share/mysql/mysql_performance_tables.sql
            * local/share/mysql/mysql_system_tables.sql
            * local/share/mysql/mysql_system_tables_data.sql
            * local/share/mysql/mysql_test_data_timezone.sql
            * local/share/mysql/mysql_to_mariadb.sql
            * local/share/mysql/mysqld_multi.server
            * local/share/mysql/wsrep.cnf
            * local/share/mysql/wsrep_notify
            

            elenst Elena Stepanova added a comment - A much longer list from MDEV-14986 : * bin/mysql_convert_table_format * bin/mysql_install_db * bin/mysql_plugin * bin/mysql_secure_installation * bin/mysql_upgrade * bin/mysqld_safe_helper * bin/mysqlhotcopy * bin/mysqltest * man/man1/galera_new_cluster.1.gz * man/man1/galera_recovery.1.gz * man/man1/innochecksum.1.gz * man/man1/mariadb-service-convert.1.gz * man/man1/my_safe_process.1.gz * man/man1/mysql.server.1.gz * man/man1/mysql_client_test.1.gz * man/man1/mysql_client_test_embedded.1.gz * man/man1/mysql_convert_table_format.1.gz * man/man1/mysql_fix_extensions.1.gz * man/man1/mysql_install_db.1.gz * man/man1/mysql_secure_installation.1.gz * man/man1/mysqld_multi.1.gz * man/man1/mysqld_safe.1.gz * man/man1/mysqld_safe_helper.1.gz * man/man1/mysqlhotcopy.1.gz * man/man1/mysqltest.1.gz * man/man1/mysqltest_embedded.1.gz * man/man1/resolve_stack_dump.1.gz * share/mysql/wsrep.cnf * share/mysql/wsrep_notify * local/share/mysql/binary-configure * local/share/mysql/fill_help_tables.sql * local/share/mysql/magic * local/share/mysql/maria_add_gis_sp.sql * local/share/mysql/maria_add_gis_sp_bootstrap.sql * local/share/mysql/mysql-log-rotate * local/share/mysql/mysql.server * local/share/mysql/mysql_performance_tables.sql * local/share/mysql/mysql_system_tables.sql * local/share/mysql/mysql_system_tables_data.sql * local/share/mysql/mysql_test_data_timezone.sql * local/share/mysql/mysql_to_mariadb.sql * local/share/mysql/mysqld_multi.server * local/share/mysql/wsrep.cnf * local/share/mysql/wsrep_notify
            spil Bernard Spil added a comment - - edited

            Picked this up again, there are multiple issues when wanting to build "client-only"

            Utilities/scripts that can connect remote MariaDB servers should be in the Client profile, not Server.

            mysql_convert_table_format

            WITHOUT_SERVER builds scripts/mysql_convert_table_format from scripts/mysql_convert_table_format.sh yet only installs man/man1/mysql_convert_table_format.1

            mysqlhotcopy

            Allows remote connections so is a Client component (i.e. does NOT require the a locally installed server to work)

            mysql_setpermission

            Allows remote connections so is a Client component (i.e. does NOT require the a locally installed server to work)

            replace

            the replace utility is required by the msql2mysql utility. The latter is listed as a Client component, so the former, being a dependency, must also be labeled as Client component

            Created a pull-request in MariaDB github based on this

            spil Bernard Spil added a comment - - edited Picked this up again, there are multiple issues when wanting to build "client-only" Utilities/scripts that can connect remote MariaDB servers should be in the Client profile, not Server. mysql_convert_table_format WITHOUT_SERVER builds scripts/mysql_convert_table_format from scripts/mysql_convert_table_format.sh yet only installs man/man1/mysql_convert_table_format.1 mysqlhotcopy Allows remote connections so is a Client component (i.e. does NOT require the a locally installed server to work) mysql_setpermission Allows remote connections so is a Client component (i.e. does NOT require the a locally installed server to work) replace the replace utility is required by the msql2mysql utility. The latter is listed as a Client component, so the former, being a dependency, must also be labeled as Client component Created a pull-request in MariaDB github based on this
            danblack Daniel Black added a comment -

            spil, much of this work is merged and your descriptions here where very helpful. MDEV-23429 is still outstanding though a fix isn't too far away.

            Rather than `make install` and pruning out the results, the following cmake commands can limit the install components to those you actually want to distribute. I'm hoping this tips assists in your FreeBSD packaging.

            cmake install

            cmake --install . --component ManPagesClient
             cmake --install . --component ClientPlugins
            cmake --install .  --component Client
            

            my_print_defaults has a discussion - https://github.com/MariaDB/server/pull/1566 and https://github.com/MariaDB/server/pull/1581 and MDEV-22552 so hopefully those will answer the my_print_defaults packaging soon.

            danblack Daniel Black added a comment - spil , much of this work is merged and your descriptions here where very helpful. MDEV-23429 is still outstanding though a fix isn't too far away. Rather than `make install` and pruning out the results, the following cmake commands can limit the install components to those you actually want to distribute. I'm hoping this tips assists in your FreeBSD packaging. cmake install cmake --install . --component ManPagesClient cmake --install . --component ClientPlugins cmake --install . --component Client my_print_defaults has a discussion - https://github.com/MariaDB/server/pull/1566 and https://github.com/MariaDB/server/pull/1581 and MDEV-22552 so hopefully those will answer the my_print_defaults packaging soon.

            People

              serg Sergei Golubchik
              spil Bernard Spil
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.