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

"#error <my_config.h>" and third-party libraries

Details

    Description

      The safety check in my_config.h ensures that this file is always included before system headers.

      But when my_config.h is installed, this breaks compilation of various third-party projects. In particular, mysql-python doesn't compile anymore.

      While technically forcing my_config.h first is correct and mysql-python doesn't break by a sheer luck and, we still cannot force all third-party projects to include files correctly.

      This check has to be relaxed.

      Attachments

        Issue Links

          Activity

            serg Sergei Golubchik created issue -
            serg Sergei Golubchik made changes -
            Field Original Value New Value
            serg Sergei Golubchik made changes -
            Description The safety check in {{my_config.h}} ensures that this file is always included before system headers.

            But when {{my_config.h}} is installed, this breaks compilation of various third-party projects. In particular, mysql-python doesn't compile anymore.

            While technically forcing {{my_config.h}} is correct and mysql-python doesn't break by a sheer luck and, we still cannot force all third-party projects to include my_config.h first.

            This check has to be relaxed.
            The safety check in {{my_config.h}} ensures that this file is always included before system headers.

            But when {{my_config.h}} is installed, this breaks compilation of various third-party projects. In particular, mysql-python doesn't compile anymore.

            While technically forcing {{my_config.h}} first is correct and mysql-python doesn't break by a sheer luck and, we still cannot force all third-party projects to include my_config.h first.

            This check has to be relaxed.
            serg Sergei Golubchik made changes -
            Description The safety check in {{my_config.h}} ensures that this file is always included before system headers.

            But when {{my_config.h}} is installed, this breaks compilation of various third-party projects. In particular, mysql-python doesn't compile anymore.

            While technically forcing {{my_config.h}} first is correct and mysql-python doesn't break by a sheer luck and, we still cannot force all third-party projects to include my_config.h first.

            This check has to be relaxed.
            The safety check in {{my_config.h}} ensures that this file is always included before system headers.

            But when {{my_config.h}} is installed, this breaks compilation of various third-party projects. In particular, mysql-python doesn't compile anymore.

            While technically forcing {{my_config.h}} first is correct and mysql-python doesn't break by a sheer luck and, we still cannot force all third-party projects to include files correctly.

            This check has to be relaxed.
            grknight Brian Evans added a comment -

            Does not seem to affect 10.0.14

            grknight Brian Evans added a comment - Does not seem to affect 10.0.14
            serg Sergei Golubchik made changes -
            Affects Version/s 10.0.14 [ 17101 ]
            serg Sergei Golubchik made changes -
            Fix Version/s 10.0.15 [ 17300 ]
            Fix Version/s 10.0 [ 16000 ]

            Yes, it was merged into 10.0 after 10.014 release. So it's important to fix it before 10.10.15

            serg Sergei Golubchik added a comment - Yes, it was merged into 10.0 after 10.014 release. So it's important to fix it before 10.10.15
            guest Hello World! added a comment -

            cPanel EasyApache fails to build/update Apache because of this bug, the error is:

            /usr/include/mysql/my_config.h:654:2: error: #error <my_config.h> MUST be included first!

            guest Hello World! added a comment - cPanel EasyApache fails to build/update Apache because of this bug, the error is: /usr/include/mysql/my_config.h:654:2: error: #error <my_config.h> MUST be included first!
            azurit azurit added a comment -

            please revert this also in 5.5 branch

            azurit azurit added a comment - please revert this also in 5.5 branch

            Hey, this seems to be a problem when installing MySQL-Python on Debian 7. Is there a plan to fix it? Cheers.

            londonappdev Mark Winterbottom added a comment - Hey, this seems to be a problem when installing MySQL-Python on Debian 7. Is there a plan to fix it? Cheers.
            azurit azurit added a comment -

            The workaround is to downgrade to 5.5.39, install MySQL-python and upgrade back to 5.5.40 (or newer).

            azurit azurit added a comment - The workaround is to downgrade to 5.5.39, install MySQL-python and upgrade back to 5.5.40 (or newer).
            londonappdev Mark Winterbottom added a comment - - edited

            Thanks. We got it to install by commenting out these lines in /usr/include/mysql/my_config.h:654

            #ifdef __GLIBC__
            #error <my_config.h> MUST be included first!
            #endif

            londonappdev Mark Winterbottom added a comment - - edited Thanks. We got it to install by commenting out these lines in /usr/include/mysql/my_config.h:654 #ifdef __GLIBC__ #error <my_config.h> MUST be included first! #endif
            serg Sergei Golubchik made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            serg Sergei Golubchik made changes -
            Fix Version/s 5.5.41 [ 17600 ]
            Fix Version/s 5.5 [ 15800 ]
            Resolution Fixed [ 1 ]
            Status In Progress [ 3 ] Closed [ 6 ]
            rbu Robert Buchholz added a comment - Downstream bug for RHEL 7: https://bugzilla.redhat.com/show_bug.cgi?id=1166603 Upstream bug for MySQL-python: https://github.com/farcepest/MySQLdb1/issues/80
            serg Sergei Golubchik made changes -
            Component/s Compiling [ 11001 ]
            Component/s OTHER [ 10125 ]
            ratzpo Rasmus Johansson (Inactive) made changes -
            Workflow MariaDB v2 [ 55700 ] MariaDB v3 [ 65225 ]
            serg Sergei Golubchik made changes -
            Workflow MariaDB v3 [ 65225 ] MariaDB v4 [ 148302 ]

            People

              serg Sergei Golubchik
              serg Sergei Golubchik
              Votes:
              2 Vote for this issue
              Watchers:
              9 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.