Closed Bug 1040145 Opened 10 years ago Closed 6 years ago

Failed to compile b2g-desktop with --enable-b2g-bt

Categories

(Firefox OS Graveyard :: Bluetooth, defect)

x86_64
Linux
defect
Not set
minor

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: vicamo, Assigned: vicamo)

References

Details

Attachments

(1 file)

Multiple failures:

1) error: overriding 'virtual nsrefcnt BluetoothPropertyContainer::Release()'.
2) error: static assertion failed: Reference-counted class BluetoothProfileResultHandler should not have a public dtor.
3) error: expected ';' before ')' token
4) error: expected ')' before 'warningMsg'
5) fatal error: mozilla/ipc/RawDBusConnection.h: No such file or directory
6) error: undefined reference to 'mozilla::dom::bluetooth::BluetoothA2dpManager::IsAvrcpConnected()'
Attached patch patchSplinter Review
Comment on attachment 8458089 [details] [diff] [review]
patch

Review of attachment 8458089 [details] [diff] [review]:
-----------------------------------------------------------------

Some reasons for these changes.

::: dom/bluetooth/BluetoothAdapter.cpp
@@ +284,5 @@
>  #ifdef DEBUG
>      nsCString warningMsg;
>      warningMsg.AssignLiteral("Not handling adapter property: ");
>      warningMsg.Append(NS_ConvertUTF16toUTF8(name));
> +    BT_WARNING("%s", warningMsg.get());

In platforms without MOZ_WIDGET_GONK defined, BT_WARNING is defined as:

  #define BT_WARNING(msg, ...) printf("%s: " msg, __FUNCTION__, ##__VA_ARGS__)

which extends to invalid expression as:

  printf("%s: " warningMsg.get(), __FUNCTION__)

::: dom/bluetooth/BluetoothCommon.h
@@ +53,5 @@
>      }                                                                \
>    } while(0)
>  
> +#define BT_LOGR(msg, ...) printf("%s: " msg, __FUNCTION__, ##__VA_ARGS__)
> +#define BT_WARNING(msg, ...) printf("%s: " msg, __FUNCTION__, ##__VA_ARGS__)

Remove redundant ')' at the end.

::: dom/bluetooth/BluetoothHidManager.h
@@ +28,5 @@
>    void HandleInputPropertyChanged(const BluetoothSignal& aSignal);
>  
>  private:
>    BluetoothHidManager();
> +  virtual ~BluetoothHidManager();

Reference-counted class should not have a public dtor. See also bug 1036877 and bug 1035394.

::: dom/bluetooth/BluetoothPropertyContainer.h
@@ -40,5 @@
>  
> -  // Compatibility with nsRefPtr to make sure we don't hold a weakptr to
> -  // ourselves
> -  virtual nsrefcnt AddRef() = 0;
> -  virtual nsrefcnt Release() = 0;

Return type overriding is not allowed. Previously defined as:

  NS_IMETHOD_(MozExternalRefCountType) Release(void);

in "xpcom/glue/nsISupportsImpl.h" included by "BluetoothAdapter.h".

::: dom/bluetooth/BluetoothService.cpp
@@ +17,1 @@
>  #include "BluetoothOppManager.h"

Don't have a sdcard on desktop, therefore no OPP support.

@@ +176,5 @@
>  
>    return NS_OK;
>  }
>  
> +class BluetoothService::StartupTask MOZ_FINAL : public nsISettingsServiceCallback

-Werror,-Wdelete-non-virtual-dtor. See also bug 1034582.

::: ipc/moz.build
@@ +13,5 @@
>  
>  if CONFIG['MOZ_B2G_RIL']:
>      DIRS += ['ril']
>  
> +if CONFIG['MOZ_B2G_BT'] and (CONFIG['MOZ_B2G_BT_BLUEZ'] or CONFIG['MOZ_ENABLE_DBUS']):

Build RawDBusConnection for b2g-desktop.
Attachment #8458089 - Flags: review?(echou)
Comment on attachment 8458089 [details] [diff] [review]
patch

Review of attachment 8458089 [details] [diff] [review]:
-----------------------------------------------------------------

r=me. Thanks for making desktop compiled with Bluetooth enabled.

::: dom/bluetooth/bluez/BluetoothHfpManager.h
@@ +146,5 @@
>  #endif
>    friend class BluetoothHfpManagerObserver;
>  
>    BluetoothHfpManager();
> +  ~BluetoothHfpManager();

not-even-a-nit: since you have moved it, please assist with making it a virtual dtor if you don't mind. :)
Attachment #8458089 - Flags: review?(echou) → review+
Firefox OS is not being worked on
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: