[oe] [meta-oe][Patch] fltk: fix build error when enable package config examples

Kang Kai Kai.Kang at windriver.com
Thu Dec 12 00:34:27 UTC 2019


On 2019/12/12 上午8:24, Kang Kai wrote:
> On 2019/12/12 上午2:52, Khem Raj wrote:
>> somehow patches from you never get into patchwork. I wonder why ?
>> adding Michael as well
>
> I have no idea that I just git format-patch and sent patch by git 
> send-email.

Maybe I used 'Patch' rather than 'PATCH' when call git format-patch

git format-patch -1 --subject-prefix=meta-oe][Patch

I'll try 'PATCH' in subject next time.

Kai

>
> Regards,
> Kai
>
>
>>
>> On 12/11/19 1:10 AM, kai.kang at windriver.com wrote:
>>> From: Kai Kang <kai.kang at windriver.com>
>>>
>>> Backport patch to fix fltk build error when enable package config
>>> 'examples'. Drop the useless parts such as .gitignore and Makefile
>>> from the patch.
>>>
>>> fltk-native is also required by package config 'examples'.
>>>
>>> Signed-off-by: Kai Kang <kai.kang at windriver.com>
>>> ---
>>>   meta-oe/recipes-support/fltk/fltk.bb          |   7 +-
>>>   ...-when-enable-package-config-examples.patch | 182 
>>> ++++++++++++++++++
>>>   2 files changed, 187 insertions(+), 2 deletions(-)
>>>   create mode 100644 
>>> meta-oe/recipes-support/fltk/fltk/0004-Fix-build-error-when-enable-package-config-examples.patch
>>>
>>> diff --git a/meta-oe/recipes-support/fltk/fltk.bb 
>>> b/meta-oe/recipes-support/fltk/fltk.bb
>>> index 7ad4ac70a..0d033f361 100644
>>> --- a/meta-oe/recipes-support/fltk/fltk.bb
>>> +++ b/meta-oe/recipes-support/fltk/fltk.bb
>>> @@ -5,7 +5,10 @@ DEPENDS = "alsa-lib zlib jpeg libpng libxext libxft"
>>>   inherit features_check binconfig lib_package gtk-icon-cache mime
>>>   REQUIRED_DISTRO_FEATURES = "x11"
>>>   -SRC_URI += 
>>> "file://0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch"
>>> +SRC_URI += " \
>>> + 
>>> file://0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch \
>>> + 
>>> file://0004-Fix-build-error-when-enable-package-config-examples.patch \
>>> +"
>>>     EXTRA_OECMAKE = " \
>>>       -DOPTION_BUILD_SHARED_LIBS=ON \
>>> @@ -17,7 +20,7 @@ EXTRA_OECMAKE = " \
>>>     PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 
>>> 'opengl', d)}"
>>>   -PACKAGECONFIG[examples] = 
>>> "-DOPTION_BUILD_EXAMPLES=ON,-DOPTION_BUILD_EXAMPLES=OFF,"
>>> +PACKAGECONFIG[examples] = 
>>> "-DOPTION_BUILD_EXAMPLES=ON,-DOPTION_BUILD_EXAMPLES=OFF,fltk-native"
>>>   PACKAGECONFIG[cairo] = "-DOPTION_CAIRO=ON,-DOPTION_CAIRO=OFF,cairo"
>>>   PACKAGECONFIG[opengl] = 
>>> "-DOPTION_USE_GL=ON,-DOPTION_USE_GL=OFF,virtual/libgl"
>>>   PACKAGECONFIG[xinerama] = 
>>> "-DOPTION_USE_XINERAMA=ON,-DOPTION_USE_XINERAMA=OFF,libxinerama"
>>> diff --git 
>>> a/meta-oe/recipes-support/fltk/fltk/0004-Fix-build-error-when-enable-package-config-examples.patch 
>>> b/meta-oe/recipes-support/fltk/fltk/0004-Fix-build-error-when-enable-package-config-examples.patch 
>>>
>>> new file mode 100644
>>> index 000000000..974c02fe6
>>> --- /dev/null
>>> +++ 
>>> b/meta-oe/recipes-support/fltk/fltk/0004-Fix-build-error-when-enable-package-config-examples.patch
>>> @@ -0,0 +1,182 @@
>>> +Fix build error when enable package config examples.
>>> +
>>> +Upstream-Status: Backport 
>>> [https://github.com/fltk/fltk/commit/16774dd]
>>> +
>>> +Signed-off-by: Kai Kang <kai.kang at windriver.com>
>>> +
>>> +
>>> +From 16774ddc4e000c89e560fde0ced8be9814ef041e Mon Sep 17 00:00:00 2001
>>> +From: Albrecht Schlosser <albrechts.fltk at online.de>
>>> +Date: Wed, 8 Feb 2017 02:06:52 +0000
>>> +Subject: [PATCH] Rename test/help demo program to test/help_dialog.
>>> +
>>> +This change avoids a name conflict with CMake's auto-generated 
>>> target 'help'
>>> +for "Unix Makefiles", "Ninja", and supposedly other generators as 
>>> well.
>>> +
>>> +
>>> +git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12171 
>>> ea41ed52-d2ee-0310-a9c1-e6b18d33e121
>>> +---
>>> + CMake/macros.cmake                        |  5 -----
>>> + documentation/src/examples.dox            |  8 +++----
>>> + test/CMakeLists.txt                       | 27 
>>> +++++++++++++++++++----
>>> + test/demo.menu                            |  2 +-
>>> + test/{help.cxx => help_dialog.cxx}        |  6 ++---
>>> + test/{help-test.html => help_dialog.html} |  0
>>> + 6 files changed, 31 insertions(+), 17 deletions(-)
>>> + rename test/{help.cxx => help_dialog.cxx} (88%)
>>> + rename test/{help-test.html => help_dialog.html} (100%)
>>> +
>>> +diff --git a/CMake/macros.cmake b/CMake/macros.cmake
>>> +index 5b0d0fa..7134fcb 100644
>>> +--- a/CMake/macros.cmake
>>> ++++ b/CMake/macros.cmake
>>> +@@ -90,11 +90,6 @@ function(CREATE_EXAMPLE NAME SOURCES LIBRARIES)
>>> +
>>> +     set (tname ${NAME})        # target name
>>> +
>>> +-    # rename reserved target name "help" (CMake 2.8.12 and later)
>>> +-    if (${tname} MATCHES "^help$")
>>> +-        set (tname "test_help")
>>> +-    endif (${tname} MATCHES "^help$")
>>> +-
>>> +     foreach(src ${SOURCES})
>>> +         if ("${src}" MATCHES "\\.fl$")
>>> +             list(APPEND flsrcs ${src})
>>> +diff --git a/documentation/src/examples.dox 
>>> b/documentation/src/examples.dox
>>> +index 5105b7b..7961b02 100644
>>> +--- a/documentation/src/examples.dox
>>> ++++ b/documentation/src/examples.dox
>>> +@@ -60,7 +60,7 @@ you build FLTK, unlike those in the 'test' 
>>> directory shown below.
>>> + </tr>
>>> + <tr>
>>> + <td> \ref examples_hello           </td>
>>> +-<td> \ref examples_help            </td>
>>> ++<td> \ref examples_help_dialog     </td>
>>> + <td> \ref examples_iconize         </td>
>>> + <td> \ref examples_image           </td>
>>> + <td> \ref examples_inactive        </td>
>>> +@@ -326,13 +326,13 @@ easily under FLTK.
>>> + tiny demo shows how little is needed to get a functioning application
>>> + running with FLTK. Quite impressive, I'd say.
>>> +
>>> +-\subsection examples_help help
>>> ++\subsection examples_help_dialog help_dialog
>>> +
>>> + \par
>>> +-\c help displays the built-in FLTK help browser. The
>>> ++\c help_dialog displays the built-in FLTK help browser. The
>>> + Fl_Help_Dialog understands a subset of html and renders
>>> + various image formats. This widget makes it easy to provide help
>>> +-pages to the user without depending on the operating system's
>>> ++pages to the user without depending on the operating system's
>>> + html browser.
>>> +
>>> + \subsection examples_iconize iconize
>>> +diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
>>> +index 22ec9ab..4caffa5 100644
>>> +--- a/test/CMakeLists.txt
>>> ++++ b/test/CMakeLists.txt
>>> +@@ -1,3 +1,22 @@
>>> ++#
>>> ++# "$Id$"
>>> ++#
>>> ++# CMakeLists.txt used to build test and demo apps by the CMake 
>>> build system
>>> ++#
>>> ++# Copyright 2004-2017 by Bill Spitzak and others.
>>> ++#
>>> ++# This library is free software. Distribution and use rights are 
>>> outlined in
>>> ++# the file "COPYING" which should have been included with this 
>>> file.  If this
>>> ++# file is missing or damaged, see the license at:
>>> ++#
>>> ++#     http://www.fltk.org/COPYING.php
>>> ++#
>>> ++# Please report all bugs and problems on the following page:
>>> ++#
>>> ++#     http://www.fltk.org/str.php
>>> ++#
>>> ++####################################################################### 
>>>
>>> ++
>>> + set(EXECUTABLE_OUTPUT_PATH ${FLTK_BINARY_DIR}/bin/examples)
>>> +
>>> + 
>>> #######################################################################
>>> +@@ -64,7 +83,7 @@ CREATE_EXAMPLE(file_chooser file_chooser.cxx 
>>> "fltk;fltk_images")
>>> + CREATE_EXAMPLE(fonts fonts.cxx fltk)
>>> + CREATE_EXAMPLE(forms forms.cxx "fltk;fltk_forms")
>>> + CREATE_EXAMPLE(hello hello.cxx fltk)
>>> +-CREATE_EXAMPLE(help help.cxx "fltk;fltk_images")
>>> ++CREATE_EXAMPLE(help_dialog help_dialog.cxx "fltk;fltk_images")
>>> + CREATE_EXAMPLE(icon icon.cxx fltk)
>>> + CREATE_EXAMPLE(iconize iconize.cxx fltk)
>>> + CREATE_EXAMPLE(image image.cxx fltk)
>>> +@@ -134,7 +153,7 @@ endif(FLTK_HAVE_CAIRO)
>>> + # Note: this is incomplete as of 11 Feb 2015
>>> + # Todo: currently all files are copied, but some of them need 
>>> configuration:
>>> + # - demo.menu: fluid can't be started (wrong path)
>>> +-# - demo.menu: help (help-test.html) can't find its images (not 
>>> copied)
>>> ++# - demo.menu: help_dialog (help_dialog.html) can't find its 
>>> images (not copied)
>>> + # - maybe more ...
>>> +
>>> + # prepare for a "better" test file installation path
>>> +@@ -149,11 +168,11 @@ configure_file(demo.menu 
>>> ${TESTFILE_PATH}/demo.menu COPYONLY)
>>> +
>>> + # use target directory only to avoid redundancy
>>> + configure_file(rgb.txt ${TESTFILE_PATH} COPYONLY)
>>> +-configure_file(help-test.html ${TESTFILE_PATH} COPYONLY)
>>> ++configure_file(help_dialog.html ${TESTFILE_PATH} COPYONLY)
>>> + configure_file(browser.cxx ${TESTFILE_PATH} COPYONLY)
>>> + configure_file(editor.cxx ${TESTFILE_PATH} COPYONLY)
>>> + if(APPLE AND NOT OPTION_APPLE_X11)
>>> +     configure_file(browser.cxx 
>>> "${TESTFILE_PATH}/browser.app/Contents/Resources/browser.cxx" COPYONLY)
>>> +     configure_file(rgb.txt 
>>> ${TESTFILE_PATH}/colbrowser.app/Contents/Resources/rgb.txt COPYONLY)
>>> +-    configure_file(help-test.html 
>>> ${TESTFILE_PATH}/help.app/Contents/Resources/help-test.html COPYONLY)
>>> ++    configure_file(help_dialog.html 
>>> ${TESTFILE_PATH}/help_dialog.app/Contents/Resources/help_dialog.html 
>>> COPYONLY)
>>> + endif(APPLE AND NOT OPTION_APPLE_X11)
>>> +diff --git a/test/demo.menu b/test/demo.menu
>>> +index 337a71c..97e522a 100644
>>> +--- a/test/demo.menu
>>> ++++ b/test/demo.menu
>>> +@@ -77,7 +77,7 @@
>>> +     @o:Font Tests...:@of
>>> +         @of:Fonts:fonts
>>> +         @of:UTF-8:utf8
>>> +-    @o:HelpDialog:help
>>> ++    @o:HelpDialog:help_dialog
>>> +     @o:Input Choice:input_choice
>>> +     @o:Preferences:preferences
>>> +     @o:Threading:threads
>>> +diff --git a/test/help.cxx b/test/help_dialog.cxx
>>> +similarity index 88%
>>> +rename from test/help.cxx
>>> +rename to test/help_dialog.cxx
>>> +index f5c51d6..7866641 100644
>>> +--- a/test/help.cxx
>>> ++++ b/test/help_dialog.cxx
>>> +@@ -3,7 +3,7 @@
>>> + //
>>> + // Fl_Help_Dialog test program.
>>> + //
>>> +-// Copyright 1999-2010 by Easy Software Products.
>>> ++// Copyright 2011-2017 by Bill Spitzak and others.
>>> + //
>>> + // This library is free software. Distribution and use rights are 
>>> outlined in
>>> + // the file "COPYING" which should have been included with this 
>>> file.  If this
>>> +@@ -46,13 +46,13 @@ main(int  argc,            // I - Number of 
>>> command-line arguments
>>> +     strcpy(buf, argv[0]);
>>> +     char *slash = strrchr(buf, '/');
>>> +     if (slash)
>>> +-      strcpy(slash, "/../Resources/help-test.html");
>>> ++      strcpy(slash, "/../Resources/help_dialog.html");
>>> +     help->load(buf);
>>> +
>>> + #else
>>> +
>>> +   if (argc <= 1)
>>> +-    help->load("help-test.html");
>>> ++    help->load("help_dialog.html");
>>> +   else
>>> +     help->load(argv[1]);
>>> +
>>> +diff --git a/test/help-test.html b/test/help_dialog.html
>>> +similarity index 100%
>>> +rename from test/help-test.html
>>> +rename to test/help_dialog.html
>>>
>>
>

-- 
Kai Kang



More information about the Openembedded-devel mailing list